CoreOS

CoreOS
Logo
Proje durumu Geliştirilmekte
Platformlar x86-64
Şirket /
Geliştirici
Kırmızı şapka
Lisans Apache Lisans 2.0
İnternet sitesi https://coreos.com/os/docs/latest/

Linux Kapsayıcıları (eski adıyla CoreOS Linux ), Linux çekirdeğine dayalı hafif bir açık kaynak işletim sistemidir ve kümede bir altyapı dağıtımı sağlamak için tasarlanmış , aynı zamanda otomasyona, uygulama dağıtımının kolaylığına, güvenliğe, güvenilirliğe ve ölçeklenebilirliğe odaklanır . Bir işletim sistemi olarak Container Linux, uygulamaları yazılım kapsayıcıları içinde dağıtmak için gereken minimum işlevselliğin yanı sıra hizmet keşfi ve yapılandırma paylaşımı için yerleşik mekanizmaları sağlar.

Container Linux, temelleri ortak bir yazılım geliştirme kiti (SDK) aracılığıyla Gentoo Linux , Chrome OS ve Chromium OS ile paylaşır . Container Linux, ek donanım ve kullanım durumlarını desteklemek için bu paylaşılan temele yeni özellikler ve özelleştirmeler ekler. 2015 yılının başında CoreOS, başlıca özellikleri kararlı sürümde bulunan Alex Polvi, Brandon Philips ve Michael Marineau tarafından aktif olarak geliştiriliyor.

Genel Bakış

Container Linux, uygulamaları dağıtmanın bir yolu olarak herhangi bir paket yöneticisi sağlamaz , bunun yerine tüm uygulamaların konteynerlerinin içinde çalışmasını gerektirir. Tek bir kontrol ana bilgisayarı olarak hizmet veren bir Container Linux örneği, yalıtılmış Linux sistemleri olarak işlev gören birden çok kapsayıcı oluşturmak ve yapılandırmak için Linux çekirdeği işletim sistemi düzeyinde temeldeki sanallaştırma yeteneklerini kullanır . Bu şekilde, kaynakların kapsayıcılar arasında bölümlenmesi, bir hiper yönetici kullanmak ve tam teşekküllü sanal makineler sağlamak yerine, birden çok izole edilmiş kullanıcı alanı örneği aracılığıyla yapılır . Bu yaklaşım, birlikte kullanıcı alanı işlem koleksiyonları için kaynakların ( CPU , bellek, disk G / Ç , vb.) Kullanımını sınırlama, hesaba katma ve izole etme yetenekleri sağlayan Linux çekirdeğinin cgroups ve ad alanlarının işlevselliğine dayanır .

Başlangıçta Container Linux , Linux çekirdeği işletim sistemi düzeyinde sanallaştırma işlevselliğine ek bir soyutlama katmanı ve arabirim sağlayan ve ayrıca uygulamaların farklı ortamlarda çalışmasına izin veren kapsayıcılar için standartlaştırılmış bir format sağlayan bir bileşen olarak Docker'ı özel olarak kullandı . Aralık 2014 yılında CoreOS yayımlanan ve destek başladı RKT (aslen olarak yayımlanan Roket içinden uygulama konteyner görüntüler, tanımı için başka standart formatı sağlayan Docker alternatif olarak) konteyner çalıştırma ortamı ve bir kap görüntü keşif ve alma protokolü . CoreOS , Uygulama Kabı Görüntüsünün (ACI) gerekli özelliklerini tanımlayan Uygulama Kabı (appc) spesifikasyonunun bir uygulaması olarak rkt sağlar ; CoreOS, onları Açık Konteyner Girişimi'ne (OCI) entegre etmeyi amaçlayan bir komite - bağımsız işletim sistemi satıcıları komitesi - tarafından yönlendirilen bir dizi bağımsız spesifikasyon olarak appc ve ACI'yi başlattı ; başlangıçta Açık Konteyner Projesi veya OCP olarak adlandırılır )

Konteynerizasyon standardı Haziran 2015'te açıklandı .

Container Linux , sistem bileşenlerinin otomatik olarak derlenmesi için Gentoo Linux ebuild komut dosyalarını kullanır ve systemd ile Container Linux'un çeşitli dahili mekanizmaları arasında sıkı bir entegrasyon ile systemd'yi ana önyükleme sistemi olarak kullanır .

Küme altyapısı

Container Linux, bir kümedeki tüm bilgisayarlarda çalışan ve dinamik bir yapılandırma kaydı sağlayan bir arka plan programı olan etcd'yi sağlar ve çeşitli yapılandırma verilerinin küme üyeleri arasında kolayca ve güvenilir bir şekilde paylaşılmasına olanak tanır. Yana anahtar değeri verileri depolanır etcd otomatik bir dağıtılmış ve çoğaltılan bir ile otomatik ana seçim ve konsensüs yapı kullanılarak Sal algoritması elde edilen fazlalık önler neden olan üye hatalarını küme ise, saklanan verilerin herhangi bir değişiklik, 'tüm kümenin yansır veri kaybı. Yapılandırma yönetimine ek olarak etcd , konuşlandırılan uygulamaların kendilerini tanıtmalarına ve sundukları hizmetleri listelemelerine izin vererek hizmet keşfi de sağlar. İle iletişim etcd bir ile yapılır DİNLENME API iletişim kurar fazla maruz HTTP JSON ; API doğrudan ( örneğin curl veya wget aracılığıyla ) veya dolaylı olarak CoreOS tarafından sağlanan özel bir komut satırı aracı olan etcdctl tarafından kullanılabilir. . Etcd, Kubernetes yazılımında da kullanılır .

Container Linux ayrıca, Container Linux'un ayrı sistem örneklerini kontrol eden filo küme yöneticisi sağlar . 2017 itibarıyla filo artık aktif olarak geliştirilmemiştir ve Kubernetes lehine kullanımdan kaldırılmıştır . Fleetd'yi kullanarak Container Linux, ayrı sistem örneklerini dağıtım çapında bir etcd'ye bağlayan dağıtılmış bir önyükleme sistemi oluşturur ; içten, fleetd ile iletişim cini yerel systemd yoluyla D-Bus , ile dağıtım etcd maruz API üzerinden etcd . Kullanılması fleetd fazlalık dahil daha gelişmiş seçenekleri ile küme çapında bir veya birden fazla konteyner dağıtım, sağlayan yük devretme , dağıtım belirli küme üyelerine, konteynerler arasında bağımlılıkları ve konteynerlerin gruplandırılmış dağıtım. Bu dağıtılmış önyükleme sistemini yapılandırmak ve izlemek için fleetctl adlı bir komut satırı yardımcı programı kullanılır; HTTP üzerinden JSON tabanlı bir API kullanarak fleetd arka plan programı ile dahili olarak iletişim kurar , bu API doğrudan da kullanılabilir. Bir küme üyesinde yerel olarak kullanıldığında, fleetctl yerel örneği ile iletişim fleetd bir üzerinde Unix alan soketi  ; uzaktan kullanıldığında, SSH tüneli , genel SSH anahtarları aracılığıyla sağlanan kimlik doğrulama ile kullanılır .

Yukarıda belirtilen tüm komut satırı arka plan programları ve yardımcı programları ( etcd , etcdctl , fleetd ve fleetctl ) GB olarak yazılır ve Apache 2.0 lisansı koşulları altında dağıtılır.

Dağıtım

Özel bir donanım üzerinde çalışırken, Container Linux sabit disk sürücüsü (HDD) veya katı hal sürücüsü gibi yerel depolamaya kalıcı olarak kurulabilir veya genel olarak Preboot Yürütme Ortamı (PXE) kullanılarak bir ağ üzerinden uzaktan veya iPXE ile önyüklenebilir PXE'nin uygulamalarından biri olarak. CoreOS ayrıca Amazon EC2 , DigitalOcean, Google Compute Engine, Microsoft Azure , OpenStack , QEMU / KVM , Vagrant ve VMware gibi çeşitli sanallaştırma platformlarında dağıtımları destekler . Container Linux, CoreOS için bir "şablon" olduğuna dikkat çekerek Citrix XenServer'a da kurulabilir.

Container Linux, Google'ın Kubernetes ile bir küme yönetimi aracı olarak entegre olan Tectonic adlı ticari dağıtımı aracılığıyla da dağıtılabilir . Nisan 2015, Tectonic, seçilen müşterilere beta yazılım olarak sunuldu. Buna ek olarak, CoreOS içerir pazen bir uygulama, bir bileşen olarak overlay ağını esas Kubernetes ile entegrasyon için de gereklidir.

Teknolojiler

Türevler

Ocak 2018'de CoreOS, Inc.'i satın almasının ardından Red Hat, yeni bir işletim sistemi olan Red Hat CoreOS'u oluşturmak için CoreOS Container Linux'u Red Hat's Atomic Project ile birleştireceğini ve açık kaynak Fedora Projesi'ni Fedora CoreOS çevresinde uyumlu hale getireceğini duyurdu. , iki öncülün teknolojilerini birleştiriyor.

Ev

LWN.net , 2014 yılında CoreOS'u gözden geçirdi: “  Büyük, dağıtılmış sistemleri bir araya getirenler için - en önemli örnek web uygulamaları - CoreOS'un birçok ilginç işlevi olduğu görülüyor. Bu türden uygulamaların taleple birlikte ihtiyaç duyulduğunda büyümesine ve küçülmesine izin vermeli ve ayrıca yükseltmelerin sürekli bir baş ağrısı olmadığı istikrarlı bir platform sağlamalıdır. "Büyük sunucu dağıtımları" için, CoreOS veya aynı özelliklerin çoğuna sahip bir şey geleceğe benziyor.  "

Ayrıca bakınız

Referanslar

  1. “  CoreOS Linux artık Container Linux'tur  ” , coreos.com ( 20 Aralık 2016'da erişildi )
  2. Libby Clark, "  Brandon Philips: CoreOS Linux Distro Cgrupları Nasıl Kullanır  " [ arşiv22 Şubat 2014] , Linux.com ,Eylül 9, 2013(erişim tarihi 13 Şubat 2014 )
  3. “  CoreOS - Linux tabanlı sunucu sistemlerine yeni bir yaklaşım  ” , itnews2day.com ,22 Ağu 2013( 26 Mart 2014'te erişildi )
  4. “  CoreOS belgeleri: CoreOS Kullanımı  ” , coreos.com ( 13 Şubat 2014'te erişildi )
  5. "  Geliştirme görüntüleri oluşturma: Gentoo'dan portage-stabil ebuild'leri güncelleme  " , coreos.com ( 24 Mayıs 2016'da erişildi )
  6. "  Gentoo tabanlı Dağıtımlar  " , gentoo.org ,Mart 25, 2016(erişim tarihi: 24 Mayıs 2016 )
  7. Brian Harrington, "  CoreOS: Anatomy of a CoreOS update  " , youtube.com , Rackspace,Temmuz 8, 2014( 25 Temmuz 2014'te erişildi )
  8. Alex Polvi, "  CoreOS Kararlı Sürüm  " , coreos.com ,25 Temmuz 2014( 28 Ağustos 2014'te erişildi )
  9. "  CoreOS Sürüm Notları  " , coreos.com ( 28 Ağustos 2014'te erişildi )
  10. Brandon Philips, "  etcd 2.0 Sürümü - İlk Büyük Kararlı Sürüm  " , coreos.com ,28 Ocak 2015(erişim tarihi 14 Haziran 2015 )
  11. Jonathan Corbet, Kaptan notlar  " , LWN.net ,29 Ekim 2007(erişim tarihi 3 Temmuz 2016 )
  12. Jake Edge, "  Kontrol grubu ad alanları  " , LWN.net ,Kasım 19, 2014(erişim tarihi 3 Temmuz 2016 )
  13. Libby Clark, "  Brandon Philips: CoreOS Linux Distro, cgrupları Nasıl Kullanır  " [ arşiv22 Şubat 2014] , Linux.com ,Eylül 9, 2013(erişim tarihi 13 Şubat 2014 )
  14. “  CoreOS belgeleri: Docker'ı CoreOS ile Kullanma  ” [ arşiv4 Ağu 2016] , coreos.com ( 14 Haziran 2015'te erişildi )
  15. "  Docker 0.9: Yürütme sürücüleri ve libcontainer'a giriş  " , docker.com ,Mart 10, 2014(erişim tarihi 20 Ocak 2015 )
  16. Libby Clark, "  CoreOS Kurucu Ortağı Alex Polvi Talks Containers, Rocket vs. Docker ve Daha Fazlası  ” , Linux.com ,30 Ocak 2015(erişim tarihi 14 Haziran 2015 )
  17. Charles Babcock, "  Rocket Containers: CoreOS Docker'a Meydan Okumayı Nasıl Planlıyor  " , informationweek.com ,20 Şubat 2015(erişim tarihi 14 Haziran 2015 )
  18. Alex Polvi, "  CoreOS bir konteyner çalışma zamanı , rkt oluşturuyor  " , coreos.com ,1 st Aralık 2014(erişim tarihi 14 Haziran 2015 )
  19. Josh Berkus , "  CoreOS'tan yeni etcd, appc ve Rocket sürümleri  " , LWN.net ,4 Şubat 2015(erişim tarihi 22 Haziran 2015 )
  20. Josh Berkus , "  CoreOS Fest ve konteynerlerin dünyası, bölüm 1  " , LWN.net ,13 Mayıs 2015(erişim tarihi 22 Haziran 2015 )
  21. Nathan Willis, "  The Rocket konteynırlaştırma sistemi  " , LWN.net ,3 Aralık 2014(erişim tarihi 22 Haziran 2015 )
  22. (içinde) Neil McAllister , Docker ve dostlar, yazılım kapsayıcıları için kuruluş standartlarını açıklıyor  " , The Register , 22 Haziran 2015( çevrimiçi okuyun , 19 Ocak 2017'de danışıldı )
  23. (inç) Frederic Lardinois , "  Docker CoreOS, Google, Microsoft, Amazon ve diğerleri ortak standart kapsayıcı geliştirmek için bir araya geliyor  " , TechCrunch ,22 Haziran 2015( çevrimiçi okuyun , 24 Haziran 2015'te danışıldı )
  24. "  Sektör Liderleri Açık Konteyner Standartlarına Yönelik Proje Oluşturmak İçin Birleşiyor  " [ archive of13 Ağu 2015] , opencontainers.org ,22 Haziran 2015(erişim tarihi 24 Haziran 2015 )
  25. Neil McAllister, "  Open Container Project yeniden adlandırma, standardın sadece birkaç hafta kaldığını söylüyor: Linux Foundation, Docker ve arkadaşları Open Container Initiative'i tercih ediyor  " , The Register ,22 Temmuz 2015(erişim tarihi 29 Ocak 2016 )
  26. "  CoreOS belgeleri: systemd'yi CoreOS ile kullanma  " [ arşiv14 Şubat 2014] , coreos.com ( 13 Şubat 2014'te erişildi )
  27. Mark Moudy, "  CoreOS + Docker Geliştirme Ortamı Demosu  " , github.com ,16 Mayıs 2014( 16 Nisan 2015'te erişildi )
  28. Timothy Prickett Morgan, "  CoreOS Hyperscales Linux By Through It Invisible  " , nextplatform.com ,15 Şubat 2015(erişim tarihi 14 Haziran 2015 )
  29. Phil Whelan, "  Alex Polvi CoreOS'u Açıklıyor  " [ arşivi24 Şubat 2015] , activestate.com ,Ağustos 28, 2013(erişim tarihi 7 Mayıs 2015 )
  30. Jonathan Corbet, "  Etcd ve filo  " , LWN.net ,22 Ekim 2014(erişim tarihi 22 Haziran 2015 )
  31. "  CoreOS belgeleri: CoreOS ile etcd kullanımı  " , coreos.com ( 13 Şubat 2014'te erişildi )
  32. “  CoreOS belgeleri: etcd ile başlarken  ” , coreos.com ( 13 Şubat 2014'te erişildi )
  33. Brandon Philips, "  etcd @ GoSF  " , speakerdeck.com ,15 Ocak 2014(erişim tarihi 13 Şubat 2014 )
  34. Ahşap, "  Konteyner düzenleme: Filodan Kubernetes'e geçiş  " , coreos..com , CoreOS
  35. Justin Ellingwood, "  CoreOS Kümenizi Yönetmek için Fleet ve Fleetctl Nasıl Kullanılır  " , digitalocean.com ,Eylül 12, 2014(erişim tarihi 22 Haziran 2015 )
  36. "  CoreOS belgeleri: Filolu konteynerlerin başlatılması  " , coreos.com ( 3 Nisan 2014'te erişildi )
  37. "  CoreOS belgeleri: İstemciyi kullanma  " , coreos.com ( 3 Nisan 2014'te erişildi )
  38. "  coreos / fleet: fleet / README.md at master  " , github.com ,18 Şubat 2014( 3 Nisan 2014'te erişildi )
  39. "  coreos / fleet: fleet / Documentation / deployment-and-configuration.md at master ( Deploy filo)  " , github.com ,14 Nisan 2015( 17 Nisan 2015'te erişildi )
  40. "  coreos / filo: filo / Dokümantasyon / api-v1.md (filo API v1)  " , github.com ,Ekim 29, 2014( 17 Nisan 2015'te erişildi )
  41. coreos / filo: usta filo / LİSANS  " , github.com , 6 Şubat 2014( 3 Nisan 2014'te erişildi )
  42. "  CoreOS belgeleri: CoreOS'u diske yükleme  " , coreos.com ( 13 Şubat 2014'te erişildi )
  43. "  CoreOS belgeleri: PXE aracılığıyla CoreOS'u Önyükleme  " , coreos.com ( 13 Şubat 2014'te erişildi )
  44. "  CoreOS belgeleri: iPXE aracılığıyla CoreOS'u Önyükleme  " , coreos.com ( 13 Şubat 2014'te erişildi )
  45. Alex Crawford, "  CoreOS Image Artık DigitalOcean'da Mevcut  " , coreos.com ,5 Eylül 2014(erişim tarihi 5 Eylül 2014 )
  46. Jack Clark, "  Google fütüristik Linux yazılımı CoreOS'u bulutuna getiriyor  " , The Register ,23 Mayıs 2014( 26 Mayıs 2014'te erişildi )
  47. Alex Crawford, "  CoreOS Artık Microsoft Azure'da Mevcut  " , coreos.com ,20 Ekim 2014( 22 Ekim 2014'te erişildi )
  48. (en) Steven J. Vaughan-Nichols , "  CoreOS, Google'ın Kubernetes'i Şirkete Getiriyor  " , ZDNet ,6 Nisan 2015( çevrimiçi okuyun , 29 Nisan 2015'te danışıldı )
  49. Eugene Yakubovich, "  Flannel Tanıtımı: Container'lar için etcd destekli bir overlay ağı  " , coreos.com ,Ağustos 28, 2014(erişim tarihi 22 Haziran 2015 )
  50. "  Docker için CoreOS Flannel'i kullanma eğitimi  " , slideshare.net ,Kasım 2014(erişim tarihi 22 Haziran 2015 )
  51. "  Üretimdeki en iyi konteyner düzenleme çözümü  " , kubernetes.io'da ( 3 Şubat 2020'de erişildi ) .
  52. "  Container, Docker, nasıl çalışıyor ve uygulamalarınızı barındırmak için ne gibi avantajlar gerekiyor? - Alfa-Safety  ” ( 3 Şubat 2020'de erişildi ) .
  53. "  Yapı ve OpenShift ile dağıtma Uygulamalarınız  " üzerine, Nexworld ,Eylül 15, 2017(erişim tarihi 3 Şubat 2020 ) .
  54. (in) Rosoff, "  Red Hat ülkesinde CoreOS için 250 milyon dolarlık Google tarafından geliştirilen teknolojiyi Satan girişimler var  " , CNBC ,30 Ocak 2018( 6 Haziran 2019'da erişildi )
  55. “  Fedora CoreOS, Red Hat CoreOS ve Container Linux'un geleceği | CoreOS  ” , coreos.com ( 6 Haziran 2019'da erişildi )
  56. CoreOS: Farklı bir Linux dağıtımı türü , LWN.net .

Dış bağlantılar