Archivi categoria: Container

OpenContainerInitiative: finalmente uno standard per la trasmissione di immagini dei container

Facebooktwittergoogle_plusredditlinkedin

Due anni fa parlavamo della nascita della Open Container Initiative sotto il controllo della Linux Foundation. Con l’esplosione dell’uso dei container, e delle tecnologie in grado di gestirli, definire uno standard ufficiale ed aperto per la creazione, l’esecuzione e la trasmissione delle immagini dei container è diventato fondamentale.

E, finalmente, si inizia ad arrivare a qualcosa di completo: già in passato il formato delle immagini ed i runtime sono stati standardizzati dalla OCI, che l’anno scorso ha raggiunto una maturità con il rilascio della versione 1.0; in questi giorni il lancio del progetto Distribution Specification ha definito lo standard anche per il push e pull delle immagini (le operazioni utilizzate per caricare e scaricare le immagini da un registro), andando così a coprire (quasi) tutto il mondo container: come viene creato, come viene eseguito e come viene trasmesso.

Per questa operazione hanno deciso di basarsi sulla definizione del Docker Registry V2; essendo questo un registry dei più utilizzati al mondo (forse il più utilizzato), è sembrato logico prendere le specifiche di come lavorasse e, sulla base di quelle, costruire uno standard che, tendenzialmente, permetterà l’adozione dalla maggior parte dei sistemi di gestione di container senza grosse modifiche.

Ovviamente Docker non può che essere contenta del fatto che la sua implementazione è diventata lo standard, come affermato da Michael Crosby, ingegnere e maintainer in Docker:

Docker’s contribution of the Docker Registry V2 specification aligns with our history of making key open-source projects available to the community. As with the runtime and image specification, Docker’s registry protocol has become a de facto standard with over 40 billion images pulled using this protocol.

Il contributo di Docker alle specifiche del Docker Registry V2 si allinea con la nostra abitudine storica di rendere i progetti open-source chiave disponibili alla community. Insieme al runtime ed alle specifiche delle immagini, il registry protocol di Docker è diventato lo standard de facto con oltre 40 miliardi di immagini scaricate usando questo protocollo.

La notizia in ogni caso è stata accolta molto positivamente da tutti, sia da Amazon con il suo Amazon Elastic Container Registry (che comunque è compatibile con il Docker Registry V2), sia da Microsoft che eroga l’Azure Container Registry (implementato usando proprio il Docker Registry) che Google, fornitore di Google Cloud (di cui non si sa molto riguardo il funzionamento dei registry forniti).

Tutti contenti dunque, abbiamo uno standard completo!
Ora non resta che aspettare che tutti lo abbraccino.

Solomon Hykes lascia Docker: il saluto del papà dei container.

Facebooktwittergoogle_plusredditlinkedin

Una settimana fa circa il fulmine a ciel sereno: Solomon Hykes abbandona Docker.

Per chi non lo conoscesse, seppure per l’esattezza non abbia inventato i container, sicuramente è stata la persona che più di tutti ha contribuito a renderli popolari ed uno standard de-facto su cui son nate e sono evolute una serie di altre tecnologie come Kubernetes, per citarne una.

Non si può iniziare a parlare del buon Hykes senza condividere il video di 5 minuti in cui, al PyCon 2013, presentò al mondo Docker, un tool che utilizzavano in dotCloud (società francese fondata da Hykes stesso), per gestire comodamente i container Linux:

Se come dotCloud fornivano servizi per la gestione di applicazioni scalabili usando questa “nuova” tecnologia chiamata container, la presentazione di Docker cambiò il target: finalmente un semplice tool poteva gestire tutto dal network al filesystem, dai namespace dei processi ai cgroup per la gestione delle risorse. Questo fece esplodere il fenomeno al punto che, 5 anni fa, dotCloud cambiò nome come Docker.

Il buon Hykes, che ai tempi era il CEO di dotCloud, insieme alle altre 5 persone al lavoro, decise di assumere un nuovo CEO per Docker in grado di sostenere l’azienda e con esperienza nel ruolo, e si ritagliò il ruolo di CTO (Chief Tecnical Officer). E tutto ha continuato a crescere.

Ora la situazione si è nuovamente evoluta: con la crescita della base clienti di Docker (soprattutto della sua Docker Enterprise Edition), ed in generale della società, si è reso fondamentale trovare un nuovo CTO con l’esperienza necessaria sia al lavoro in team con Steve Singh (attuale CEO), che nella gestione tecnologica della società stessa. E così il ruolo di Hykes cambierà ancora: in un primo momento aiuterà a trovare il CTO ideale al compito e successivamente fornirà la consulenza allo stesso per capire come collaborare al meglio con il team tecnico già presente in azienda.

Sicuramente un ruolo che gli permetterà di mantenere un piede in Docker, lasciandogli però il tempo di continuare a lavorare su altro e chissà, magari, cambiare il mondo dell’IT un’altra volta.

Vi lasciamo al post ufficiale di Hykes sul blog, in cui spiega bene -seppur con un pochino di amarezza- i vari passaggi che l’hanno portato dove è adesso.

Secondo ZDNet i container sono sanissimi, quanto a Docker (l’azienda)…

Facebooktwittergoogle_plusredditlinkedin

Nell’aprile dello scorso anno abbiamo parlato di come Docker avesse deciso di scindere il suo prodotto OpenSource dalla sua controparte commerciale, creando il Moby Project. La mossa era chiaramente volta a separare l’aspetto tecnologico dal lato business ed in termini di chiarezza fu sicuramente una scelta condivisibile.

Ebbene, un anno dopo come sta l’azienda Docker? Secondo ZDNet non molto bene, poiché manca di un business plan.

Non usa infatti mezze parole Steven J. Vaughan-Nichols nel suo articolo, per illustrare come a differenza delle aziende di servizi concorrenti (Google, Microsoft e Amazon) e delle aziende che producono software per gestire la piattaforma (come Red Hat/CoreOS, Canonical e Mirantis), Docker non abbia un piano preciso.

Docker, secondo l’autore, produce unicamente un framework OpenSource per il formato più popolare di container utilizzati.

E pare che la separazione decisa lo scorso anno giochi a favore della confusione: il meccanismo di subscription previsto pare non avere appeal sul mercato, proprio perché il mercato stesso non sa che cosa c’è da comprare. E con l’ascesa di Kubernetes le cose non hanno fatto altro che peggiorare.

Tutti sanno che l’OpenSource è pregno di valori ed aspetti morali positivi, ma senza il cash le aziende falliscono. Sarà questo anche il caso del balenottero?

3-2-1 Code in container – Un evento sui container presso COBOX (21/2/2017)

Facebooktwittergoogle_plusredditlinkedin

Cari sviluppatori, è arrivato il momento di fare il punto sulle cloud native application e in modo particolare su una delle tecnologie che abilitano alle costruzione di applicazioni di ultima generazione. Ormai sono numerose le letterature dove si affronta il tema su come devono essere realizzate applicazioni scalabili, resilienti e nello stesso tempo indipendenti dall’infrastruttura sottostante; ma i container segnano un cambiamento epocale sul modo di pensare le applicazioni di ultima generazione: “pulire il codice” e incapsularlo in strutture software in grado di soddisfare meglio i requisiti del business.

I container costituiscono un tema vasto e in continuo mutamento. Per questo motivo, occorre fare un po’ di sintesi… e uno dei modi per diffondere e condividere quanto attualmente la tecnologia mette a disposizione è mediante eventi come meetup, laboratori e… #brewbox.

A Cremona uno spazio per la “contaminazione” delle idee?

Premetto che sono la persona meno indicata a tessere le lodi su quanto viene realizzato nella propria città natale. Ma questa volta devo dire, con immenso piacere, che finalmente a Cremona esiste un gruppo, sostenuto dal CRIT (aka Cobox  http://www.co-box.it/it/chi-siamo  ) in grado di diffondere nozioni e idee dagli stessi utenti per gli utenti. Ovviamente io che sono un vivo sostenitore delle community non potevo che appoggiarne in pieno la mission… Per ulteriori: https://www.facebook.com/groups/brewbox/

Il principio dei container nelle Cloud Native Application

Uno dei punti chiave nello sviluppo dei container è la separazione dei dati della business logic. Questo si traduce in una stesura del codice più pulita e soprattutto indipendente da:

  • tipo di base dati o filesystem utilizzato
  • ip pubblici e privati
  • infrastruttura hardware
  • tipo di tecnologia di virtualizzazione utilizzata
  • tipo di sistema operativo (Linux) utilizzato

La business logic è il punto focale dei container, in quanto l’alto livello di astrazione e la capacità di adattarsi a qualsiasi contesto, fa si che ogni elemento procedurale sviluppato con questo paradigma, sia applicabile in qualsiasi contesto applicativo.

Muoversi tra cloud provider diversi e da utlizzi molteplici mediante PC, tablet, smartphone e werable, sono i punti cardine attorno al quale ruotano le cloud native application. Nella storia la separazione in “tier” costituisce un cambiamento sostanziale nel modo in cui si sviluppano le applicazione. Oggi l’astrazione infrastrutturale determina la libertà in cui sviluppare e mettere in produzione le applicazioni.

L’evento del 21/2/2017

L’intervento è orientato al mondo degli sviluppatori, ma non è mancata la presenza di qualche amministratore di sistema. Questo spesso accade quando le aziende iniziano a cambiare il proprio passo: da un lato lo sviluppatore impara ad aver cura dell’operatività della propria applicazione, dall’altro il sistemista si preoccupa che la sua infrastruttura sia all’altezza di supportare le applicazioni di ultima generazione.

Il contenuto dell’evento è stato per lo più teorico e allo stesso tempo ricco di richiami pratici che chiunque e a costo zero può “toccare con mano” e sperimentare sul proprio PC/Mac. L’argomento sui container e le cloud native application è veramente vasto ed è impensabile esaurire il tutto in una sola ora. Per questo motivo lascio aperta la porta a suggerimenti, approfondimenti e confronti che potreppero suggerire gli argomenti del prossimo talk sul tema dei container (sempre che #brewbox me ne darà l’opportunità 🙂 )

I miei grazie vanno al pubblico e agli organizzatori dell’evento Brewbox ( http://www.co-box.it/it/eventi  https://www.facebook.com/groups/brewbox/ ), e soprattuto a Federico Gandellini ( @gandellinux  ) per il supporto nella buona riuscita dell’evento. Grazie al CRIT e LineaCom per il sostegno. Un grazie anche alla mia famiglia che mi sostiene sempre prima, durante e anche dopo eventi di questo tipo.

Un grazie particolare va anche a chi mi ha ispirato per durante la preparazione di questo intervento:

Qui le slide dell’evento: 321CodeInContainer – brewbox