Migrating from Fedora Atomic Host (FAH) to Fedora CoreOS (FCOS)
Overview
Fedora Atomic Host was a system to deploy applications in containers. Existing FAH users are encouraged to migrate to FCOS, as the project has reached its end-of-life.
FAH used cloud-init
for provisioning, which required users to provide a
cloud-config
file as userdata for configuration of the instance. Since
FCOS Ignition and cloud-init
are different and have overlapping feature
sets, it is not trivial to convert cloud-init
files to
Ignition. Currently, there is no tool for this conversion, so you must
manually convert cloud-init
configs to Fedora CoreOS configs. Refer to
FCCT Specification for an explanation of the
available configuration options.
Converting cloud-init
and cloud-config
userdata
The following examples show the difference between FAH userdata and user configuration with FCC.
#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 FCC file:
passwd:
users:
- name: core
password_hash: "$6$5s2u6/jR$un0AvWnqilcgaNB3Mkxd5yYv6mTlWfOoCYHZmfi3LDKVltj.E8XNKEcwWm..."
ssh_authorized_keys:
- "ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQDGdByTgSVHq......."
groups: [ 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 FCC file.