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 Butane configs. Refer to Butane 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 Butane.
#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:
variant: fcos
version: 1.5.0
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 Butane config.
Want to help? Learn how to contribute to Fedora Docs ›