Contenedor Linux

La versión actual de la página aún no ha sido revisada por colaboradores experimentados y puede diferir significativamente de la versión revisada el 7 de abril de 2021; las comprobaciones requieren 5 ediciones .
Contenedor Linux
Desarrollador Equipo de CoreOS, Red Hat
familia de sistemas operativos linux
Residencia en GentooLinux
Fuente abierto
Primera edición 3 de octubre de 2013
ultima versión 2512.3.0 [1]  ( 22 de mayo de 2020 )
Última versión de prueba 2513.2.0 [2] (Beta) ( 22 de mayo de 2020 )
2514.1.0 [3] (Alfa) ( 22 de mayo de 2020 )
Plataformas compatibles x86_64
tipo de núcleo monolítico ( núcleo de Linux )
Licencia Licencia Apache 2.0 [4] [5]
Estado Proyecto cerrado
próximo Fedora Core OS
RHEL Core OS
Sitio web coreos.com
 Archivos multimedia en Wikimedia Commons

Container Linux (anteriormente CoreOS Linux) es un sistema operativo  ligero de código abierto basado en el kernel de Linux . Diseñado para crear una infraestructura de clústeres informáticos , se presta especial atención a la automatización, la simplificación de la implementación de aplicaciones, la seguridad, la fiabilidad y la escalabilidad. Como sistema operativo, Container Linux proporciona solo la funcionalidad mínima necesaria para implementar aplicaciones dentro de contenedores de software , descubrimiento de servicios y paso de configuración [6] [7] [8] [9] .

Container Linux es una bifurcación de Chrome OS . La base de Container Linux se creó utilizando el SDK del proyecto Chromium OS , al que se le han añadido nuevas funcionalidades. Container Linux admite hardware comúnmente utilizado en servidores [8] [10] . A partir de 2020, se suspendió el desarrollo de Container Linux.

Características

Container Linux no tiene un administrador de paquetes , todas las aplicaciones instaladas deben ejecutarse dentro de sus propios contenedores, que se implementan utilizando Docker basado en Linux Containers (LXC). LXC le permite virtualizar múltiples contenedores Linux independientes dentro de una sola máquina Linux . El intercambio de recursos se realiza entre múltiples programas de nivel de usuario sin el uso de hipervisores y máquinas virtuales completas . La implementación utiliza el subsistema kernel cgroups para aislar, contabilizar y limitar los recursos (cpu, memoria, uso de E/S de disco y red, etc.) para un grupo de procesos [6] [9] [11] .

El demonio de inicialización ( init ) en Container Linux es systemd , que está estrechamente integrado con los servicios de Container Linux [6] [12] .

Actualizaciones

Como medida de seguridad y confiabilidad, Container Linux utiliza FastPatch  , un esquema con dos sistemas de archivos raíz , uno de los cuales está activo y protegido contra escritura. Las actualizaciones se instalan en el segundo sistema de archivos, que se vuelve operativo después de reiniciar o ejecutar kexec . Esto garantiza que pueda volver rápidamente a una versión anterior. Cada sección se puede firmar criptográficamente para mayor seguridad. La parte mutable de la jerarquía de archivos se almacena en la partición "estado", que ocupa todo el espacio restante en el disco [6] [9] [13] [14] .

El sistema de distribución de actualizaciones de Container Linux se basa en el proyecto de código abierto Google Omaha . Para administrar las actualizaciones del clúster, Container Linux proporciona la interfaz web CoreUpdate , que le permite dividir los nodos del clúster en grupos con diferentes políticas de actualización, proporciona estadísticas de versión y distribuye actualizaciones [13] [15] [16] .

Infraestructura para clusters

Cada máquina en el clúster ejecuta el demonio etcd , que le permite actualizar la configuración del nodo. La interacción con etcd se lleva a cabo utilizando la API basada en JSON y el protocolo HTTP, o mediante la utilidad de línea de comandos etcdctl [6] [9] [17] [18] [19] .

El demonio de la flota administra los programas systemd a nivel de clúster. La interacción con él se lleva a cabo mediante la utilidad Fleetctl . Los datos entre nodos se transfieren a través de túneles SSH [20] [21] [22] [23] .

Tanto el etcd como los demonios de flota están escritos en Golang (Go) y se distribuyen bajo la licencia de código abierto Apache 2.0 [5] [24] .

Instalación

Container Linux puede instalarse permanentemente en el disco duro del servidor, iniciarse a través de PXE o iPXE [25] [26] [27] . Container Linux también admite la instalación en sistemas de virtualización de hardware como Amazon EC2 , DigitalOcean , Google Compute Engine , OpenStack , QEMU / KVM , Vagrant , VMware [9] [28] [29] .

Opiniones

LWN.net escribió una reseña sobre CoreOS en 2014 [30] :

Para aquellos que crean grandes sistemas operativos (las aplicaciones web son un buen ejemplo), parece que CoreOS tendrá muchas funciones interesantes. Esto debería permitir que este tipo de aplicaciones crezcan y se reduzcan según sea necesario según la demanda, así como proporcionar una plataforma estable donde las actualizaciones no sean un dolor de cabeza. Para la "compilación masiva de servidores", CoreOS, o algo con muchas de las mismas características, parece el futuro.

Véase también

Notas

  1. Notas de la versión de CoreOS Container Linux # Canal estable (enlace descendente) . Consultado el 22 de mayo de 2020. Archivado desde el original el 11 de noviembre de 2020. 
  2. CoreOS Container Linux Release Notes # Canal beta (enlace descendente) . Consultado el 22 de mayo de 2020. Archivado desde el original el 11 de noviembre de 2020. 
  3. Notas de la versión de CoreOS Container Linux # Canal alfa (enlace descendente) . Consultado el 22 de mayo de 2020. Archivado desde el original el 11 de noviembre de 2020. 
  4. Acuerdo piloto de CoreOS (enlace descendente) . coreos.com (13 de marzo de 2014). Consultado el 26 de marzo de 2014. Archivado desde el original el 12 de septiembre de 2014. 
  5. 1 2 coreos/etcd: etcd/LICENCIA en master . github.com (31 de julio de 2013). Consultado el 26 de marzo de 2014. Archivado desde el original el 24 de septiembre de 2019.
  6. 1 2 3 4 5 Libby Clark. Brandon Philips: cómo la distribución CoreOS Linux utiliza Cgroups (enlace no disponible) . Linux.com (9 de septiembre de 2013). Consultado el 13 de febrero de 2014. Archivado desde el original el 22 de febrero de 2014. 
  7. Cade Metz. Los piratas informáticos de Linux reconstruyen Internet desde el garaje de Silicon Valley . Por cable (21 de agosto de 2013). Consultado el 13 de febrero de 2014. Archivado desde el original el 15 de febrero de 2014.
  8. 1 2 CoreOS: un nuevo enfoque para los sistemas de servidor basados ​​en Linux . itnews2day.com (22 de agosto de 2013). Consultado el 26 de marzo de 2014. Archivado desde el original el 29 de noviembre de 2014.
  9. 1 2 3 4 5 Documentación de CoreOS: Uso de CoreOS . coreos.com . Consultado el 13 de febrero de 2014. Archivado desde el original el 23 de febrero de 2014.
  10. Brian Harington. CoreOS: Anatomía de una actualización de CoreOS . youtube.com . Rackspace (8 de julio de 2014). Consultado el 25 de julio de 2014. Archivado desde el original el 4 de diciembre de 2015.
  11. Documentación de CoreOS (enlace descendente) . coreos.com . Consultado el 13 de febrero de 2014. Archivado desde el original el 14 de febrero de 2014. 
  12. Documentación de CoreOS (enlace descendente) . coreos.com . Consultado el 13 de febrero de 2014. Archivado desde el original el 14 de febrero de 2014. 
  13. 12 Documentación de CoreOS . coreos.com . Consultado el 13 de febrero de 2014. Archivado desde el original el 14 de febrero de 2014.
  14. Documentación de CoreOS . coreos.com . Consultado el 13 de febrero de 2014. Archivado desde el original el 23 de febrero de 2014.
  15. Paquete omaha . godoc.org (24 de junio de 2014). Fecha de acceso: 4 de julio de 2014. Archivado desde el original el 14 de julio de 2014.
  16. Documentación de CoreOS . coreos.com . Consultado el 4 de julio de 2014. Archivado desde el original el 3 de julio de 2014.
  17. Documentación de CoreOS . coreos.com . Consultado el 13 de febrero de 2014. Archivado desde el original el 14 de febrero de 2014.
  18. Documentación de CoreOS . coreos.com . Consultado el 13 de febrero de 2014. Archivado desde el original el 18 de febrero de 2014.
  19. Brandon Phillips. etcd@GoSF . speakerdeck.com (15 de enero de 2014). Consultado el 13 de febrero de 2014. Archivado desde el original el 25 de febrero de 2014.
  20. Documentación de CoreOS . coreos.com . Consultado el 3 de abril de 2014. Archivado desde el original el 7 de abril de 2014.
  21. Documentación de CoreOS . coreos.com . Consultado el 3 de abril de 2014. Archivado desde el original el 7 de abril de 2014.
  22. núcleos/flota . github.com (18 de febrero de 2014). Consultado: 3 de abril de 2014.
  23. núcleos/flota . github.com (7 de marzo de 2014). Recuperado: 3 de abril de 2014.  (enlace inaccesible)
  24. núcleos/flota . github.com (6 de febrero de 2014). Consultado: 3 de abril de 2014.
  25. Documentación de CoreOS . coreos.com . Consultado el 13 de febrero de 2014. Archivado desde el original el 23 de febrero de 2014.
  26. Documentación de CoreOS . coreos.com . Consultado el 13 de febrero de 2014. Archivado desde el original el 14 de febrero de 2014.
  27. Documentación de CoreOS . coreos.com . Consultado el 13 de febrero de 2014. Archivado desde el original el 23 de febrero de 2014.
  28. Alex Crawford. La imagen de CoreOS ya está disponible en DigitalOcean . coreos.com (5 de septiembre de 2014). Consultado el 5 de septiembre de 2014. Archivado desde el original el 5 de septiembre de 2014.
  29. JackClark. Google trae el software futurista de Linux CoreOS a su nube . El Registro (23 de mayo de 2014). Consultado el 26 de mayo de 2014. Archivado desde el original el 26 de mayo de 2014.
  30. CoreOS: un tipo diferente de distribución de Linux [LWN.net] . Consultado el 21 de junio de 2018. Archivado desde el original el 21 de junio de 2018.

Enlaces