Openstack – Cos’è e a cosa serve.

OS è un insieme di moduli che compongono un sistema software per la gestione della virtualizzazione di sistemi operativi. Non è un virtualizzatore come ad esempio vsphere di Vmware ma invece usa alcuni dei virtualizzatori più comuni per eseguire macchine virtuali. Il virtualizzatore più comune è qemu se in demo/test o piccole installazioni oppure kvm; può usare anche altri virtualizzatori. I moduli principali sono sei, ma si contano oltre sessanta moduli ausiliari per altre operazioni. Comunque un sistema OS completo ma non adatto alla produzione, ha i soli sei moduli di base che sono: NOVA per la parte della creazione e operazioni sulle istanze (in OS le VM si chiamano istanze); HORIZON è la GUI per la gestione di tutto OS, anche se è gestibile anche da CLI; CINDER è il modulo che gestisce lo storage a blocco ovvero semplicemente i dischi connessi alle vm; SWIFT è il gestore dei dischi a livello oggetto, come AWS S3 per intenderci; KEYSTONE si occupa degli accessi al sistema con autorizzazioni per l’accesso alle varie parti del sistema; NEUTRON gestisce la parte di rete virtuale attraverso gli openswitch, è il modulo che virtualizza la rete dentro al sistema OS. Dentro al sistema OS le VM sono organizzate in progetti (forse sarebbe meglio chiamarli tenant ma la nomenclatura di OS è progetti) dove in pratica dentro ad un progetto si hanno delle reti virtuali che possono essere isolate da altri progetti oppure essere condivise con altri progetti. Tieni presente che un progetto solitamente contiene N macchine virtuali, potrebbe essere equiparato ad un sistema virtuale completo. Ti faccio un esempio: se tu hai 100 macchine virtuali nel tuo datacenter ospitato da tre host Vmware, potresti migrarle tutte e 100 dentro ad un’unico progetto. Questo dovrebbe darti un’idea di che dimensioni ha tipicamente un’installazione OS. Un progetto OS è gestito dall’amministratore OS che assegna al tuo progetto le risorse che tu hai bisogno, per esempio: 40 vCpu, 10 network, 2TB di ram da distribuire sulle tue macchine virtuali. Abbiamo capito a questo punto che un progetto è un data center a tutti gli effetti. In certe installazioni OS esso viene installato in modalità multi dominio; questo serve ad avere un amministratore di dominio che gestisce progetti al suo interno distribuendo ai progetti le risorse. Quello che sto cercando di comunicarti è che OS è un sistema che deve essere installato in centinaia (si hai capito bene) di server fisici solitamente non è adatto ad aziende per eseguire centinaia di macchine virtuali, ha un costo hardware proibitivo ed a bisogno di personale altamente specializzato che, come avrai inteso, non è proprio facile trovare al di là del prezzo che una società può permettersi: non ci sono al mondo migliaia di installazione ‘serie’ (passami il termine) di OS, quindi i sistemisti su queste piattaforme sono quasi introvabili, ripeto, al di là dell’onorario. Spero di averti dato una minima informazione su questa piattaforma, se vuoi approfondire qui trovi tutto:

https://wiki.openstack.org/wiki/Main_Page