Guide de démarrage avec Fedora CoreOS

Introduction

Flux de mise à jour

Trois flux de mise à jour sont disponibles pour Fedora CoreOS (FCOS) : stable, testing, et next. Généralement, nous conseillons d’utiliser le flux stable, mais il est recommandé de faire fonctionner quelques systèmes avec les flux testing et next.

Each stream has a canonical URL representing its current state in JSON format. For example, the URL for the stable stream is: https://builds.coreos.fedoraproject.org/streams/stable.json

While Fedora CoreOS does automatic in-place updates, it is generally a good practice to start provisioning new machines from the latest images. The format of this JSON file is stable, and you can parse it to e.g. find the latest ISO/AMI/etc.

Pour plus d’informations à propos des flux et comment changer de flux, voir Flux de mise à jour.

Philosophie concernant le provisionnement

Fedora CoreOS ne dispose pas d’un media d’installation distinct. A la place, chaque instance démarre à partir d’une image disque générique qui est personnalisée lors du premier démarrage via Ignition.

Chaque platforme a sa propre logique pour récupérer et appliquer la configuration pour le premier démarrage. Pour les déploiements dans le cloud, Ignition récupère la configuration en utilisant le mécanisme d'`user-data`. Pour les installations sur machine physique, Ignition peut récupérer la configuration depuis le disque ou depuis une source distante.

Pour plus d’informations sur la configuration, reportez-vous à la documentation pour Créer un fichier pour Ignition.

Démarrage rapide

Démarrer une machine virtuelle dans le cloud (exemple avec AWS)

New AWS instances can be directly created and booted from public FCOS images. You can find the latest AMI for each region from the Update Streams, which is also visualized in the download page.

If you are only interested in exploring FCOS without further customization, you can directly use a registered SSH key-pair for the default core user.

In order to test out FCOS this way, simply select the relevant SSH key-pair via --key-name when launching the new instance:

Launching a new instance
SSH_KEY_NAME="my-key"
aws ec2 run-instances <other options> --image-id <ami> --key-name "${SSH_KEY_NAME}"

In order to launch a customized FCOS instance, a valid Ignition configuration must be passed as its user data at creation time:

Launching and customizing a new instance
aws ec2 run-instances <other options> --image-id <ami> --user-data file://example.ign
By design, cloud-init configuration and startup scripts are not supported on FCOS. Instead, it is recommended to encode any startup logic as systemd service units in the Ignition configuration.

Démarrer une machine virtuelle avec un hyperviseur local (exemple avec libvirt)

  1. Fetch the latest image suitable for the qemu platform (or download and verify it from the web).

    STREAM="stable"
    coreos-installer download -s "${STREAM}" -p qemu -f qcow2.xz --decompress -C ~/.local/share/libvirt/images/
  2. Launch a new machine via virt-install, using the Ignition file with your customizations.

    IGNITION_CONFIG="/path/to/example.ign"
    IMAGE="/path/to/image.qcow2"
    VM_NAME="fcos-test-01"
    RAM_MB="2048"
    DISK_GB="10"
    
    virt-install --connect qemu:///system -n "${VM_NAME}" -r "${RAM_MB}" --os-variant=fedora32 \
            --import --graphics=none --disk "size=${DISK_GB},backing_store=${IMAGE}" \
            --qemu-commandline="-fw_cfg name=opt/com.coreos/config,file=${IGNITION_CONFIG}"
virt-install requires both the OS image and Ignition file to be specified as absolute paths.
Depending on your version of virt-install, you may not be able to use --os-variant=fedora32 and will get an error. In this case, you should pick an older Fedora variant (--os-variant=fedora31 or --os-variant=fedora30 for example). You can find the variants that are supported by you current version of virt-install with osinfo-query os | grep "fedora[2-3][0-9]".
Make sure that your user has access to /dev/kvm. On most modern distribution, this means adding yourself to the kvm group.

Exploration du système

Une fois que la machine virtuelle a finie de démarrer, son adresse IP apparaîtra sur la console série. Par conception, il n’y a pas de mot de passe ou compte pré-défini.

Si vous avez défini une clé SSH pour le compte utilisateur nommé par défaut core, vous pouvez vous connecter via SSH à la machine virtuelle et explorer le système :

ssh core@<adresse ip>

Contacter l’équipe

Les bugs peuvent être rapportés sur le tableau de suivi de Fedora CoreOS.

Pour poser des questions en directe, sentez-vous libre d’utiliser le canal IRC #fedora-coreos sur Freenode.

Si vous avez des doutes ou souhaitez avoir une discussion plus poussé autour de Fedora CoreOS, un espace de discussion et une list de diffusion sont disponibles.