Migración de CoreOS Container Linux (CL) a Fedora CoreOS (FCOS)

Fedora CoreOS es el sucesor oficial de CoreOS Container Linux, que llegó al final de su vida útil el 26 de mayo de 2020. Esta página intenta documentar las diferencias entre CL y FCOS para facilitar la transición a FCOS.

Introducción

Para migrar de CL a FCOS, debe convertir sus antiguas configuraciones de Container Linux, Ignition o archivos cloud-config a un archivo Butane config y adaptar el contenido para FCOS. Dado que muchos detalles de configuración han cambiado, le recomendamos consultar esta página y el problema de migración de CL en GitHub.

Cambios en la instalación

Se han realizado los siguientes cambios en el proceso de instalación:

  • El script coreos-install ha sido sustituido por el coreos-installer. Esto ofrece funcionalidad similar.

  • El parámetro de línea de comando del kernel coreos.autologin no está admitido actualmente en FCOS. Para acceder con propósito de recuperación, hay instrucciones disponibles aquí.

  • Ciertas plataformas CL, como Vagrant, aún no son compatibles con FCOS. Consulte la página de Descarga para ver los tipos disponibles de la imagen.

Cambios del paquete de software

  • etcd no se incluye en FCOS. Refiera a Ejecución etcd para instrucciones para ejecutarlo como un contenedor en FCOS.

  • flannel no está incluido en FCOS.

  • El contenedor de Podman en tiempo de ejecución está incluido en FCOS y es el contenedor recomendado en tiempo de ejecución. El contenedor rkt en tiempo de ejecución no está incluido.

  • FCOS no tiene un mecanismo recomendado para seleccionar la versión de docker.

  • La configuración de red ahora es manipulada por NetworkManager en lugar de systemd-networkd.

  • Para la sincronización horaria, utilice chronyd en lugar de ntpd o systemd-timesyncd.

  • Las actualizaciones automáticas ahora están coordinadas por la Zincati, como se describe en el documentación de Zincati. El mecanismo de reversión (a través de grub) ahora lo proporciona rpm-ostree.

  • La funcionalidad del gestor de reinicio (locksmith) está implementada en Zincati.

  • La herramienta update-ssh-keys no se proporciona en FCOS. sshd utiliza un programa auxiliar para leer archivos de clave directamente desde ~/.ssh/authorized_keys.d.

Cambios en la configuración

Cuando escriba las configuraciones de Butane, note los cambios siguientes:

  • Ahora coreos-metadata es Afterburn. El prefijo de los nombres de la variable metadatos ha cambiado desde COREOS_ a AFTERBURN_, y han cambiado los nombres de la plataforma seguida:

  • De forma predeterminada, FCOS no permite el inicio de sesión con contraseña mediante SSH. Recomendamos configurar claves SSH. Si es necesario, puede habilitar la autenticación con contraseña SSH.

  • Dado que usermod aún no es totalmente funcional en FCOS, existe un grupo «docker» en el archivo /etc/group. Se trata de una medida provisional para facilitar una transición fluida a FCOS. El equipo está trabajando en un usermod más funcional, momento en el que el grupo docker dejará de estar incluido por defecto. Consulte el en asunto del grupo docker.

  • No es posible crear directorios debajo del directorio /. Los cambios están restringidos a /etc y /var. Consulte la documentación del nodo storage de la configuración de Butane para obtener los detalles acerca de escribir directorios y archivos en FCOS.

  • Las configuración de butane no tienen más una sección separada para la configuración de red. Utilice la sección de archivos files de Butane para escribir en su lugar una clave de archivo de NetworkManager.

Notas de operador

  • FCOS proporciona estabilidad de mejor esfuerzo, y ocasionalmente incluye regresiones o cambios importantes para algunos casos de uso o cargas de trabajo.

  • CL tenía tres canales de lanzamiento: alpha, beta, y stable. La producción de FCOS flujos de lanzamiento son next, testing, y stable, con una semántica algo diferente.

  • En general, el confinamiento de SELinux funcionaría de la misma manera que en Fedora.

  • Para implementar una configuración de Ignition como parte de una imagen PXE (un «OEM personalizado» en la terminología de CL), siga las instrucciones de mismo proceso como en CL, pero coloque el archivo config.ign en la raíz del archivador.

  • En CL, los datos métricos/telemétricos se recopilaban mediante el mecanismo de actualización. En FCOS, los nodos se cuentan (sin identificadores únicos) mediante el mecanismo Count Me.

  • Los clientes Cloud CLI no son incluidos en FCOS. Hay una iniciativa para crear un contenedor "toots" (herramientas) a ejecutar en FCOS.

  • Cuando abra un archivo existente dentro del directorio pinchado, el comportamiento difiere desde el CL. Consulte la confirmación systemd relevante.

  • CL dejó habilitada la tecnología Simultaneous Multi–Hilo (SMT), pero recomendó a los usuarios que la desactivaran si sus sistemas eran vulnerables a determinados problemas, como L1TF o MDS. De forma predeterminada, FCOS inactiva SMT automáticamente para sistemas vulnerables.

  • En general, docker utiliza la configuración predeterminada de Fedora, lo cual difiere en muchos aspectos. En particular, el controlador de bitácora está configurado en journald y la restauración en vivo está habilitada.

Notas de implementación

  • El sistema de archivos predeterminado en CL era ext4. En FCOS, el predeterminado es xfs.

  • Mientras que CL utilizó la activación del socket systemd para sshd, FCOS inicia sshd al inicio de manera predeterminada.

  • CL tenía una "partición OEM" en /usr/share/oem con una configuración GRUB personalizable por el usuario y algunas herramientas adicionales, pero FCOS no la tiene.