Provisionando Fedora CoreOS no QEMU

Este guia mostra como provisionar novas instâncias do Fedora CoreOS (FCOS) em um hipervisor QEMU vazio.

Pré-Requisitos

Antes de provisionar uma máquina FCOS, você deve ter um arquivo de configuração do Ignition contendo suas personalizações. Se você não tiver um, consulte Produzindo um arquivo de Ignition.

You also need to have access to a host machine with KVM support. The examples below use the qemu-kvm command-line tool, which must be separately installed beforehand.

Se estiver executando com o SELinux habilitado, certifique-se de que a imagem do sistema operacional e o arquivo Ignition estejam rotulados como svirt_home_t, por exemplo, colocando-os em`~/.local/share/libvirt/images/`.

Inicializando uma nova VM no QEMU

Esta seção mostra como inicializar uma nova VM no QEMU. Nesta plataforma, o arquivo Ignition é passado para a VM por meio do parâmetro -fw_cfg, que define a chave`opt/com.coreos/config` no dispositivo de configuração do firmware QEMU.

Você pode usar -snapshot para fazer` qemu-kvm` alocar armazenamento temporário para a VM, ou qemu-img create para primeiro criar um qcow2 em camadas.

Obtendo a imagem QCOW2

Obtenha a imagem mais recente adequada para o seu fluxo alvo (ou baixe e verifique na web).

STREAM="stable"
coreos-installer download -s "${STREAM}" -p qemu -f qcow2.xz --decompress -C ~/.local/share/libvirt/images/

Configurando uma nova VM

Inicie a nova VM usando qemu-kvm.

In snapshot mode, all changes that are performed live after boot are discarded once the machine is powered off. If you need to persist your changes, it is recommended to set up a dedicated persistent disk first.

Iniciando FCOS com QEMU (armazenamento temporário)
qemu-kvm -m 2048 -cpu host -nographic -snapshot \
	-drive if=virtio,file=fedora-coreos-qemu.qcow2 \
	-fw_cfg name=opt/com.coreos/config,file=caminho/para/exemplo.ign \
	-nic user,model=virtio,hostfwd=tcp::2222-:22
Iniciando FCOS com QEMU (armazenamento persistente)
qemu-img create -f qcow2 -F qcow2 -b fedora-coreos-qemu.qcow2 my-fcos-vm.qcow2
qemu-kvm -m 2048 -cpu host -nographic \
	-drive if=virtio,file=my-fcos-vm.qcow2 \
	-fw_cfg name=opt/com.coreos/config,file=path/to/example.ign \
	-nic user,model=virtio,hostfwd=tcp::2222-:22

Explorando o sistema operacional

Com a rede do QEMU em modo de usuário, o endereço IP atribuído não pode ser acessado do host.

Os exemplos acima usam hostfwd para encaminhar seletivamente a porta SSH na máquina convidada para o host local (porta 2222).

Se você configurar um chave SSH para o usuário core padrão, poderá usar o SSH na VM por meio da porta encaminhada:

ssh -p 2222 core@localhost