CoreOS

De Viquipèdia
Salta a: navegació, cerca
CoreOS
Coreos-wordmark-horiz-color.png
Coreos-wordmark-horiz-color.png
Empresa / Desenvolupador http://www.coreos.com
Família de SO Unix
Estat actual Versió estable i versió en desenvolupament
Versió estable

1097.0.0

/ 30 Juny 2016; fa 14 mesos (2016-06-30)
Tipus de nucli Modular Monolític
Llicència Apache 2.0
Lloc web https://coreos.com/releases/
Modifica dades a Wikidata

CoreOS és un sistema operatiu lleuger de codi obert basat en el nucli de Linux i desenvolupat per proporcionar la infraestructura per als desplegaments en clúster, seguidament, es centra en l'automatització, facilitat de desplegament d'aplicacions, seguretat, fiabilitat i escalabilitat. Com sistema operatiu, CoreOS ofereix només les funcionalitats mínimes necessaris per a la implementació d'aplicacions dins de contenidors de software, junt amb mecanismes incorporats per al descubriment de serveis i el intercanvi de configuració.[1][2][3][4]

CoreOS és una bifurcació de Chrome OS, entremig de la utilització del seu kit de desenvolupament de software (SDK) disponible sense cost a través de Chromium OS com a base, al mateix temps que afegeix noves funcionalitats i personalització per suportar el hardware utilitzat en servidors.[3][5] A partir de juliol de 2014, CoreOS se desenvolupa activament, sobretot per Alex Polvi, Brandon Phillips y Michael Marineau,[2] amb les seves característiques principals (excepte ETCD y fleet) disponibles com a una versió estable.[6][7][8]

Overview[modifica | modifica el codi]

CoreOS no proporciona un gestor de paquets, de manera que requereix que totes les aplicacions s'executin dins dels seus contenidors, utilitzant Docker i els seus contenidors Linux (LXC) subjacents de virtualització a nivell de sistema operatiu de tecnologia per a l'execució de múltiples sistemes Linux aïllats en un únic host de control (instància coreos). D'aquesta manera, la partició dels recursos es porta a terme a través de múltiples instàncies d'espais d'usuari aïllades, en lloc d'utilitzar un hipervisor i una màquina virtual. Aquest enfocament es basa en cgroups, funcionalitat del nucli de Linux que ofereix aïllament de l'espai de noms i habilitats per limitar, comptabilitzar i aïllar l'ús dels recursos (CPU, la memòria, disc I / O, etc.) d'un grup de processos.[1] [4] [9]

Distribució de actualitzacions[modifica | modifica el codi]

Per mayor seguretat y fiabilitat en actualitzacions, CoreOS empra FastPatch com a un esquema de doble partició només per a la seva lectura de sistema de archius arrel, el que significa que les actualitzacions del sistema operatiu es duen a terme en la seva totalitat i s'instal·len en una partició secundària passiva arrel, que s'activa al reiniciar o realitzant una execució de nucli (kexec). D'aquesta manera, reversions fàcils a la versió coneguda a-ser-estable del sistema operatiu també es va assegurar, i cada partició d'arrencada pot ser firmó per a la seguretat addicional. Parts gravables del sistema d'archius s'emmagatzemen en una partició "estat" independent, que es canvia de mida automàticament per ocupar tot l'espai disponible en disc en els reinicis.[1][4][10][11]

El sistema de distribució d'actualitzacions de CoreOS es basa en el projecte de codi obert de Google Omaha, que proporciona un mecanisme per al desdoblament de les actualitzacions i el protocol subjacent petició-resposta sobre la base de XML[12][13] A més, CoreOS ofereix CoreUpdate com a un dashboard basat en la web per a la gestió de les actualitzacions del clúster. Les operacions disponibles a través de CoreUpdate inclueixen l'assignació dels membres del cluster als diferents grups que comparteixen les polítiques d'actualització personalitzades, revisar les falles de tot el cluster en versions de CoreOS, detendre i reiniciar les actualitzacions, i la revisió dels registres d'actualització gravats. CoreUpdate també ofereix una API basada en HTTP que permet la seva integració en els serveis de tercers o sistemes de desdoblament.[10][14][15]

Infraestructura de Cluster[modifica | modifica el codi]

CoreOS ofereix ETCD, un dimoni, que s'executa en tots els equips en un clúster, permetent que les dades de configuració siguin fàcilment compartides, proporcionant un registre de configuració dinàmica. Ya que los datos clave-valor almacenados dentro de ETCD son automáticamente distribuidos y replicados (con elección de maestro automatizada), todos los cambios se reflejan en todo el clúster. Además de la gestión de configuración, ETCD también proporciona el descubrimiento de servicios al permitir aplicaciones desplegadas anunciarse a sí mismas. La comunicación con ETCD se realiza a través de una API simple, que utiliza internamente JSON en la parte superior de HTTP; la API se puede utilizar directamente (a través de curl , por ejemplo), o indirectamente a través de etcdctl , que es una utilidad de línea de comandos también suministrada por CoreOS.[1][4][16][17][18]

CoreOS también ofrece fleet, un demonio para la administración del clúster, que controla instancias systemd separadas de CoreOS a nivel del clúster. Mediante el uso de fleet, CoreOS crea un sistema d'inici distribuido que enlaza diferentes instancias de systemd y de despliegue ETCD en todo el clúster; internamente, fleet se comunica con systemd sobre D-Bus. Fleet permite tener contenedores simples o múltiples que se desplegarán en todo el clúster, con opciones más avanzadas incluyendo redundancia, failover, despliegue a miembros específicos del clúster, dependencias entre los contenedores, y el despliegue de contenedores agrupados. La utilidad de línea de comandos denominada fleetctl se utiliza para configurar y supervisar este sistema init distribuido; internamente, se comunica con el clúster ETCD. Cuando se utiliza de forma local en un miembro de clúster, fleetctl se comunica con la instancia local de ETCD; cuando se utiliza desde un host externo, el túnel SSH se utiliza con la autenticación proporcionada a través de clave SSH pública.[19][20][21][22]

Tanto etcd como fleet están escritos en el lenguaje de programación GO y distribuidas bajo la licencia de Apache 2.0

Despliegue[modifica | modifica el codi]

Además de ejecutar en hardware dedicado, donde puede ser tanto instalado en el disco permanentemente como ejecutado remotamente via PXE o iPXE,[23][24][25] CoreOS soporta despliegues en varias plataformas de virtualización de hardware, incluyendo Amazon EC2, DigitalOcean, Google Compute Engine, Microsoft Azure, OpenStack, QEMU / KVM, Vagrant y VMware.[4][26][27][28]

Notes[modifica | modifica el codi]

  1. 1,0 1,1 1,2 1,3 Libby Clark. «Brandon Philips: How the CoreOS Linux Distro Uses Cgroups». Linux.com, setembre 9, 2013.
  2. 2,0 2,1 Cade Metz. «Linux Hackers Rebuild Internet From Silicon Valley Garage». Wired, agost 21, 2013.
  3. 3,0 3,1 «CoreOS – a new approach to Linux-based server systems», agost 22, 2013.
  4. 4,0 4,1 4,2 4,3 4,4 «CoreOS documentation».
  5. Brian Harrington. «CoreOS: Anatomy of a CoreOS update». Rackspace, juliol 8, 2014.
  6. Alex Polvi. «CoreOS Stable Release», juliol 25, 2014.
  7. «CoreOS Release Notes».
  8. Blake Mizerany. «etcdPlantilla:Snd The Road to 1.0», abril 14, 2014.
  9. «coreos documentation».
  10. 10,0 10,1 «CoreOS documentation».
  11. «CoreOS documentation».
  12. «Omaha software installer and auto-updater for Windows».
  13. «Omaha Overview», setembre 23, 2009.
  14. «Package omaha», juny 24, 2014.
  15. «CoreOS documentation». [Consulta: juliol 4, 2014].
  16. «CoreOS documentation».
  17. «CoreOS documentation».
  18. Brandon Philips. «etcd @ GoSF», gener 15, 2014.
  19. «CoreOS documentation».
  20. «CoreOS documentation».
  21. «coreos/fleet», febrer 18, 2014.
  22. «coreos/fleet», març 7, 2014.
  23. «CoreOS documentation».
  24. «CoreOS documentation».
  25. «CoreOS documentation».
  26. Alex Crawford. «CoreOS Image Now Available On DigitalOcean», setembre 5, 2014.
  27. Jack Clark. «Google brings intercambiofuturistic Linux software CoreOS onto its cloud». The Register, maig 23, 2014.
  28. Alex Crawford. «CoreOS Now Available On Microsoft Azure», octubre 20, 2014.
A Wikimedia Commons hi ha contingut multimèdia relatiu a: CoreOS Modifica l'enllaç a Wikidata