Referencia de imagen ISO y PXE en tiempo real

Para obtener una introducción sobre como ejecutar Fedora CoreOS directamente desde RAM, consulte la guía de aprovisionamiento.

Pasando el rootfs PXE a una máquina

La imagen de Fedora CoreOS PXE incluye tres componentes: un kernel, un initramfs, y un rootfs. Todos los tres son obligatorios y el entorno de PXE vivo no arrancará sin ellos.

Hay varias formas de pasar el rootfs a una máquina:

  • Especifique únicamente el archivo initramfs como initrd en su configuración PXE, y pase una URL HTTP(S) o TFTP para rootfs mediante el argumento de kernel coreos.live.rootfs_url=. Este método requiere 2 GiB de RAM y es la opción recomendada a menos que tenga requisitos especiales.

  • Especifica ambos archivos initramfs y rootfs como initrd en su configuración PXE. Esto puede realizarse vía múltiples directivas initrd, o utilizando parámetros opcionales initrd= como argumentos del kernel. Este métido es más lento que el primer método y requiere 4 GiB de RAM.

  • Concatene juntos los archivos initramfs y rootfs y especifique el archivo combinado como el initrd. Este método es más lento y requiere 4 GiB de RAM.

Pasar una configuración de Ignition a un sistema PXE en vivo

Al arrancar Fedora CoreOS mediante PXE en vivo, la línea de comandos del kernel debe incluir los argumentos ignition.firstboot ignition.platform.id=metal para ejecutar Ignition. Si se ejecuta en una máquina virtual, reemplace metal por el ID de plataforma correspondiente a su plataforma, como qemu o vmware.

Hay varias maneras de pasar una configuración Ignition cuando arranquen Fedora CoreOS por medio de PXE:

  • Añada ignition.config.url=<config-url> a la línea de instrucción del kernel. Los esquemas admitidos de URL incluyen http, https, tftp, s3, y gs.

  • Si se ejecuta virtualizado, pase la configuración de Ignition a través del hipervisor, tal como lo haría al arrancar desde una imagen de disco. Asegúrese que el argumento del kernel ignition.platform.id esté puesto en el ID de plataforma para su plataforma.

  • Generar una versión adaptada del initramfs conteniendo tu configuración de Ignition utilizando coreos-installer pxe customize. Por ejemplo, ejecuta:

    coreos-installer pxe customize --live-ignition config.ign -o custom-initramfs.img \
        fedora-coreos-43.20260217.3.1-live-initramfs.x86_64.img
  • Si prefiere conservar la configuración de Ignition separada desde la imagen initramfs de Fedora CoreOS, genere un initrd separado con el nivel bajo del comando coreos-installer pxe ignition wrap y pásalo como un initrd adicional. Por ejemplo, ejecute:

    coreos-installer pxe ignition wrap -i config.ign -o ignition.img

    y luego use una línea APPEND de PXELINUX similar a:

    APPEND initrd=fedora-coreos-43.20260217.3.1-live-initramfs.x86_64.img,fedora-coreos-43.20260217.3.1-live-rootfs.x86_64.img,ignition.img ignition.firstboot ignition.platform.id=metal

Pasar la configuración de red a un sistema ISO o PXE en vivo

En Fedora CoreOS, la red se configura normalmente mediante Archivos de claves de NetworkManager. Si su red requiere una configuración especial, como direcciones IP estáticas, y la configuración de Ignition obtiene recursos de la red, no puede simplemente incluir esos archivos de claves en la configuración de Ignition, ya que esto crearía una dependencia circular.

En su lugar, puede utilizar coreos-installer iso customize o coreos-installer pxe customize con la opción --network-keyfile para crear una imagen ISO personalizada o una imagen PXE initramfs que aplique sus ajustes de red antes de ejecutar Ignition. Por ejemplo:

coreos-installer iso customize --network-keyfile custom.nmconnection -o custom.iso \
    fedora-coreos-43.20260217.3.1-live.x86_64.iso

Si está iniciando PXE y desea mantener sus ajustes de la red separada desde la imagen initramfs de Fedora CoreOS, también puede usar el comando coreos-installer pxe network wrap bajo nivel para crear una imagen initrd independiente, y pasar esa como un initrd adicional. Por ejemplo, ejecute:

coreos-installer pxe network wrap -k custom.nmconnection -o network.img

y luego use una línea APPEND de PXELINUX similar a:

APPEND initrd=fedora-coreos-43.20260217.3.1-live-initramfs.x86_64.img,fedora-coreos-43.20260217.3.1-live-rootfs.x86_64.img,network.img ignition.firstboot ignition.platform.id=metal

Aprueba argumentos del kernel a un sistema ISO vivo

Si desea modificar los argumentos del kernel por defecto de un sistema ISO vivo, puedes utilizar las opciones de --live-karg-{append,replace,delete} a coreos-installer iso customize. Por ejemplo, si deseas habilitar multihilos simultáneos (SMT) incluso en las CPU donde eso es inseguro, puedes ejecutar:

coreos-installer iso customize --live-karg-delete mitigations=auto,nosmt -o custom.iso \
    fedora-coreos-43.20260217.3.1-live.x86_64.iso

Extraer artefactos de PXE desde una imagen ISO viva

Si deseas los artefactos de Fedora CoreOS PXE y ya tiene una imagen ISO, puedes extraer los artefactos PXE desde ello:

podman run --security-opt label=disable --pull=always --rm -v .:/data -w /data \
    quay.io/coreos/coreos-installer:release iso extract pxe \
    fedora-coreos-43.20260217.3.1-live.x86_64.iso

El comando declarará las rutas a los artefactos que extrajo.

Utilizar la imagen ISO mínima

En algunos casos, puede que desee arrancar la imagen ISO de Fedora CoreOS en una máquina equipada con hardware Lights-Out Management (LOM). Puede subir la ISO al controlador LOM como una imagen de CD virtual, pero podría ser más grande de lo que admite el controlador LOM.

Para evitar este problema, puedes convertir la imagen ISO a una imagen ISO mínima más pequeña sin el archivo rootfs. Al igual que con la imagen PXE, la imagen ISO mínima debe obtener el archivo rootfs de la red durante el arranque.

Supongamos que planea alojar la imagen rootfs en https://example.com/fedora-coreos-43.20260217.3.1-live-rootfs.x86_64.img. Este comando extraerá una imagen ISO mínima y un rootfs de una imagen ISO, integrando un argumento de kernel coreos.live.rootfs_url con la URL correcta:

podman run --security-opt label=disable --pull=always --rm -v .:/data -w /data \
    quay.io/coreos/coreos-installer:release iso extract minimal-iso \
    --output-rootfs fedora-coreos-43.20260217.3.1-live-rootfs.x86_64.img \
    --rootfs-url https://example.com/fedora-coreos-43.20260217.3.1-live-rootfs.x86_64.img \
    fedora-coreos-43.20260217.3.1-live.x86_64.iso \
    fedora-coreos-43.20260217.3.1-live-minimal.x86_64.iso