Migrazione da Fedora Atomic Host (FAH) a Fedora CoreOS (FCOS)

Panoramica

[Fedora Atomic Host](https://www.projectatomic.io/) era un sistema per distribuire applicazioni nei container. Gli utenti esistenti di FAH sono incoraggiati a migrare a FCOS, poiché il progetto ha raggiunto la fine del suo ciclo di vita.

FAH utilizzava cloud-init per il provisioning, il che richiedeva agli utenti di fornire un file cloud-config come userdata per la configurazione dell’istanza. Poiché FCOS Ignition e cloud-init sono diversi e hanno set di funzionalità sovrapposti, non è facile convertire file cloud-init in Ignition. Attualmente, non esiste uno strumento per questa conversione, quindi è necessario convertire manualmente le configurazioni cloud-init in configurazioni Butane. Consulta la [Specifica Butane](https://coreos.github.io/butane/specs/) per una spiegazione delle opzioni di configurazione disponibili.

Conversione di userdata cloud-init e cloud-config

I seguenti esempi mostrano la differenza tra i dati utente FAH e la configurazione utente con Butane.

Example of FAH userdata file:
#cloud-config
password: atomic
ssh_pwauth: True
chpasswd: { expire: False }

ssh_authorized_keys:
  - ssh-rsa ...

This can be manually translated into a passwd node within the Butane config:

Example of users:
variant: fcos
versione: 1.6.0
passwd:
  utenti:
    - nome: core
      hash_password: "$6$5s2u6/jR$un0AvWnqilcgaNB3Mkxd5yYv6mTlWfOoCYHZmfi3LDKVltj.E8XNKEcwWm..."
      chiavi_ssh_autorizzate:
        - "ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQDGdByTgSVHq......."
      gruppi: [ sudo, docker ]
Fedora CoreOS disables password login over SSH by default. It is strongly recommended to only use key authentication. Setting passwords can be useful however for logging into the console directly.

Converting storage definitions

With FAH, you could configure additional storage for the system with either cloud-init or docker-storage-setup via the /etc/sysconfig/docker-storage-setup file. With FCOS, you should configure additional storage at provisioning time via Ignition in the storage node of the Butane config.