在QEMU上配置Fedora CoreOS

本指南介绍如何在裸机上配置新的Fedora CoreOS(FCOS)实例 QEMU 管理程序。

先决条件

在配置FCOS计算机之前,您必须具有包含自定义设置的Ignition配置文件。如果您没有,请参见 生成Ignition文件

您还需要具有访问主机的权限 KVM 支持。下面的示例使用 qemu-kvm 命令行工具,必须事先单独安装。

如果在启用了SELinux的情况下运行,请确保您的操作系统映像和Ignition文件被标记为 svirt_home_t ,例如,将它们放在 ~/.local/share/libvirt/images/

在QEMU上引导新的虚拟机

本节介绍如何在QEMU上引导新的VM。在此平台上,Ignition文件通过 -fw_cfg 参数,该参数设置 opt/com.coreos/config 输入QEMU固件配置设备。

您可以使用 -snapshot 使 qemu-kvm 为虚拟机分配临时存储,或 qemu-img create 首先创建一个分层的qco2。

获取QCOW2镜像

获取适合您的目标流的最新图像(或 下载并验证 它来自网络)。

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

设置新的虚拟机

使用以下命令启动新的虚拟机 qemu-kvm

在快照模式下,一旦关闭计算机电源,在引导后实时执行的所有更改都将被丢弃。 如果您需要持久化您的更改,建议首先设置一个专用的持久化磁盘。

使用QEMU启动FCOS(临时存储)
qemu-kvm -m 2048 -cpu host -nographic -snapshot \
-drive if=virtio,file=fedora-coreos-qemu.qcow2 \
-fw_cfg name=opt/com.coreos/config,file=path/to/example.ign \
-nic user,model=virtio,hostfwd=tcp::2222-:22
使用QEMU(永久存储)启动FCOS
qemu-img create -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

探索操作系统

使用QEMU用户模式联网时,无法从主机访问分配的IP地址。

上面的示例使用 hostfwd 有选择地将来宾计算机上的SSH端口转发到本地主机(端口2222)。

如果您设置一个 SSH密钥 对于默认设置 core 用户,您可以通过转发的端口SSH进入虚拟机:

ssh -p 2222 core@localhost