CoreOS

CoreOS
Logo
Stav projektu Ve vývoji
Platformy x86-64
Společnost /
vývojář
červená čepice
Licence Licence Apache 2.0
webová stránka https://coreos.com/os/docs/latest/

Container Linux (dříve CoreOS Linux ) je odlehčený operační systém s otevřeným zdrojovým kódem založený na linuxovém jádře a navržený tak, aby poskytoval infrastrukturu pro nasazení klastrů , přičemž se zaměřuje na automatizaci, snadné nasazení aplikací, zabezpečení, spolehlivost a škálovatelnost . Jako operační systém poskytuje Container Linux pouze minimální funkce potřebné k nasazení aplikací do softwarových kontejnerů, stejně jako integrované mechanismy pro zjišťování služeb a sdílení konfigurace.

Container Linux sdílí základy s Gentoo Linux , Chrome OS a Chromium OS prostřednictvím společné vývojové sady softwaru (SDK). Container Linux přidává do této sdílené základny nové funkce a přizpůsobení pro podporu dalšího hardwaru a případů použití. Na začátku roku 2015 se CoreOS aktivně vyvíjí, zejména Alexem Polvim, Brandonem Philipsem a Michaelem Marineauem, přičemž jeho hlavní funkce jsou k dispozici ve stabilní verzi.

Přehled

Container Linux neposkytuje žádného správce balíčků jako způsob distribuce aplikací, místo toho vyžaduje spuštění všech aplikací uvnitř jejich kontejnerů. Instance Container Linux, která slouží jako jediný hostitel ovládacího prvku, používá základní virtualizační schopnosti na úrovni operačního systému Linux k vytvoření a konfiguraci více kontejnerů, které fungují jako izolované systémy Linux . Tímto způsobem se dělení prostředků mezi kontejnery provádí pomocí více instancí izolovaného uživatelského prostoru , namísto použití hypervisoru a poskytování plnohodnotných virtuálních strojů . Tento přístup vychází z funkčnosti cgroups a jmenných prostorů linuxového jádra, které společně poskytují schopnosti limitu účtu a izolovat využívání zdrojů ( CPU , paměť, disk I / O , atd.) Na uživatelském prostoru procesu sbírek .

Container Linux původně používal výhradně Docker jako komponentu poskytující další vrstvu abstrakce a rozhraní k funkcím virtualizace na úrovni operačního systému linuxového jádra, stejně jako poskytuje standardizovaný formát pro kontejnery, který umožňuje aplikacím běžet v různých prostředích. V prosinci 2014 společnost CoreOS vydala a začala podporovat rkt (původně vydaný jako Rocket ) jako alternativu k Dockeru a poskytovala prostřednictvím něj další standardizovaný formát pro obrázky kontejnerů aplikací, definici běhového prostředí kontejneru a protokol pro zjišťování a načítání obrázků kontejnerů . CoreOS poskytuje rkt jako implementaci takzvané specifikace Application Container (appc), která popisuje požadované vlastnosti Image Application Container Image (ACI); Společnost CoreOS spustila aplikace a ACI jako soubor nezávislých specifikací vedených výborem - nezávislým výborem prodejců operačních systémů - zaměřeným na jejich integraci do iniciativy Open Container Initiative (OCI); původně nazývaný Open Container Project nebo OCP)

Standard kontejnerizace byl oznámen V červnu 2015.

Container Linux používá skripty Gentoo Linux ebuild pro automatickou kompilaci svých systémových komponent a používá systemd jako svůj hlavní zaváděcí systém s těsnou integrací mezi systemd a různými interními mechanismy Container Linux.

Klastrová infrastruktura

Container Linux poskytuje etcd, démona, který běží na všech počítačích v klastru a poskytuje dynamický konfigurační registr, který umožňuje snadné a spolehlivé sdílení různých konfiguračních dat mezi členy klastru. Vzhledem k tomu, že údaje klíčové hodnoty uložené v etcd je automaticky distribuován a replikovány s automatizovanou master volby a budování konsensu pomocí Raft algoritmu , případné změny uložených dat se projeví na ‚celý cluster, přičemž vzniklá redundance brání clusteru selhání člena ze způsobení ztráta dat. Kromě správy konfigurace poskytuje etcd také zjišťování služeb tím, že umožňuje nasazeným aplikacím, aby se samy inzerovaly a vypisovaly služby, které nabízejí. Komunikace s etcd probíhá prostřednictvím REST API vystaveného přes HTTP, které komunikuje v JSON ; API lze použít přímo (například pomocí curl nebo wget ) nebo nepřímo pomocí etcdctl , což je specializovaný nástroj příkazového řádku, který také poskytuje CoreOS. . Etcd se také používá v softwaru Kubernetes .

Container Linux také poskytuje správce klastrových flotil, který řídí samostatné systémové instance Container Linux. Od roku 2017 již není flotila aktivně rozvíjena a je jí ukončena podpora ve prospěch společnosti Kubernetes . Pomocí fleetd vytváří Container Linux distribuovaný zaváděcí systém, který propojuje samostatné instance systému s nasazením atd .; Interně fleetd démon komunikuje s místním systemd přes D-Bus , a s nasazením etcd prostřednictvím API exponované etcd . Použití fleetd umožňuje nasazení jednoho nebo více kontejnerů v celém clusteru s pokročilejšími možnostmi včetně redundance, převzetí služeb při selhání , nasazení na konkrétní členy klastru, závislostí mezi kontejnery a skupinového nasazení kontejnerů. Ke konfiguraci a monitorování tohoto distribuovaného zaváděcího systému se používá obslužný program příkazového řádku nazvaný fleetctl ; interně komunikuje s démonem fleetd pomocí API založeného na JSON přes HTTP, toto API lze také použít přímo. Při místním použití na člena klastru komunikuje fleetctl s místní instancí fleetd na soketu domény Unix  ; při vzdáleném použití se tunelování SSH používá s ověřováním poskytovaným prostřednictvím veřejných klíčů SSH .

Všechny výše uvedené démony a nástroje příkazového řádku ( etcd , etcdctl , fleetd a fleetctl ) jsou psány v GB a distribuovány za podmínek licence Apache 2.0.

Rozvinutí

Při spuštění na vyhrazeném hardwaru může být Container Linux trvale nainstalován na místní úložiště, jako je jednotka pevného disku (HDD) nebo jednotka SSD, nebo spuštěn vzdáleně po síti pomocí Preboot Execution Environment (PXE)) obecně nebo iPXE jako jedna z implementací PXE. CoreOS také podporuje nasazení na různých virtualizačních platformách včetně Amazon EC2 , DigitalOcean, Google Compute Engine, Microsoft Azure , OpenStack , QEMU / KVM , Vagrant a VMware . Container Linux lze také nainstalovat na Citrix XenServer s tím, že pro CoreOS existuje „šablona“.

Container Linux lze nasadit také prostřednictvím jeho komerční distribuce s názvem Tectonic , která se integruje s Kubernetes společnosti Google jako nástroj pro správu clusterů. V dubnu 2015 byla společnost Tectonic nabízena jako beta software pro vybrané zákazníky. Navíc coreos poskytuje Flanel jako součást realizaci překryvné sítě nutná především pro integraci s Kubernetes.

Technologie

Deriváty

Po akvizici společnosti CoreOS, Inc. v lednu 2018 společnost Red Hat oznámila, že spojí CoreOS Container Linux s Atomic Project společnosti Red Hat, aby vytvořila nový operační systém Red Hat CoreOS a zároveň sladila komunitní open source projekt Fedora s Fedora CoreOS , kombinující technologie obou předchůdců.

Domov

LWN.net přezkoumala CoreOS v roce 2014: „  Pro ty, kteří dávají dohromady velké distribuované systémy - příkladem jsou webové aplikace - se zdá, že CoreOS má spoustu zajímavých funkcí. To by mělo umožnit aplikacím tohoto typu růst a zmenšovat se podle potřeby s poptávkou, a také poskytovat stabilní platformu, kde upgrady nejsou neustálou bolestí hlavy. Pro „masivní nasazení serverů“ vypadá CoreOS nebo něco s mnoha stejnými vlastnostmi jako budoucnost.  "

Viz také

Reference

  1. „  CoreOS Linux je nyní Container Linux  “ , coreos.com (přístup 20. prosince 2016 )
  2. Libby Clarková, „  Brandon Philips: Jak CoreOS Linux Distro používá skupiny  “ [ archiv22. února 2014] , Linux.com ,9. září 2013(zpřístupněno 13. února 2014 )
  3. „  coreos - nový přístup k serverových systémů založených na Linuxu  “ , itnews2day.com ,22. srpna 2013(zpřístupněno 26. března 2014 )
  4. „  Dokumentace CoreOS: Používání CoreOS  “ , coreos.com (přístup 13. února 2014 )
  5. „  Stavební vývoj obrázky: Aktualizace dopravné-stabilní ebuilds z Gentoo  “ , coreos.com (zobrazena 24. května 2016 )
  6. „  Distribuce založená na Gentoo  “ , gentoo.org ,25. března 2016(zpřístupněno 24. května 2016 )
  7. Brian Harrington, „  CoreOS: Anatomy of a CoreOS update  “ , youtube.com , Rackspace,8. července 2014(zpřístupněno 25. července 2014 )
  8. Alex Polvi, „  Stabilní vydání CoreOS  “ , coreos.com ,25. července 2014(zpřístupněno 28. srpna 2014 )
  9. „  Poznámky k vydání CoreOS  “ , coreos.com (přístup 28. srpna 2014 )
  10. Brandon Philips, „  Vydání etcd 2.0 - první hlavní stabilní vydání  “ , coreos.com ,28. ledna 2015(zpřístupněno 14. června 2015 )
  11. Jonathan Corbet, „  Poznámky z kontejneru  “ , LWN.net ,29. října 2007(zpřístupněno 3. července 2016 )
  12. Jake Edge, „  Obory názvů ovládacích skupin  “ , LWN.net ,19. listopadu 2014(zpřístupněno 3. července 2016 )
  13. Libby Clark, „  Brandon Philips: Jak CoreOS Linux Distro používá cgroups  “ [ archiv22. února 2014] , Linux.com ,9. září 2013(zpřístupněno 13. února 2014 )
  14. „  coreos dokumentaci: Používání Docker s coreos  “ [ archiv4. srpna 2016] , coreos.com (přístup 14. června 2015 )
  15. „  Docker 0.9: Představujeme spouštěcí ovladače a libcontainer  “ , docker.com ,10. března 2014(zpřístupněno 20. ledna 2015 )
  16. Libby Clark, „  Spoluzakladatel CoreOS Alex Polvi Talks Containers, Rocket vs. Docker a další  “ , Linux.com ,30. ledna 2015(zpřístupněno 14. června 2015 )
  17. Charles Babcock, „  Raketové kontejnery: Jak plánuje CoreOS napadnout Dockera  “ , informationweek.com ,20. února 2015(zpřístupněno 14. června 2015 )
  18. Alex Polvi, „  CoreOS staví modul runtime kontejneru, rkt  “ , coreos.com ,1 st 12. 2014(zpřístupněno 14. června 2015 )
  19. Josh Berkus, „  Nová vydání etcd, appc a Rocket z CoreOS  “ , LWN.net ,4. února 2015(zpřístupněno 22. června 2015 )
  20. Josh Berkus, „  CoreOS Fest a svět kontejnerů, část 1  “ , LWN.net ,13. května 2015(zpřístupněno 22. června 2015 )
  21. Nathan Willis, „  The Rocket containerization system  “ , LWN.net ,3. prosince 2014(zpřístupněno 22. června 2015 )
  22. (in) Neil McAllister , „  Docker a chums odhalují org standardy pro softwarové kontejnery  “ , The Register , 22. června 2015( číst online , konzultováno 19. ledna 2017 )
  23. (in) Frederic Lardinois , „  Docker CoreOS, Google, Microsoft, Amazon a další se spojily při vývoji společného standardního kontejneru  “ , TechCrunch ,22. června 2015( číst online , konzultováno 24. června 2015 )
  24. "  Lídři v oboru se spojili a vytvořili projekt pro otevřené standardy kontejnerů  " [ archiv of13. srpna 2015] , opencontainers.org ,22. června 2015(zpřístupněno 24. června 2015 )
  25. Neil McAllister, „  Projekt Open Container Project přejmenován, říká, že do standardu zbývá jen několik týdnů: Linux Foundation, Docker a přátelé se rozhodnou pro iniciativu Open Container Initiative  “ , The Register ,22. července 2015(zpřístupněno 29. ledna 2016 )
  26. "  Dokumentace CoreOS: Používání systemd s CoreOS  " [ archiv serveru14. února 2014] , coreos.com (přístup 13. února 2014 )
  27. Mark Moudy, „  Ukázka vývojového prostředí CoreOS + Docker  “ , github.com ,16. května 2014(zpřístupněno 16. dubna 2015 )
  28. Timothy Prickett Morgan, „  CoreOS Hyperscales Linux tím , že jej učiní neviditelným  “ , nextplatform.com ,15. února 2015(zpřístupněno 14. června 2015 )
  29. Phil Whelan, „  Alex Polvi vysvětluje CoreOS  “ [ archiv24. února 2015] , activestate.com ,28. srpna 2013(zpřístupněno 7. května 2015 )
  30. Jonathan Corbet, „  Etcd a flotila  “ , LWN.net ,22. října 2014(zpřístupněno 22. června 2015 )
  31. „  Dokumentace CoreOS: Používání etcd s CoreOS  “ , coreos.com (přístup 13. února 2014 )
  32. „  Dokumentace CoreOS: Začínáme s etcd  “ , coreos.com (přístup k 13. února 2014 )
  33. Brandon Philips, „  etcd @ GoSF  “ , speakerdeck.com ,15. ledna 2014(zpřístupněno 13. února 2014 )
  34. Wood, „  Orchestrace kontejnerů: Přechod z flotily na Kubernetes  “ , coreos..com , CoreOS
  35. Justin Ellingwood, „  Jak používat Fleet a Fleetctl ke správě klastru CoreOS  “ , digitalocean.com ,12. září 2014(zpřístupněno 22. června 2015 )
  36. „  Dokumentace CoreOS: Spouštění kontejnerů s flotilou  “ , coreos.com (přístup 3. dubna 2014 )
  37. „  Dokumentace CoreOS: Používání klienta  “ , coreos.com (přístup 3. dubna 2014 )
  38. „  Coreos / Fleet: Fleet / README.md at master  “ , github.com ,18. února 2014(zpřístupněno 3. dubna 2014 )
  39. „  Coreos / Fleet: Fleet / Documentation / Deployment-and-configuration.md at master (Deploying Fleet)  “ , github.com ,14. dubna 2015(zpřístupněno 17. dubna 2015 )
  40. "  Coreos / Fleet: Fleet / Documentation / api-v1.md (Fleet API v1)  " , github.com ,29. října 2014(zpřístupněno 17. dubna 2015 )
  41. „  Coreos / Fleet: Fleet / LICENSE at Master  “ , github.com , 6. února 2014(zpřístupněno 3. dubna 2014 )
  42. „  Dokumentace CoreOS: Instalace CoreOS na disk  “ , coreos.com (přístup k 13. února 2014 )
  43. „  Dokumentace CoreOS: Zavádění CoreOS přes PXE  “ , coreos.com (přístup 13. února 2014 )
  44. „  Dokumentace CoreOS: Zavádění CoreOS přes iPXE  “ , coreos.com (přístup 13. února 2014 )
  45. Alex Crawford, „  Obraz CoreOS je nyní k dispozici na DigitalOcean  “ , coreos.com ,5. září 2014(zpřístupněno 5. září 2014 )
  46. Jack Clark, „  Google přináší do svého cloudu futuristický linuxový software CoreOS  “ , The Register ,23. května 2014(zpřístupněno 26. května 2014 )
  47. Alex Crawford, „  CoreOS je nyní k dispozici pro Microsoft Azure  “ , coreos.com ,20. října 2014(zpřístupněno 22. října 2014 )
  48. (en) Steven J. Vaughan-Nichols , "  coreos přináší Google Kubernetes Společnosti  " , ZDNet ,6. dubna 2015( číst online , konzultováno 29. dubna 2015 )
  49. Eugene Yakubovich, „  Představujeme flanel: překrývající se síť pro kontejnery podporovanou atd.  “ , Coreos.com ,28. srpna 2014(zpřístupněno 22. června 2015 )
  50. „  Výukový program pro používání CoreOS Flannel pro Docker  “ , slideshare.net ,listopadu 2014(zpřístupněno 22. června 2015 )
  51. „  Nejlepší řešení orchestrace kontejnerů ve výrobě  “ , na kubernetes.io (přístup 3. února 2020 ) .
  52. „  Kontejner, Docker, jak to funguje a jaké výhody přináší hostování vašich aplikací?“ - Alfa-Safety  “ (přístup 3. února 2020 ) .
  53. „  Vytváření a nasazování vašich aplikací pomocí OpenShift  “ , na Nexworld ,15. září 2017(přístup 3. února 2020 ) .
  54. (in) Rosoff, „  Země Red Hat, 250 milionů $ pro CoreOS, má startupy, které prodávají technologii vyvinutou společností Google  “ , CNBC ,30. ledna 2018(zpřístupněno 6. června 2019 )
  55. „  Fedora CoreOS, Red Hat CoreOS a budoucnost Container Linux | CoreOS  ” , coreos.com (přístup 6. června 2019 )
  56. CoreOS: Jiný druh distribuce Linuxu , LWN.net .

externí odkazy