Ľahký Linux Distro pre natívne klastre webového servera Kubernetes & SaaS Apps

Spoločnosť CoreOS, spoločnosť zaoberajúca sa vývojom cloudového softvéru, ktorá riadi distribúciu Container Linuxu, nedávno vydala Tectonic verziu 1.64 (31.5.2017), ktorá poskytuje rýchly a ľahký spôsob nasadenia klastra Kubernetes na podporu webových / mobilných aplikácií na AWS alebo samostatne hostovaná sieť cloudového servera. Core OS má viac ako 100 open source softvérových projektov v rámci vývoja spoločnosti na GitHub vrátane etcd, flanel, rkt, Ignition, Clair, Matchbox, dex a prometheus-operátory. Tectonic je voľne použiteľný pre klastre Kubernetes až do 10 uzlov, po ktorých je niekoľko rôznych podnikových, dátových centier, & obchodné licencie sú k dispozícii s odbornou technickou podporou. Quay.io je ďalší cloudový produkt SaaS ponúkaný spoločnosťou CoreOS pod licenciou, ktorá pomáha tímom DevOps spravovať snímky kontajnerov pomocou aplikácie Docker alebo rkt, klastrov Kubernetes, Container Linux, & CoreOS Tectonic vo výrobe vo veľkom meradle. Quay.io obsahuje funkcie správy snímok snímok kontajnerov s integrovanou bezpečnosťou, analytikou, fakturáciou, monitorovaním, vytváraním úložísk, automatizovanými zálohami a kontrolou verzií softvéru zásobníka webového servera s pokročilými podporou GitHub, Bitbucket alebo Gitlab (Dockerfile Build Triggers)..


Ľahký Linux Distro pre natívne klastre webového servera Kubernetes a aplikácie SaaS

CoreOS je jednou z popredných softvérových spoločností vyvíjajúcich nové cloudové riešenia s otvoreným zdrojovým kódom v systéme Linux. Spoločnosť začala v garáži Palo Alto v Kalifornii Alexom Polvi (CEO), Brandon Philips (CTO) a Michael Marineau v roku 2013. Polvi predal jeho spoločnosť Cloudkick do Rackspace v roku 2010 a potom vytvoril Core OS so spoločnosťou Philips (bývalý vývojár jadra systému SUSE Linux) & Rackspace cloud programátor) & Marineau (od spoločnosti Google). Pôvodným cieľom spoločnosti bolo v podstate vybudovať ľahkú distribúciu systému Linux pre kontajnery, ktoré by replikovalo to, čo spoločnosť Google fungovala v ich dátových centrách. "Borg". V tom čase ešte neboli Kubernetes prepustené z verejných zdrojov alebo z otvorených zdrojov, ale po roku 2014/15, keď nadácia Linux Foundation prevzala správu nad Kubernetesovou platformou, hrala CoreOS hlavnú úlohu v Cloud Native Computing Foundation (CNCF) za účelom “pomáhajú uľahčovať spoluprácu medzi vývojármi a operátormi v oblasti bežných technológií.” Spoločnosť Google následne spustila službu Google Container Engine pre Kubernetes a Docker (GKE), pričom používanie oboch štandardov sa začalo uplatňovať na konkurenčných cloudových platformách v AWS, Azure, OCP, VMware, RHEL, atď. Takmer každá hlavná cloudová softvérová spoločnosť má Kubernetes. riešenie klastrového webového servera v roku 2017 s rozsiahlym využívaním etcd & rkt softvér od spoločnosti CoreOS (CloudFoundry, Fedora, ArchLinux). CoreOS Tectonic do značnej miery konkuruje GKE, RancherOS, Docker Swarm alebo využívaniu Kubespray ako alternatívy hybridného cloudu s vlastným hosťovaním pre správu klastrov holých kovových webových serverov na nezávislom serveri ("dodávateľom agnostik") hardvér dátového centra.

Ľahký Linux Distro pre natívne klastre webového servera Kubernetes a aplikácie SaaS

CoreOS Container Linux bol vyvinutý tak, aby vyhovoval potrebám načrtnutým v slávnom výskume publikovanom spoločnosťou Google v roku 2013 známym ako "Datacenter ako počítač: Úvod do navrhovania strojov na skladovanie." (Barroso, Clidaras, & Hölzle) Tento dokument načrtol princípy, ktoré stoja za koncepciou infraštruktúry dátových centier na cloudovom modeli, na rozdiel od návrhu jedného servera. Vďaka hardvéru na komodity a miliónom serverov v podnikovom nasadení musia správcovia cloudovej siete plánovať nevyhnutelné CPU, RAM, & iné zlyhanie hardvéru systému. Viacnásobné záložné kópie a pravdivosť každého v prípade zlyhania jednotky je hlavnou súčasťou úložiska RAID, kde sa rovnaké zásady uplatňujú na cloudové servery v elastických klastroch prostredníctvom teórie CAP. & Algoritmus Paxos. CoreOS tieto problémy vyriešil pomocou etcd, čo umožnilo aktualizáciu klastrov Kubernetes prostredníctvom samoaktualizácie & opravy procesov, ktoré tlačia koordinované asynchrónne aktualizácie na servery pomocou reštartovaných zámkov. To umožňuje jednoduchšiu aplikáciu hromadných aktualizácií bezpečnostných záplat v dátovom centre na obrovskom počte serverov s rackovým serverom súčasne. etcd má lepšie úložné aplikácie na ukladanie konfigurácie, súkromné ​​kľúče, zmeny hesla a ďalšie premenné prostredia pre webové servery v prípade zlyhania hardvéru, vďaka ktorému sa stal hlavným štandardom v tomto odvetví naprieč platformami v podmienkach licencovania s otvoreným zdrojom. etcd používa spoločnosť Google (CFS, GFS, Big Table, Chubby, Spanner), Amazon (E2 Replicated Logs), Microsoft (Boxwood), Hadoop (ZooKeeper) a mnoho ďalších spoločností v oblasti cloudového softvéru na vyriešenie problému spoločnosti Paxos vo voľbách vedúcich predstaviteľov. , sharding webového servera, strata súkromných šifrovacích kľúčov, & iné konfiguračné premenné s poruchou hardvéru dátového centra. prístavný robotník & Kontajnery rkt izolujú webový / mobilný aplikačný kód vrátane vstupu užívateľa spusteného z hardvéru operačného systému pre lepšiu celkovú izolovanú bezpečnosť údajov v cloude.

Demo video: Brandon Philips (Linux Conference 2015 – Auckland, NZ)

CoreOS: Úvod – "Architektonické vzorce rozsiahlej platformy sa menia. Vyhradené virtuálne počítače a nástroje na správu konfigurácie sa nahrádzajú kontajnerizáciou a novými technológiami riadenia služieb, ako je systemd. Táto prezentácia poskytne prehľad o ich kľúčových technológiách vrátane atď., Flotily a doku. Príďte a naučte sa používať tieto nové technológie na vytváranie výkonných, spoľahlivých a rozsiahlych distribuovaných systémov." Ďalšie informácie o CoreOS, Kubernetes, & Kontajnerový Linux

Je dôležité porozumieť rozdielom medzi aplikačnými kontajnermi a systémovými kontajnermi, ktoré fungujú ako VM, ako napríklad VPS pracujúce na platformách OpenVZ, KVM, Xen, Parallels, VMware atď. Kontajnery poskytujú alternatívny hypervízor virtualizácie, ktorý možno použiť na vytvorenie objektovo orientovaných riešení v rôznych vrstvách dátového centra pomocou izolovaných oddielov. VPS / VM je možné inštalovať a škálovať v elastických klastroch v kontajneroch a naopak. Kombinácia konfigurácií kontajnerov s celým radom ďalších virtualizačných platforiem dostupných na trhu sa dá použiť na vytvorenie komplexných riešení pre podnikových IT, predajcov SaaS / PaaS / IaaS, mobilné softvérové ​​aplikácie a spoločnosti poskytujúce webhosting. Väčšina kontajnerových riešení nezahŕňa vyhradený SSH & sieťové nástroje charakteristické pre inštancie VPS alebo VM, ale to je súčasť toho, čo vedie aplikačné kontajnery používané vo výrobe k založeniu na najľahších dostupných Linuxových distribúciách. Súčasná prax v systéme DevOps spočíva v zahrnutí celého balíka Linux pre najvyššiu vrstvu kódu do výroby, ktorý je spojený so všetkými špecifickými serverovými rozšíreniami požadovanými webom. & mobilné aplikácie prostredníctvom zostavovacích balíkov alebo binárnych súborov. Unikátny spôsob, akým kontajnery Docker a rkt využívajú jadro Unix a Unix API, vedie k kombinácii izolovaných & globálne menné priestory, ktoré sa dajú použiť na mapovanie konfiguračných premenných vnútri / mimo kontajnerov pre lepšiu izolovanú spotrebu zdrojov na hardvéri webového servera v dátových centrách.

Ľahký Linux Distro pre natívne klastre webového servera Kubernetes a aplikácie SaaS

rkt s CoreOS, Fedora, ArchLinux, & NixOS – "Základnou vykonávacou jednotkou rkt je pod, kolekcia jednej alebo viacerých aplikácií vykonávaných v zdieľanom kontexte (rktove pody sú synonymom koncepcie v orchestračnom systéme Kubernetes). rkt umožňuje používateľom aplikovať rôzne konfigurácie (napríklad izolačné parametre) na úrovni pod-úrovne aj na podrobnejšej úrovni pre jednotlivé aplikácie. Architektúra rkt znamená, že každý modul sa spúšťa priamo v klasickom procesnom modeli Unix (t. j. neexistuje centrálny démon) v samostatnom izolovanom prostredí. rkt implementuje moderný, otvorený, štandardný formát kontajnera, špecifikáciu App Container (appc), ale môže tiež spúšťať ďalšie obrázky kontajnerov, ako napríklad tie, ktoré boli vytvorené pomocou Docker." Prečítajte si viac informácií o kontajnerovom motore rkt

Ľahký Linux Distro pre natívne klastre webového servera Kubernetes a aplikácie SaaS

build & Nasadiť kontajnery v mierke: "Použite Quay.io na automatizáciu zostavovania vašich kontajnerov s integráciou do GitHub, Bitbucket a ďalších … Quay nepretržite prehľadáva zraniteľné miesta v kontajneroch, vďaka čomu získate úplný prehľad o známych problémoch a ich oprave.." Ďalšie informácie o službe Quay.io

Ukážkové video: Kelsey Hightower (Workshop CoreOS 2015 – Geekdom, SF)

Orchestrácia kontajnerov pomocou CoreOS a Kubernetes – "Tento praktický workshop … naučí moderné postupy pri organizovaní kontajnerov a ukáže príklady spolupráce komponentov pri riadení klastra kontajnerov Linux. Vďaka svojej schopnosti napájať infraštruktúru v cloude alebo na kovoch bude relácia používať Kubernetes s CoreOS ako príklad ukazujúci účastníkom, ako nasadiť a spravovať viacvrstvovú webovú aplikáciu.." Viac informácií o CoreOS & Kubernetes

Podľa Kelseyho Hightowera, známeho evanjelistu Kuberneta, ktorý pracoval v spoločnosti Google & CoreOS, Kubernetes nekonkuruje CloudFoundry, Heroku alebo OpenDeis ako a "úplná cesta" pre DevOps a cloudhostingové riešenia vo výrobe. Skôr je to virtualizačný rámec, ktorý sa špecializuje predovšetkým na správu kontajnerov, plánovanie a zisťovanie služieb. Mnoho konkurenčných spoločností PaaS / SaaS môže vytvárať nové riešenia s otvoreným zdrojovým kódom s väčšou interoperabilitou medzi platformami a prenosnosťou údajov medzi poskytovateľmi cloudhostingu. Zisťovanie služby Kubernetes sa týka predovšetkým monitorovania a regulácie počtu serverových uzlov v elastickom klastri a použitia etcd na synchronizáciu medzi kópiami s aktualizáciami stavu. Na rozdiel od aplikácie Docker, ktorá používa zdieľané adresy IP pre kontajnery, poskytuje server Kubernetes jedinečnú adresu IP pre každý modul pri udržiavaní komunikácie medzi všetkými uzlami servera v sieti. Unikátne adresy IP oddeľujú kód webovej / mobilnej aplikácie od operačného systému, na ktorom sa nachádza kontajner, čo umožňuje spustiť akékoľvek rozšírenia programovacieho jazyka, platformu webového servera alebo prispôsobený zásobník, ktorý je integrovaný s nástrojmi na nepretržitú publikáciu alebo správu verzií v systéme DevOps. Ďalšie alternatívy k Docker & rkt kontajnery sú:

  • LXC
  • Zlieváreň v záhrade
  • Mesos Containerizer
  • systemd-nspawn
  • Google lmctfy (zaniknutý)

Plánovanie úloh, vyhľadávanie služieb, & správa klastrov sú hlavné aspekty architektúry dátových centier, ktoré sa zlepšujú v sieťach webových serverov. Pred pokrokom v riešeniach CoreOS, RancherOS a ďalších riešeniach Container Linux programátori v prvej fáze cloudového hostingu používali skripty šéfkuchára / bábky na zdieľanie stavacích snímok pre automatizované inštalácie kontajnerov v mierke. Kontajnery uľahčujú podporu aplikácií pre viac nájomcov v Pythone, Java, Nginx, MySQL, OpenSSL atď. Za behu. Kontajnery tiež vývojárom otvárajú väčšiu flexibilitu pri udržiavaní aktívneho kódu medzi aktualizáciami rozširovacej platformy, aby webové servery boli opravené a zároveň zaistili, že priebežné aktualizácie zabezpečenia neporušujú výrobný kód. Pretože je to v praxi príslovo ťažké, princípom systému Container Linux je udržať OS jednoduchý. Udržiavaním bezpečnosti jadra a nikdy nezlomením rozhrania API jadra v systéme Linux sa kontajnery môžu spúšťať v používateľskom priestore so všetkými rozšíreniami & nástroje izolované s väčšou celkovou bezpečnosťou pri správe siete s viacerými nájomcami.

Ľahký Linux Distro pre natívne klastre webového servera Kubernetes a aplikácie SaaS

CoreOS Container Linux – "Kubernetes je výkonný softvér na správu kontajnerov inšpirovaný spoločnosťou Google’s prevádzkovými skúsenosťami s kontajnermi. Vstavané sú základné funkcie, ako je vyhľadávanie služieb, automatické vyrovnávanie záťaže, replikácia kontajnerov a ďalšie. Navyše’Je to všetko poháňané pomocou HTTP API … Linuxové kontajnery poskytujú množstvo výhod pre vývojárov aplikácií i operačné tímy. Container Linux umožňuje inštaláciu softvéru iba ako kontajnery, čo je dôležitá abstrakčná vrstva medzi operačným systémom a aplikáciami (a závislosťami) spustenými na vrchole." Ďalšie informácie o kontajnerovom systéme Linux

Koncept Video: etcd v 3 – Brandon Philips (CTO / spoluzakladateľ CoreOS)

Raft: Distribuovaný protokol o konsenze – "etcd je napísaný v Go, ktorý má vynikajúcu podporu naprieč platformami, malé binárne súbory a veľkú komunitu. Komunikácia medzi počítačmi atď. Sa vykonáva pomocou algoritmu Raft konsenzus." Viac informácií o rafte DCP

Systém Kubernetes umožňuje použitie rôznych komponentov v automatických mierkach klastrových úrovní uzlov webového servera, napríklad pomocou Terraform, Fleet (podobne ako systém D), Mesos, CoreOS Tectonic, Docker Swarm atď., Kde etcd je životne dôležitou súčasťou ( podobne ako zámočník), ktorý koordinuje zmeny stavu od zmien vstupnej premennej používateľa cez elastické zhluky s mnohými izoláciami súčasne prebiehajúcich procesov. bábka & Je možné implementovať aj skriptovanie šéfkuchárov. Týmto spôsobom môžu správcovia systémov stanoviť parametre, ako je beh 100 inštancií aplikácie SaaS (webová alebo mobilná aplikácia) s 1 GB RAM a plánovač Kubernetes bude udržiavať úrovne naprieč systémovými zdrojmi, ako je napríklad teplomer zväčšujúci servery a vypínajúce uzly. ako to vyžaduje stav siete. Z tohto dôvodu sa neodporúča používať veľké súbory s mnohými uloženými statickými súbormi na replikovaných webových serveroch založených na kontajneroch, čo vedie k väčšej funkčnosti cloudového úložiska založeného na API, z ktorého môžu všetky elastické uzlové webové servery čerpať, ako to vyžadujú požiadavky na prenos https. , To tiež umožňuje mechanizmom na zisťovanie služieb (SkyDNS, Discoverd, Confd, magické proxy, atď.) Vzťahovať geolokáciu používateľov z požiadaviek prehľadávača na verejných sieťach pre lepšie vyváženie záťaže, ako aj vytváranie nových riešení pre interné ukladanie súborov reverzných proxy do súborov v dátových centrách pre lepší výkon webhostingu.

Ľahký Linux Distro pre natívne klastre webového servera Kubernetes a aplikácie SaaS

Dockerfile Build in the Cloud – "Rád zostavujete svoje obrázky pomocou dokovacích súborov? Jednoducho nahrajte súbor Dockerfile (a všetky ďalšie súbory, ktoré potrebuje) a my zostavíme súbor Dockerfile do obrázka a vložíme ho do úložiska. Ak ukladáte súbor Dockerfile v službách GitHub, Bitbucket alebo Gitlab, pridajte do svojho úložiska funkciu Build Trigger a začneme zostavovať program Dockerfile pre každú zmenu, ktorú urobíte … Zdieľajte ľubovoľný archív s rovnakým počtom (alebo s niekoľkými) používateľmi, ako ste vy zvoliť. Potrebujete úložisko iba pre svoj tím? Ľahko zdieľajte so svojimi členmi tímu … Chcete zdieľať so svetom? Zverejnite svoj archív." Ďalšie informácie o službe Quay.io

Ľahký Linux Distro pre natívne klastre webového servera Kubernetes a aplikácie SaaS

etcd & Klastrové štáty Kubernetes – "etcd je distribuovaný kľúč s hodnotou kľúča, ktorý poskytuje spoľahlivý spôsob ukladania údajov cez klaster počítačov. to’s open-source a sú k dispozícii na serveri GitHub. atďd elegantne zvláda voľby vedúceho počas sieťových oddielov a bude tolerovať zlyhanie zariadenia vrátane vodcu." Viac informácií o CoreOS & Kubernetes (atď.)

Jeffrey Wilson Administrator
Sorry! The Author has not filled his profile.
follow me