Liggewig Linux-distro vir inheemse Kubernetes-webbediener-groepe & SaaS-programme
CoreOS, die wolkprogrammatuurontwikkelingsonderneming wat die verspreiding van Container Linux bestuur, het onlangs Tectonic weergawe 1.64 (31-31/2017) vrygestel, wat ‘n vinnige en maklike manier bied om ‘n Kubernetes-groepering vir web- / mobiele appondersteuning op AWS of ‘n self- wolkbedienernetwerk aangebied. Core OS het meer as 100 open source sagtewareprojekte wat onder die ontwikkeling van maatskappye op GitHub is, insluitend ensovoorts, flanel, rkt, ignition, Clair, Matchbox, dex en prometheus-operateurs. Tectonic is gratis om te gebruik vir Kubernetes-groepe van tot 10 nodes, waarna ‘n aantal verskillende ondernemings, datasentrums, & besigheidslisensies is beskikbaar met professionele tegniese ondersteuning. Quay.io is ‘n ander SaaS-wolkproduk wat aangebied word deur CoreOS onder ‘n eiendomslisensie wat DevOps-spanne help om foto’s van houers met Docker of rkt, Kubernetes-groepe, Container Linux te bestuur, & CoreOS Tectonic in skaalproduksie. Quay.io bevat funksies vir die bestuur van foto’s vir houers met geïntegreerde beveiliging, analise, fakturering, monitering, opberging van bewaarplekke, outomatiese rugsteun en weergawe van webservers stapelprogrammatuur met gevorderde GitHub-, Bitbucket- of Gitlab-ondersteuning (Dockerfile Build Triggers).
CoreOS is een van die toonaangewende sagteware-ondernemings wat nuwe open source-wolkoplossings op Linux ontwikkel, en die maatskappy is in 2013 in ‘n Palo Alto, Kalifornië-garage begin deur Alex Polvi (CEO), Brandon Philips (CTO), en Michael Marineau. Polvi het verkoop sy maatskappy Cloudkick na Rackspace in 2010 en stig daarna Core OS saam met Philips (voormalige SUSE Linux-kernontwikkelaar & Rackspace-wolkprogrammeerder) & Marineau (van Google). Die oorspronklike doel van die onderneming was in wese om ‘n liggewig Linux-verspreiding vir houers te bou wat sou herhaal wat Google in hul datasentrums bedryf het met "Borg". Op daardie tydstip was Kubernetes nog nie in die openbaar of openlik vrygestel nie, maar na die 2014/15 toe die bestuur van die Kubernetes-platform deur die Linux Foundation oorgeneem is, het CoreOS ‘n groot rol gespeel in die Cloud Native Computing Foundation (CNCF) om “help om samewerking tussen ontwikkelaars en operateurs oor algemene tegnologieë te vergemaklik.” Google het ook Google Container-enjin vir Kubernetes en Docker (GKE) van stapel gestuur met die gebruik van albei standaarde wat aangeneem word oor die mededingende wolkplatforms by AWS, Azure, OCP, VMware, RHEL, ens. Byna elke groot wolkprogrammatuuronderneming het ‘n Kubernetes cluster-webbedieneroplossing in 2017 met wydverspreide gebruik van die ens & rkt sagteware deur CoreOS (CloudFoundry, Fedora, ArchLinux). CoreOS Tectonic kompeteer grootliks met GKE, RancherOS, Docker Swarm, of die gebruik van Kubespray as ‘n hibriede wolkopsie wat self aangebied word vir die bestuur van kaalmetaalbedieners op onafhanklike ("verkoper-agnostikus") datasentrum-hardeware.
CoreOS Container Linux is ontwikkel om aan te pas by die behoeftes wat uiteengesit is in die beroemde navorsingsartikel wat in 2013 deur Google gepubliseer is "Die datacenter as ‘n rekenaar: ‘n inleiding tot die ontwerp van masjiene vir pakhuise." (Barroso, Clidaras, & Hölzle) In hierdie artikel word die beginsels van die bedinking van datasentruminfrastruktuur op die wolkmodel uiteengesit in teenstelling met die ontwerp van ‘n enkele bediener. Met kommoditeitshardeware en miljoene bedieners in ondernemingsontplooiings, moet die wolknetwerkadministrateurs beplan vir onvermydelike geheue van die SVE (RAM), & ander stelsel hardeware mislukking. Veelvuldige rugsteunkopieë en die waarheid van elkeen in gevalle van eenheidsfout is ‘n groot deel van die RAID-berging, waar dieselfde beginsels geld vir wolkbedieners in elastiese groepe via die CAP-stelling & Paxos-algoritme. CoreOS het hierdie probleme met ens opgelos, wat opdaterings van Kubernetes-groepe moontlik gemaak het deur self-opdatering & prosesse wat gekoördineerde asinchroniese opdaterings op bedieners stoot, met behulp van herlaai-slotte, herstel. Dit maak dit moontlik om die massa-opdaterings van sekuriteitspatches in ‘n datasentrum op ‘n groot aantal rackmount-bedieners op ‘n slag makliker te maak. ens het ‘n beter bergingstoepassing vir die stoor van die konfigurasie, privaat sleutels, wagwoordveranderings en ander omgewingsveranderlikes vir webbedieners in geval van hardeware-foute, wat dit ‘n belangrike standaard in die industrie gemaak het op verskillende platforms op lisensievoorwaardes vir open source. ens word gebruik deur Google (CFS, GFS, Big Table, Chubby, Spanner), Amazon (E2 Replicated Logs), Microsoft (Boxwood), Hadoop (ZooKeeper), en baie ander wolkprogrammatuurondernemings om die probleem van Paxos in die leiersverkiesing op te los. , afskerming van die webbediener, verlies van private enkripsiesleutels, & ander konfigurasieveranderlikes met hardeware-mislukking van datacenters. Docker & rkt-houers isoleer die web- / mobiele toepassings-kode, insluitend die gebruiker-invoer vanaf die hardeware-bestuurstelsel vir beter algehele geïsoleerde datasekuriteit in die wolk.
Demo-video: Brandon Philips (Linux-konferensie 2015 – Auckland, NZ)
CoreOS: ‘n inleiding – "Die argitektoniese patrone van ‘n grootskaalse platform is besig om te verander. Toegewyde VM’s en konfigurasiebestuursinstrumente word vervang deur houerversiering en nuwe diensbestuurstegnologieë soos systemd. Hierdie aanbieding gee ‘n oorsig van hul sleuteltegnologieë, insluitend ensovoorts, vloot en docker. Kom leer hoe om hierdie nuwe tegnologieë te gebruik om performante, betroubare, groot verspreide stelsels te bou." Lees meer oor CoreOS, Kubernetes, & Houer Linux
Dit is belangrik om die verskille tussen toepassingshouers en stelselhouers wat as ‘n VM funksioneer, te verstaan, soos VPS wat onder OpenVZ, KVM, Xen, Parallels, VMware, ens. Werk. Houers bied ‘n alternatiewe virtualisasiehypervisor wat gebruik kan word om objekgeoriënteerde oplossings op verskillende lae van ‘n datasentrum te skep deur geïsoleerde partisies. VPS / VM’s kan in elastiese trosse binne houers geïnstalleer en afgeskaal word, en omgekeerd. Die kombinasie van houerkonfigurasies met die groot verskeidenheid ander virtualisasieplatforms wat op die mark beskikbaar is, kan gebruik word om komplekse oplossings te skep vir ondernemings-IT, SaaS / PaaS / IaaS-ondernemers, mobiele sagtewaretoepassings en webhostingondernemings. Die meeste houeroplossings bevat nie die toegewyde SSH nie & netwerkhulpmiddels wat kenmerkend is van VPS- of VM-gevalle, maar dit is deel van wat daartoe lei dat die toepassingshouers wat in produksie gebruik word, gebaseer is op die liggewigste Linux-distros wat beskikbaar is. Die huidige praktyk in DevOps is om die volledige Linux-stapel vir die boonste laag kode in produksie in te sluit, saam met al die spesifieke bediener-uitbreidings wat op die web benodig word. & mobiele programme deur pakkette of binaries te bou. Die unieke manier waarop Docker en rkt-houers die Unix-kern en Unix API gebruik, lei tot ‘n kombinasie van geïsoleerde & globale naamruimtes wat gebruik kan word om konfigurasieveranderlikes binne / buite die houers te karteer vir beter geïsoleerde hulpbronverbruik op webserverhardeware in datasentrums.
rkt met CoreOS, Fedora, ArchLinux, & NixOS – "Die kernuitvoeringseenheid van rkt is die peul, ‘n versameling van een of meer toepassings wat in ‘n gedeelde konteks uitgevoer word (rkt se peule is sinoniem met die konsep in die Kubernetes-orkestrasie-stelsel). rkt stel gebruikers in staat om verskillende konfigurasies (soos isolasieparameters) op pod-vlak sowel as op die meer korrelvormige per-toepassingsvlak toe te pas. rkt se argitektuur beteken dat elke pod direk uitgevoer word in die klassieke Unix-prosesmodel (d.w.s. daar is geen sentrale demoon nie), in ‘n selfstandige, geïsoleerde omgewing. rkt implementeer ‘n moderne, oop, standaard houerformaat, die App Container (appc) spec, maar kan ook ander houerprente uitvoer, soos dié wat met Docker gemaak is." Kom meer te wete oor die rkt Container Engine
bou & Ontplooi houers op skaal: "Gebruik Quay.io om u houeropbou te outomatiseer, met integrasie in GitHub, Bitbucket, en meer … Quay skandeer u houers deurlopend vir kwesbaarhede, en gee u ‘n volledige sigbaarheid van bekende probleme en hoe om dit op te los." Kom meer te wete oor Quay.io
Demo-video: Kelsey Hightower (CoreOS Workshop 2015 – Geekdom, SF)
Houerorkestrasie met behulp van CoreOS en Kubernetes – "Hierdie praktiese werkswinkel … leer moderne praktyke vir die orkestrasie van houers, en toon voorbeelde van hoe komponente saamwerk om ‘n groep Linux-houers te bestuur. Met die vermoë om infrastruktuur in die wolk of op kaalmetaal aan te wend, gebruik die sessie Kubernetes met CoreOS as ‘n voorbeeld wat die deelnemers wys hoe om ‘n multi-vlak webtoepassing te implementeer en te bestuur." Kom meer te wete oor CoreOS & Kubernetes
Volgens Kelsey Hightower, ‘n bekende Evangelis van Kubernetes wat by Google gewerk het & CoreOS, Kubernetes ding nie mee met CloudFoundry, Heroku of OpenDeis as ‘n "volledige pad" vir DevOps en cloud hosting oplossings in die produksie. Inteendeel, dit is ‘n virtualisasieraamwerk wat hoofsaaklik spesialiseer in houerbestuur, skedulering en diensontdekking dat baie mededingende PaaS / SaaS-ondernemings nuwe open source-oplossings kan bou met groter inter-platform en interoperabiliteit tussen data tussen wolk-gasheerverskaffers. Kubernetes-diensontdekking hou hoofsaaklik verband met die monitering en regulering van die aantal bedienerknope in ‘n elastiese groepering en die gebruik van ensovoorts vir sinchronisasie tussen kopieë met opdaterings deur toestandveranderings. Anders as Docker, wat gedeelde IP-adresse vir houers gebruik, bied Kubernetes ‘n unieke IP-adres aan elke pod, terwyl die kommunikasie tussen alle bedienerknope in ‘n netwerk behou word. Die unieke IP-adresse ontkoppel die web- / mobiele toepassings-kode van die onderliggende houer-bedryfstelsel, waardeur enige programmeringstaal-uitbreidings, webbedienerplatform of aangepaste stapel in produksie geplaas kan word wat geïntegreer is in deurlopende publikasie- of weergawebeheer-instrumente in DevOps. Ander alternatiewe vir Docker & rkt houers is:
Google lmctfy (afgeskakel)
Werksbeplanning, diensontdekking, & klusterbestuur is die belangrikste aspekte van datasentrumargitektuur wat houers verbeter vir webbediener netwerke. Voordat hulle ontwikkel met CoreOS, RancherOS en ander Container Linux-oplossings, het programmeerders in die eerste fase van die wolk-gasheer Chef / Puppet-skrifte gebruik om foto’s vir die bou van outomatiese houers op skaal te deel. Houers maak dit makliker om Python-, Java-, Nginx-, MySQL-, OpenSSL-, ens. -Programme vir meerdere huurders te ondersteun gedurende looptyd. Houers bied ook groter buigsaamheid vir ontwikkelaars in die handhawing van die aktiewe kode tussen opdateringsplatform-opdaterings om webbedieners op te laai terwyl hulle verseker dat die deurlopende sekuriteitsopdaterings nie produksiekode verbreek nie. Omdat dit prakties spreekwoordelik moeilik is, is die beginsel van Container Linux om die bedryfstelsel eenvoudig te hou. Deur slegs kernsekuriteit te handhaaf en nooit die kern-API in Linux te verbreek nie, kan houers in die gebruikersruimte loop met alle uitbreidings & instrumente in isolasie met ‘n groter algehele veiligheid in netwerkbestuur met meerdere huurders.
CoreOS-houer Linux – "Kubernetes is ‘n kragtige sagteware vir houersbestuur wat deur Google geïnspireer is’s operasionele ervaring met houers. Noodsaaklike funksies soos diensontdekking, outomatiese vragbalansering, houerreplikasie en meer is ingebou. Plus’Dit word almal via ‘n HTTP API aangedryf … Linux-houers bied verskeie voordele vir sowel toepassingsontwikkelaars as bedryfsspanne. Container Linux laat slegs toe dat sagteware as houers geïnstalleer word, wat ‘n belangrike abstraksielag is tussen die bedryfstelsel en die toepassings (en afhanklikhede) wat bo-op loop.." Lees meer oor Container Linux
Konsepvideo: etcd v 3 – Brandon Philips (CTO / mede-stigter CoreOS)
Vlot: Verspreide konsensusprotokol – "ens is geskryf in Go met uitstekende kruis-platform ondersteuning, klein binaries en ‘n wonderlike gemeenskap daaragter. Kommunikasie tussen ens. Masjiene word via die Raft konsensusalgoritme hanteer." Lees meer oor die Vlot DCP
Die Kubernetes-stelsel maak voorsiening vir verskillende komponente wat gebruik kan word om outomaties te skaal op die webbediener-knooppuntvlakke, byvoorbeeld die gebruik van Terraform, Fleet (soortgelyk aan Stelsel D), Mesos, CoreOS Tectonic, Docker Swarm, ens., Waar etcd die belangrikste komponent is ( soortgelyk aan Locksmith) wat die toestandsveranderings van veranderlike invoerveranderings deur gebruiker oor elastiese groepe koördineer met baie gelyktydige loopprosesse in isolasie. Puppet & Chef-script kan ook geïmplementeer word. Op hierdie manier kan stelseladministrateurs parameters instel soos om 100 gevalle van ‘n SaaS-toepassing (webwerf of mobiele app) met 1 GB RAM te laat werk, en die Kubernetes-skeduleerder sal die vlakke van die stelselhulpbronne handhaaf, soos ‘n termometer wat bedieners opskaal en nodusse afsluit soos vereis deur die netwerkstaat. As gevolg hiervan word dit nie aanbeveel om groot gebou met baie gestoorde statiese lêers in die gerepliseerde houergebaseerde webbedieners te gebruik nie, wat lei tot meer API-gedrewe wolkbergingsfunksionaliteit wat al die elastiese knoppie-webbedieners kan gebruik soos vereis deur https-verkeersversoeke. . Dit stel diensmeganismes (SkyDNS, Discoverd, Confd, magic proxies, ens.) Ook in staat om die ligging van gebruikers vanaf blaaierversoeke op openbare netwerke te skakel vir beter vragbalansering, sowel as om nuwe oplossings te bou vir interne omgekeerde proxy-lêergas in datasentrums vir beter webhostingsprestasie.
Dockerfile Bou in die wolk – "Wil u Dockerfiles gebruik om u beelde te bou? Laai eenvoudig u Dockerfile op (en enige addisionele lêers wat dit benodig), en ons bou u Dockerfile tot ‘n beeld en stoot dit na u bewaarplek. As u u Dockerfile in GitHub, Bitbucket of Gitlab stoor, voeg ‘n Build Trigger by u repository en dan begin ons ‘n Dockerfile-gebou vir elke verandering wat u aanbring … Deel enige bewaarplek met soveel (of so min) gebruikers as u kies. Benodig u slegs ‘n bewaarplek vir u span? Deel maklik met u spanlede … Wil u met die wêreld deel? Maak u bewaarplek ten volle openbaar." Kom meer te wete oor Quay.io
etcd & Kubernetes Cluster State – "etcd is ‘n verspreide sleutelwaarde-winkel wat ‘n betroubare manier bied om data oor ‘n groep masjiene te stoor. Dit’s open source en beskikbaar op GitHub. ens. hou leierverkiesings grasieus tydens netwerkpartisies en sal masjienversaking, insluitend die leier, duld." Kom meer te wete oor CoreOS & Kubernetes (ens.)