ProHoster > Blog > Adminisztráció > A Linux Foundation új alapja a DevOps projekteknek a Jenkins-szel és a Spinnakerrel indul
A Linux Foundation új alapja a DevOps projekteknek a Jenkins-szel és a Spinnakerrel indul
Múlt héten a The Linux Foundation nyílt forráskódú vezetői csúcstalálkozóján bejelentett egy új alap létrehozásáról nyílt forráskódú projektek számára. Egy másik független, nyílt [és iparági igényű] technológiák fejlesztésével foglalkozó intézet a DevOps mérnökök eszközeinek kombinálására, pontosabban a folyamatos szállítási folyamatok és CI/CD folyamatok megszervezésére és megvalósítására szolgál. A szervezet neve: The Folyamatos Szállítási Alapítvány (CDF).
Hogy jobban megértsük, miért hoznak létre ilyen alapokat a Linux Foundation anyaszervezet alatt, nézzünk meg egy ismertebb példát – a CNCF-et (Cloud Native Computing Foundation). Ez az alap 2015-ben jelent meg, és azóta számos nyílt forráskódú projektet fogadott be, amelyek valóban meghatározzák a felhőalapú IT-infrastruktúra modern környezetét: Kubernetes, konténer, Prometheus stb.
Maga a szervezet önálló platformként működik, amely alapján ezeket a projekteket a különböző piaci szereplők érdekében irányítják és fejlesztik. E célból a CNCF-ben technikai és marketing bizottságokat hoztak létre, bizonyos szabványokat és szabályokat fogadtak el (ha érdekelnek a részletek, ajánljuk elolvasni pl. CNCF TOC alapelvek)... És ahogy az „élő” példákban látjuk, a séma működik: a CNCF részleg alá tartozó projektek érettebbé válnak, és népszerűvé válnak az iparágban, mind a végfelhasználók, mind a fejlesztésükben részt vevő fejlesztők körében.
Ezt a sikert követően (végül is sok CNCF felhőprojekt már a DevOps mérnökök mindennapi életének részévé vált), általános informatikai trendek és megnyilvánulásaik a nyílt forráskódú világban, a Linux Foundation úgy döntött, hogy „elfoglalja” (vagy helyesebb lenne azt mondani, hogy „előléptetés”) új rés:
„A Continuous Delivery Foundation (CDF) szállítósemleges otthona lesz a kritikus nyílt forráskódú projekteknek, amelyek a folyamatos szállítást és a folyamatokat felgyorsító specifikációkat célozzák. A CDF megkönnyíti az iparág vezető fejlesztői, végfelhasználói és szállítói közötti interakciót, népszerűsíti a CI/CD és DevOps módszertanokat, meghatározza és dokumentálja a legjobb gyakorlatokat, útmutatókat és képzési anyagokat készít, amelyek lehetővé teszik a szoftverfejlesztő csapatok számára a világ bármely pontjáról a CI bevezetését. /CD legjobb gyakorlatok."
Ötlet
Az alapvető értékek és alapelvek, amelyek jelenleg a CDF-et irányítják megfogalmazva úgy, hogy a szervezet:
... hisz a folyamatos kézbesítés erejében, és abban, hogy ez képessé teszi a fejlesztőket és a csapatokat arra, hogy gyakrabban adjanak ki jó minőségű szoftvereket;
…hisz a nyílt forráskódú megoldásokban, amelyek együtt használhatók a teljes szoftverszállítási ciklusban;
... olyan nyílt forráskódú projektek ökoszisztémáját ápolja és támogatja, amelyek az együttműködés és a kölcsönös kompatibilitás révén függetlenek a szállítóktól;
...elősegíti és ösztönzi a folyamatos szállítást végző szakembereket, hogy működjenek együtt, osszák meg és fejlesszék gyakorlataikat.
Résztvevők és projektek
De a szép szavak a marketingesek nagy része, amelyek nem mindig esnek egybe azzal, ami a valóságban történik. És ebben az értelemben az első benyomást a szervezetről az teheti meg, hogy melyik cég hozta létre és mely projektek lettek az „elsőszülöttek”.
A CDF fő tagjai a 8 vállalat, nevezetesen: a Capital One, a 10 legjobb amerikai bank egyike, és az IT-mérnökök számára sokkal ismertebb iparági képviselők a CircleCI, a CloudBees, a Google, a Huawei, az IBM, a JFrog és a Netflix személyében. Néhányan már beszéltek egy ilyen jelentős eseményről a blogjukban, de erről alább.
A CDF résztvevői között szerepelnek projektjeinek végfelhasználói is – a CNCF-nek is van egy hasonló kategóriája, ahol megtalálható az eBay, a Pinterest, a Twitter, a Wikimedia és még sok más. Az új alap esetében egyelőre csak 15 ilyen résztvevő van, de már érdekes és ismert nevek is felbukkannak köztük: Autodesk, GitLab, Puppet, Rancher, Red Hat, SAP és szó szerint csatlakoztak tegnapelőtt Sysdig.
Most talán a legfontosabbról - azokról a projektekről, amelyekre a CDF-et gonddal bízták. A szervezet létrehozásakor négy ilyen volt:
Jenkins és Jenkins X
Jenkins egy CI/CD rendszer, amely alig igényel különösebb bemutatást, Java nyelven íródott, és sok éve létezik (gondoljunk csak bele: az első megjelenésre - Hudson formájában - 14 éve került sor!), amelyhez számtalan bővítményt szerzett be.
A Jenkins mögött jelenleg álló fő kereskedelmi struktúra tekinthető CloudBees, melynek műszaki igazgatója a projekt eredeti szerzője (Kohsuke Kawaguchi), és amely az alapítvány egyik alapítója lett.
Jenkins X - ez a projekt is sokat köszönhet a CloudBees-nek (ahogy sejthető, fő fejlesztői ugyanannak a cégnek a munkatársai), azonban magával a Jenkins-szel ellentétben a megoldás teljesen új - még csak egy éves.
A Jenkins X kulcsrakész megoldást kínál a CI/CD szervezésére a Kubernetes-fürtökön belül telepített modern felhőalkalmazásokhoz. Ennek eléréséhez a JX folyamatautomatizálást, beépített GitOps implementációt, kiadás-előnézeti környezeteket és egyéb szolgáltatásokat kínál. A Jenkins X architektúráját a következőképpen mutatjuk be:
Termékkészlet – Jenkins, Knative Build, Prow, Skaffold és Helm. Bővebben a projektről mi már írt az agyon.
Versenyvitorla
Versenyvitorla a Netflix által létrehozott folyamatos szállítási platform, amely 2015-ben nyílt forráskódú. A Google jelenleg is aktívan részt vesz a fejlesztésében: közös erőfeszítéseik révén a terméket megoldásként fejlesztik olyan nagy szervezetek számára, amelyek DevOps csapatai sok fejlesztőcsapatot szolgálnak ki.
A Spinnaker kulcsfogalmai a szolgáltatások leírásához az alkalmazások, fürtök és szervercsoportok, ezek elérhetőségét a külvilág számára terheléselosztók és tűzfalak kezelik:
Az alap Spinnaker készülékről további információkat találhat a projektdokumentáció.
A platform lehetővé teszi, hogy különféle felhőkörnyezetekkel dolgozzon, beleértve a Kubernetes-et, az OpenStack-et és a különböző felhőszolgáltatókat (AWS EC2, GCE, GKE, GAE, Azure, Oracle Cloud Infrastructure), valamint különféle termékekkel és szolgáltatásokkal integrálható:
CI rendszerekkel (Jenkins, Travis CI) folyamatban van;
Datadoggal, Prometheusszal, Stackdriverrel és SignalFx-el – az események figyeléséhez;
Slack, HipChat és Twilio segítségével – az értesítésekhez;
Packer, Chef és Puppet segítségével – virtuális gépekhez.
Ez az írt a Netflixnek a Spinnaker új alapba való felvételével kapcsolatban:
„A Spinnaker sikere nagyrészt a cégek és emberek csodálatos közösségének köszönhető, akik használják és hozzájárulnak a fejlesztéséhez. A Spinnaker átadása a CDF-hez megerősíti ezt a közösséget. Ez a lépés ösztönözni fogja a változásokat és a befektetéseket más cégek részéről, amelyek a pálya széléről figyeltek. Ha megnyitjuk az ajtót új cégek előtt, több innovációt fog hozni a Spinnaker számára, ami mindenki hasznára válik.”
És Google kiadványok a Continuous Delivery Foundation létrehozása alkalmából külön megjegyzik, hogy „a Spinnaker egy többkomponensű rendszer, amely elvileg összhangban van a Tektonnal.” Ezzel elérkeztünk az új alapban szereplő utolsó projekthez.
Tekton
Tekton — közös összetevők formájában bemutatott keretrendszer a CI/CD-rendszerek létrehozásához és szabványosításához, amely folyamatok különféle környezetekben történő működését feltételezi, beleértve a normál virtuális gépeket, a szerver nélküli és a Kuberneteseket.
Ezek az összetevők önmagukban „Kubernetes-stílusú” erőforrások (magában a K8-ban CRD-ként implementálva), amelyek építőelemként szolgálnak a folyamatok meghatározásához. A K8s-klaszterben való használatukat röviden szemléltetjük itt.
A Tekton által támogatott termékcsomag már ismerősnek tűnik: Jenkins, Jenkins X, Skaffold és Knative. A Google Cloud úgy véli, hogy a Tekton megoldja „a nyílt forráskódú közösség és a vezető gyártók problémáját, hogy együtt dolgozzanak a CI/CD infrastruktúrájának modernizálásán”.
...
A CNCF-hez hasonlóan a CDF technikai bizottságot hozott létre (Technical Oversight Committee, TOC), amelynek feladatai közé tartozik az új projektek alapba való felvételével kapcsolatos kérdések mérlegelése (és döntéshozatal). Egyéb információk magáról a szervezetről CDF honlapja még nem sok, de ez normális és csak idő kérdése.
„Most, mint az egyik újonnan alakult Continuous Delivery Foundation vállalat, a következő szintre emeljük elkötelezettségünket [az egyéb CI/CD megoldások támogatásában univerzális technológia létrehozása iránt]. Ez az új szervezet fogja vezérelni a jövőbeni folyamatos szállítási szabványokat, amelyek együttműködésen alapuló és nyitott megközelítésen keresztül felgyorsítják a szoftverkiadási ciklust. A Jenkins, a Jenkins X, a Spinnaker és más technológiák átvételével ennek az alapítványnak a szárnya alá, fényes jövőt látunk a CI/CD számára!”