[bglug] TinyCore Linux e quant'altro

Technical GanXta giecsar@gmail.com
Gio 13 Mar 2014 05:02:06 CET


Ciao a tutti,

non scrivo molto spesso ma spero che l'argomento vi piacerà.
Allo scopo di eseguire dei test sto creando una farm di macchine
virtuali (penso di crearne 100).

Come sistema operativo utilizzerò una distribuzione molto leggera
chiamata TinyCore [0] (ringrazio a Matias per il suggerimento!).
E' una distribuzione decisamente particolare. Ho creato una prima
macchina con successo e posso già osservare che ha un footprint
davvero piccolo, infatti utilizza solo 28MB di RAM circa.

Voglio simulare un ambiente "enterprise", in cui varie (e tante!)
macchine virtuali competono per accedere alle risorse fisiche (stiamo
parlando di due host clusterizzati con uno storage condiviso, ma non
entro nei dettagli dell'infrastruttura).
Ogni singola macchina virtuale avrà un processore single core, single
thread e 64MB RAM.

Per rendere l'ambiente "realistico" pensavo di creare dei finti
carichi di lavori che sono casuali e vengono generati in automatico
all'avvio di ogni macchina virtuale.
I carichi di lavoro devono consumare risorse CPU e RAM, ma non DISK o NETWORK.
Vorrei quindi implementare uno script in sh che venga eseguito
all'avvio e funzioni in questo modo:

- genera un numero casuale N tra 0 e 7
- caso 0: genera un carico di lavoro che utilizza il 10% della CPU e
una percentuale casuale per quanto riguarda la RAM (<= 90%)
- caso 1: genera un carico di lavoro che utilizza il 25% della CPU e
una percentuale casuale per quanto riguarda la RAM (<= 90%)
- caso 2: genera un carico di lavoro che utilizza il 60% della CPU e
una percentuale casuale per quanto riguarda la RAM (<= 90%)
- caso 3: genera un carico di lavoro che utilizza il 90% della CPU e
una percentuale casuale per quanto riguarda la RAM (<= 90%)
- caso 4: genera un carico di lavoro che utilizza il 10% della RAM e
una percentuale casuale per quanto riguarda la CPU (<= 90%)
- caso 5: genera un carico di lavoro che utilizza il 25% della RAM e
una percentuale casuale per quanto riguarda la CPU (<= 90%)
- caso 6: genera un carico di lavoro che utilizza il 60% della RAM e
una percentuale casuale per quanto riguarda la CPU (<= 90%)
- caso 7: genera un carico di lavoro che utilizza il 90% della RAM e
una percentuale casuale per quanto riguarda la CPU (<= 90%)

Le percentuali sono diciamo indicative e non importa se variano (anzi,
sarebbe ancora meglio).
Come potrei generare questi carichi di lavoro? Stavo pensando di
creare dei loop infiniti (while : do  <comando> done) che eseguono
continuamente qualche comando standard di linux, potrebbe funzionare?

Chi mi può aiutare? :)

[0] http://tinycorelinux.net/

-- 
Mazilu "Technical GanXta" Teodor
informatician, system administrator, geek
XMPP: giecsar@gmail.com
BitMessage: BM-2cU9vsEQWWJ9RUpjhV2xHkrZzUn7gyRCpZ


Maggiori informazioni sulla lista bglug