Xen Dom0
本指南将向您展示如何将 Alpine 的 'sys' 安装设置为 Xen Dom0。您可以从现有的标准安装开始,或者使用 Alpine Xen ISO 安装新的 Alpine 副本。
安装 Xen
全新安装
写入介质

lsblk
和 blkid
命令检查并仔细核对 /dev/sdx
是否是您要写入的正确 USB 设备。
首先,下载 Alpine 的 Xen 安装 ISO,并将 ISO 刻录到 CD/DVD 或使用以下命令将其写入 USB 存储设备,其中 3.12.0
应替换为您下载的 ISO 的版本号。 将 /dev/sdx
替换为您的 USB 设备的驱动器盘符
dd if=alpine-xen-3.12.0-x86_64.iso of=/dev/sdx
安装
从 CD 或 USB 设备启动,并在提示输入用户名时键入 'root'。 登录后,运行 setup-xen-dom0
,然后继续进行标准的 Alpine 安装,直到出现提示要求您选择网卡。 选择将成为您面向互联网的接口,并在被询问是否桥接时键入 'yes'。 然后您可以配置您的桥接设备 br0
的网络设置,就像您配置面向互联网的接口一样。
继续安装到磁盘,直到您到达 'reboot' 提示符。 在您可以无错误启动之前,还需要做一些事情
# xen-hypervisor isn't installed by default with Xen so we must install it manually apk add xen-hypervisor apk add bridge
现在您可以安全地重启,拔下安装介质,并确保在 GRUB 菜单中选择 Alpine Linux v3.12, with Xen 4.13.1 and Linux lts
启动选项。 将 3.12 和 4.13.1 分别替换为您的 Linux 和 Xen 版本号。
在此之后,启用 Alpine 社区仓库 并安装用于 Xen 虚拟机的固件
apk add seabios ovmf
现在您可以配置 GRUB 了。
现有安装
首先,您必须启用 Alpine 社区仓库,然后为其虚拟机安装 Xen 以及 seabios (BIOS) 和 ovmf (UEFI) 固件。
# apk add xen xen-hypervisor seabios ovmf
这将安装 Xen Hypervisor、xl 命令行工具以及所有必需的软件包。 下一步是修改您的 GRUB 配置以正确启动 Xen。
下一步是加载 Xen 所需的内核模块。 我们将它们添加到 /etc/modules,以便它们在启动时自动加载
echo "xen-netback" >> /etc/modules echo "xen-blkback" >> /etc/modules echo "tun" >> /etc/modules
最后,我们将 Xen 守护程序添加到默认运行级别。
rc-update add xenconsoled rc-update add xendomains rc-update add xenqemu rc-update add xenstored
重启。
GRUB 配置
一旦运行 Xen 内核,您将需要编辑其命令行选项,并通过在 /etc/default/grub
底部插入此内容来启用设置默认 GRUB 条目的功能
/etc/default/grub
的内容
您可以将 1024M 替换为您要分配给 Dom0 操作系统的内存量。 之后,您需要运行以下命令
grub-mkconfig -o /boot/grub/grub.cfg grub-set-default "$(grep ^menuentry /boot/grub/grub.cfg | grep Xen | cut -d \' -f 2 | head -1)"
这会将 GRUB 中的默认条目设置为第一个包含 'Xen' 的条目。 每次升级 Alpine 或 Xen 时都运行此命令。
循环设备
如果您计划使用超过 8 个 DomU,您可能需要在 Dom0 中增加循环设备的数量。
在 Alpine Linux 中,您将需要将 max_loop 选项添加到 loop 模块,然后将 loop 模块添加到您的 initramfs。
首先用模块选项填充 /etc/modprobe.d/loop.conf
# touch /etc/modprobe.d/loop.conf # echo "options loop max_loop=32" > /etc/modprobe.d/loop.conf
更新 initramfs 以反映模块选项
# mkinitfs # reboot