CoreOS potrebbe essere il sistema operativo del futuro dedicato agli sviluppatori. Per chi non lo conoscesse, CoreOS nasce in un garage di Palo Alto per volontà di Alex Polvi (CEO e cofondatore) a cui si affiancano altri tre collaboratori: Kroah-Hartman (che lavora per la Linux Fondation), Michael Marineau e Brandon Philips, CTO del progetto.
E come tutti i grandi successi della Silicon Valley (anche Dave Packard, Steve Jobs e Sergey Brin hanno iniziato in un garage), ha ricevuto una cifra compresa fra uno e cinque milioni di dollari dalla Andreessen Horowitz and Sequoia Capital come finanziamento per procedere con lo sviluppo del sistema operativo.
Ma cosa ha di così interessante CoreOS da attirare così tanto l’attenzione degli analisti? Le risposte a questa domanda sono molteplici. In primis, la mente che sta dietro all’OS: Alex Polvi è lo stesso sviluppatore di Cloudkick che è poi stato acquisito anche come azienda da Rackspace nel 2010 ed è sfociato nella piattaforma Rackspace Cloud Monitoring. In secundis, l’idea.
Polvi è partito dal ChromeOS, il sistema operativo sviluppato da Google intorno al browser Chrome, per ottenere molto di più. Per quanto riduttivo, CoreOS potrebbe essere definita una distribuzione Linux pensata per gli ambienti server, ma a differenza dei prodotti Linux-based già riservati al settore server ed enterprise, CoreOS prevede solo il kernel di Linux e systemd, ossia il gestore dei processi per avviare i servizi essenziali all’inizializzazione del sistema. Nient’altro.
In pratica questo sistema operativo è pensato per i clienti che devono avviare e gestire cluster di centinaia di server e si classifica quindi come un server Linux per le distribuzioni di massa. E, in maniera molto semplicistica, potremmo dire che CoreOS impacchetta Internet in una singola postazione, permettendo di ospitare infrastrutture simili a quelle di Amazon e Google sul proprio computer. Con le dovute proporzioni, questo paragone non è fuori luogo e ci fa capire la potenza di questo sistema operativo altamente scalabile che porterebbe non poco risparmio alle startup, soprattutto a quelle del cloud computing.
CoreOS è un ChromeOS per gli sviluppatori, infatti offre l’infrastruttura necessaria a ospitare i componenti di qualsiasi applicazione Web e non è dotato di null’altro, se non dei bit sufficienti per eseguire i contenitori. Come gestore dei contenitori, CoreOS utilizza Docker e, come già spiegato in precedenza, la scelta dei contenitori, a differenza della virtualizzazione, permette di gestire meglio le performance della macchina e di distribuire la medesima configurazione su differenti hardware.
CoreOS, inoltre, si rifà a ChromeOS per quanto riguarda la questione degli aggiornamenti: il sistema operativo supporta gli aggiornamenti automatici in background e non crea problemi di inconsistenza dati, in quanto funziona su due partizioni disco, attivate alternativamente uno alla volta. La partizione inattiva può essere aggiornata offline, per cui bisogna effettuare uno swap dei dischi e riavviare per procedere con gli aggiornamenti. Il riavvio richiede da mezzo secondo a un secondo netto.
Infine, CoreOS utilizza una partizione di sola lettura per il filesystem e include il componente etcd come servizio distribuito di configurazione. Solo questo componente, una volta pubblicato su GitHub, è valso oltre 900 raccomandazioni in meno di tre settimane. Al di là di questo successo nella community, i riconoscimenti per CoreOS derivano dalle oltre 1300 aziende che hanno espresso interesse nella piattaforma (di cui cinquanta società appartenenti alla lista delle Fortune 500) e molte hanno firmato un accordo per provare il codice.