La scorsa settimana, l'organizzazione The Linux Foundation durante il suo evento Open Source Leadership Summit ha annunciato la creazione di un nuovo fondo per progetti Open Source. Un ulteriore istituto indipendente dedicato allo sviluppo di tecnologie [e richieste nel settore] che ha l'obiettivo di unire gli strumenti per gli ingegneri DevOps, o per essere più precisi — per organizzare e realizzare processi di consegna continua, pipeline CI/CD. L'organizzazione è stata chiamata proprio così: La (CDF).
Per comprendere meglio a cosa servono fondi simili all'interno dell'organizzazione madre Linux Foundation, basta guardare a un esempio più noto — CNCF (Cloud Native Computing Foundation). Questo fondo è nato nel 2015 e da allora ha accolto numerosi progetti Open Source che definiscono realmente il moderno panorama dell'infrastruttura IT cloud: Kubernetes, containerd, Prometheus, e così via.
L'organizzazione stessa funge da piattaforma indipendente, sulla quale questi progetti vengono gestiti e sviluppati nell'interesse dei diversi attori del mercato. A tal fine, in CNCF sono stati creati comitati tecnici e marketing, sono stati adottati determinati standard e regole (se sei interessato ai dettagli, ti consigliamo di leggere, ad esempio, )… E, come vediamo con esempi "reali", il sistema funziona: i progetti sotto la guida di CNCF diventano più maturi, guadagnano popolarità nel settore, sia tra gli utenti finali che tra gli sviluppatori coinvolti nel loro sviluppo.
Seguendo questo successo (dopotutto, molti progetti "cloud" di CNCF sono già entrati nella vita quotidiana degli ingegneri DevOps), alle tendenze generali nel settore IT e alle loro manifestazioni nel mondo Open Source, alla Linux Foundation hanno deciso di "occupare" (o sarebbe più corretto dire, di "promuovere") una nuova nicchia:
«La Continuous Delivery Foundation (CDF) diventerà una casa indipendente dai fornitori per i più importanti progetti Open Source dedicati alla consegna continua e alle specifiche che accelerano i processi di pipeline. CDF promuoverà l'interazione tra i principali sviluppatori, gli utenti finali e i fornitori dell'industria, promuovendo CI/CD e metodologie DevOps, definendo e documentando le migliori pratiche, creando guide e materiali didattici che consentiranno ai team di sviluppatori software di qualsiasi parte del mondo di implementare le migliori pratiche di CI/CD».
Idea
I valori e i principi fondamentali che guidano CDF sono attualmente in modo tale che l'organizzazione:
- … crede nel potere della consegna continua e nel fatto che essa offre nuove opportunità per sviluppatori e team, consentendo di rilasciare software di alta qualità più frequentemente;
- … crede nelle soluzioni open source, il cui utilizzo copre l'intero ciclo di consegna del software;
- … coltiva e sostiene un ecosistema di progetti Open Source che sono indipendenti dai fornitori, attraverso la collaborazione e la compatibilità reciproca;
- … promuove e stimola la collaborazione tra i professionisti che si occupano di consegna continua nella pratica, condividendo le proprie pratiche e migliorandole.
Partecipanti e progetti
Ma le belle parole sono un affare dei marketer, che non sempre coincidono con ciò che accade nella realtà. In questo senso, la prima impressione dell'organizzazione può essere formata da chi delle aziende l'ha costituita e quali progetti ne sono stati i "primi figli".
I membri principali di CDF sono , tra cui la Capital One, che fa parte della top 10 delle banche americane, e nomi più noti agli ingegneri IT come CircleCI, CloudBees, Google, Huawei, IBM, JFrog e Netflix. Alcuni di loro hanno già parlato di questo evento significativo nei loro blog, ma di questo — un po' più sotto.
Tra i partecipanti di CDF ci sono anche gli utenti finali dei suoi progetti — una categoria simile esiste anche per il CNCF, dove puoi incontrare eBay, Pinterest, Twitter, Wikimedia e molti altri. Nel caso del nuovo fondo, finora ci sono solo 15 partecipanti, ma già tra loro ci sono nomi interessanti e noti: Autodesk, GitLab, Puppet, Rancher, Red Hat, SAP e che si è unita proprio Sysdig.
Ora, direi, passiamo al punto principale: i progetti di cui si occupa CDF. Al momento della creazione dell'organizzazione, ce n'erano quattro:
Jenkins e Jenkins X
— un sistema per CI/CD che non ha bisogno di particolari presentazioni, scritto in Java, attivo da molti anni (pensateci: la prima versione — sotto forma di Hudson — è stata rilasciata 14 anni fa!), per cui ha accumulato un'infinità di plugin.
La principale struttura commerciale dietro Jenkins oggi si può considerare CloudBees, il cui CTO è l'autore originale del progetto (Kohsuke Kawaguchi) ed è stata una delle fondatrici della fondazione.
— anche questo progetto deve molto a CloudBees (come si può facilmente intuire, i suoi principali sviluppatori sono impiegati nella stessa azienda), tuttavia, a differenza di Jenkins, la soluzione è del tutto nuova — ha solo un anno.
All'interno di Jenkins X viene offerta una soluzione pronta per l'organizzazione di CI/CD per moderne applicazioni cloud, distribuite all'interno di cluster Kubernetes. A tal fine, JX propone l'automazione dei pipeline, l'implementazione integrata di GitOps, ambienti per la visualizzazione delle versioni e altre funzionalità. L'architettura di Jenkins X si presenta come segue:
Il stack del prodotto è Jenkins, Knative Build, Prow, Skaffold e Helm. Maggiori dettagli sul progetto sono su Habr.
Spinnaker
— una piattaforma per la consegna continua creata da Netflix, il cui codice sorgente è stato reso disponibile nel 2015. Attualmente Google partecipa attivamente allo sviluppo: grazie ai loro sforzi congiunti, il prodotto si evolve come soluzione per grandi organizzazioni, le cui squadre DevOps gestiscono numerosi gruppi di sviluppatori.
Le principali concetti in Spinnaker per descrivere i servizi sono applicazioni (applications), cluster (clusters) e gruppi di server (server groups), e la loro accessibilità per il mondo esterno è curata da bilanciatori di carico (load balancers) e firewall:
Maggiore informazioni sulla struttura di base di Spinnaker sono disponibili nella .
La piattaforma consente di lavorare con molti ambienti cloud, tra cui Kubernetes, OpenStack e diversi fornitori di servizi cloud (AWS EC2, GCE, GKE, GAE, Azure, Oracle Cloud Infrastructure), e si integra anche con vari prodotti e servizi:
- con sistemi CI (Jenkins, Travis CI) nei pipeline;
- con Datadog, Prometheus, Stackdriver e SignalFx — per il monitoraggio degli eventi;
- con Slack, HipChat e Twilio — per le notifiche;
- con Packer, Chef e Puppet — per macchine virtuali.
Ecco cosa in Netflix riguardo all'inclusione di Spinnaker nel nuovo fondo:
«Il successo di Spinnaker è avvenuto in gran parte grazie a una straordinaria comunità di aziende e persone che lo utilizzano e contribuiscono al suo sviluppo. Trasferire Spinnaker nel CDF rafforzerà questa comunità. Questa mossa favorirà l'emergere di cambiamenti e investimenti da parte di altre aziende che hanno osservato quanto accadeva da lontano. Porte aperte per nuove aziende porteranno in Spinnaker nuove innovazioni, da cui tutti beneficeranno».
E a in occasione della creazione della Continuous Delivery Foundation viene sottolineato che «Spinnaker è un sistema multi-componente, che si allinea concettualmente con Tekton». Così arriviamo all'ultimo progetto entrato a far parte del nuovo fondo.
Tekton
è un framework presentato come componenti comuni per la creazione e la standardizzazione di sistemi CI/CD, che prevedono il funzionamento di pipeline in vari ambienti, comprese macchine virtuali tradizionali, serverless e Kubernetes.
Questi componenti stessi sono risorse «realizzate in stile Kubernetes» (implementate in K8s come CRD), che fungono da mattoni per la definizione delle pipeline. Una breve illustrazione del loro utilizzo in un cluster K8s è presentata .
Il stack di prodotti supportato in Tekton apparirà già familiare: Jenkins, Jenkins X, Skaffold e Knative. In Google Cloud ritengono che Tekton risolva «il problema della collaborazione tra la comunità Open Source e i principali fornitori nella modernizzazione dell'infrastruttura per CI/CD».
…
Analogamente a CNCF, in CDF è stato creato un comitato tecnico (Technical Oversight Committee, TOC) il cui compito è quello di esaminare questioni (e prendere decisioni) riguardanti l'inclusione di nuovi progetti nel fondo. Non ci sono molte altre informazioni sull'organizzazione stessa su al momento, ma è una situazione normale e solo una questione di tempo.
Concludiamo con una citazione da :
«Ora, diventando una delle aziende del neonato Continuous Delivery Foundation, porteremo il nostro impegno [per la creazione di una tecnologia che è universale nel supportare altre soluzioni per CI/CD] a un nuovo livello. Questa nuova organizzazione, seguendo i principi della collaborazione e dell'apertura, gestirà i futuri standard di continuous delivery che velocizzeranno il ciclo di rilascio del software. Con l'adozione di Jenkins, Jenkins X, Spinnaker e altre tecnologie sotto l'ala di questo fondo, vediamo un futuro luminoso per il CI/CD!»
P.S.
Leggi anche nel nostro blog:
- «»;
- «»;
- «»;
- «».
Fonte: habr.com
