跳到内容跳到页面导航:上一页 [access key p]/下一页 [access key n]
documentation.suse.com / SUSE Linux Enterprise Server 文档 / 虚拟化指南 / 使用 libvirt 管理虚拟机 / Guest 安装
适用范围 SUSE Linux Enterprise Server 15 SP5

10 Guest 安装

VM Guest 由一个包含操作系统和数据文件的映像以及一个描述 VM Guest 虚拟硬件资源的配置文件构成。VM Guest 托管在 VM 主机服务器上并受其控制。本节提供有关安装 VM Guest 的概括说明。有关支持的 VM Guest 列表,请参见第 7 章 “虚拟化限制和支持

与运行操作系统需要满足的要求相比,虚拟机几乎没有什么要求。如果操作系统未根据虚拟机主机环境进行优化,它将只能以全虚拟化模式在硬件辅助虚拟化计算机硬件上运行,并需要装载特定的设备驱动程序。提供给 VM Guest 的硬件取决于主机的配置。

您应该了解与在多个虚拟机上运行单个已许可操作系统副本相关的任何许可问题。有关详细信息,请查阅操作系统许可协议。

10.1 基于 GUI 的 Guest 安装

提示
提示:更改新虚拟机的默认选项

可以更改在创建新虚拟机时要应用的默认值。例如,要将 UEFI 设置为新虚拟机的默认固件类型,请从虚拟机管理器的主菜单中选择编辑 › 首选项,单击新建 VM,然后将 UEFI 设置为默认固件。

指定新 VM 的默认选项
图 10.1︰ 指定新 VM 的默认选项

新建 VM 向导将帮助您完成创建虚拟机和安装其操作系统所需执行的步骤。要启动该向导,请打开虚拟机管理器并选择文件 › 新建虚拟机。或者,启动 YaST 并选择虚拟化 › 创建虚拟机

  1. 从 YaST 或虚拟机管理器中启动新建 VM 向导。

  2. 选择安装源 — 本地可用的媒体或网络安装源。要从现有映像安装 VM Guest,请选择导入现有磁盘映像

    在运行 Xen 超级管理程序的 VM 主机服务器上,您可以选择是要安装半虚拟化 Guest 还是全虚拟化 Guest。您可以在体系结构选项下选择相应的选项。根据此项选择,并非所有安装选项均可用。

  3. 根据在上一步中所做的选择,您需要提供以下数据:

    本地安装媒体(ISO 映像或 CDROM)

    在 VM 主机服务器上指定包含安装数据的 ISO 映像的路径。如果该映像是作为 libvirt 存储池中的卷提供的,您也可以使用浏览来选择。有关更多信息,请参见第 13 章 “高级存储主题

    或者,选择已插入到 VM 主机服务器光驱中的物理 CD-ROM 或 DVD。

    网络安装(HTTP、HTTPS 或 FTP)

    提供指向安装源的 URL。有效的 URL 前缀包括 ftp://http://https:// 等。

    URL 选项下,提供自动安装文件(例如 AutoYaST 或 Kickstart)的路径以及内核参数。提供 URL 后,应该就会自动正确检测到操作系统。如果情况并非如此,请取消选择基于安装媒体自动检测操作系统,并手动选择操作系统类型版本

    导入现有磁盘映像

    要从现有映像安装 VM Guest,您需要在 VM 主机服务器上指定该映像的路径。如果该映像是作为 libvirt 存储池中的卷提供的,您也可以使用浏览来选择。有关更多信息,请参见第 13 章 “高级存储主题

    手动安装

    如果您要创建虚拟机,手动配置其组件并稍后安装其操作系统,则适合使用这种安装方法。要将 VM 调整为特定的产品版本,请开始键入版本名称(例如 sles),然后在出现匹配项时选择所需的版本。

  4. 选择新虚拟机的内存大小和 CPU 数量。

  5. 如果在第一步中选择了导入现有映像,则会省略此步骤。

    设置 VM Guest 的虚拟硬盘。创建新磁盘映像,或者从存储池中选择一个现有的磁盘映像(有关详细信息,请参见第 13 章 “高级存储主题)。如果您选择创建磁盘,将会创建一个 qcow2 映像,该映像默认存储在 /var/lib/libvirt/images 下。

    设置磁盘是可选操作。例如,如果您正在直接从 CD 或 DVD 运行实时系统,可以通过停用为此虚拟机启用存储来省略此步骤。

  6. 在向导的最后一个屏幕上指定虚拟机的名称。如果您希望能够查看和更改虚拟化硬件选择,请激活在安装之前自定义配置。在网络选择下指定网络设备。使用网桥设备时,系统会预先填充主机上的第一个网桥。要使用其他网桥,请在文本框中手动更新为该网桥名称。

    单击完成

  7. (可选) 如果您在上一步中保留了默认设置,则会开始安装。如果您选择了在安装之前自定义配置,一个 VM Guest 配置对话框将会打开。有关配置 VM Guest 的详细信息,请参见第 14 章 “使用虚拟机管理器配置虚拟机

    完成配置后,单击开始安装

提示
提示:将组合键传递给虚拟机

安装将在一个虚拟机管理器控制台窗口中开始。某些组合键(例如 CtrlAltF1)会被 VM 主机服务器接受,但不会传递给虚拟机。虚拟机管理器提供粘滞键功能来绕过 VM 主机服务器。按 CtrlAltShift 三次使该键成为粘滞键,然后按组合键中剩余的键便可将组合键传递给虚拟机。

例如,要将 CtrlAltF2 传递给 Linux 虚拟机,请按 Ctrl 三次,然后按 AltF2。也可以按 Alt 三次,然后按 CtrlF2

在安装 VM Guest 期间以及安装之后,都可以在虚拟机管理器中使用粘滞键功能。

10.1.1 为虚拟机配置 PXE 引导

PXE 引导使虚拟机能够通过网络从安装媒体引导,而无需从物理媒体或安装磁盘映像进行引导。有关设置 PXE 引导环境的更多细节,请参见第 17 章 “准备网络引导环境

要使您的 VM 从 PXE 服务器引导,请执行以下步骤:

  1. 按照第 10.1 节 “基于 GUI 的 Guest 安装”中所述启动安装向导。

  2. 选择手动安装方法。

  3. 按照向导操作到最后一步,然后选中在安装之前自定义配置。单击完成确认。

  4. 自定义屏幕上,选择引导选项

  5. 检查引导设备顺序,并选中启用引导菜单旁边的框。

  6. 启用引导菜单下,选中网络 PXE 并单击应用确认。

  7. 单击开始安装以开始安装。如果正确配置了 PXE 服务器,PXE 菜单屏幕将会显示。

10.2 使用 virt-install 从命令行安装

virt-install 是个命令行工具,可帮助您使用 libvirt 库创建新虚拟机。如果您无法使用图形用户界面,或需要自动化虚拟机创建过程,此工具十分有用。

virt-install 是个复杂的脚本,其中包含大量命令行开关。下面是必需的开关。有关详细信息,请参见 virt-install (1) 的手册页。

一般选项
  • --name VM_GUEST_NAME:指定新虚拟网络的名称。该名称必须在同一连接上超级管理程序已知的所有 Guest 中保持唯一。该名称用于创建和命名 Guest 的配置文件,您可以通过 virsh 使用该名称来访问 Guest。该名称可以包含字母数字和 _-.:+ 字符。

  • --memory REQUIRED_MEMORY:以 MB 为单位指定分配给新虚拟机的内存量。

  • --vcpus NUMBER_OF_CPUS:指定虚拟 CPU 数量。要获得最佳性能,虚拟处理器数量应小于或等于物理处理器数量。

虚拟化类型
  • --paravirt:安装半虚拟化 Guest。如果 VM 主机服务器支持半虚拟化和全虚拟化,这就是默认设置。

  • --hvm:安装全虚拟化 Guest。

  • --virt-type HYPERVISOR:指定超级管理程序。支持的值为 kvmxen

Guest 存储空间

指定 --disk--filesystem--nodisks 作为新虚拟机的存储类型。例如,--disk size=10 会在超级管理程序的默认映像位置创建 10 GB 磁盘,并将此磁盘用于 VM Guest。--filesystem /export/path/on/vmhost 指定 VM 主机服务器上要导出到 Guest 的目录。--nodisks 安装不带本地存储空间的 VM Guest(适合使用实时 CD 的情形)。

安装方法

使用 --location--cdrom--pxe--import--boot 指定安装方法。

访问安装

使用 --graphics VALUE 选项指定如何访问安装。SUSE Linux Enterprise Server 支持值 vncnone

如果使用 VNC,virt-install 将尝试启动 virt-viewer。如果 virt-viewer 未安装或无法运行,请使用您偏好的查看器手动连接到 VM Guest。要显式阻止 virt-install 启动查看器,请使用 --noautoconsole。要定义用于访问 VNC 会话的口令,请使用以下语法:--graphics vnc,password=PASSWORD

如果您使用 --graphics none,可以通过操作系统支持的服务(例如 SSH 或 VNC)访问 VM Guest。请参见操作系统安装手册了解如何在安装系统中设置这些服务。

传递内核和 initrd 文件

可以直接指定安装程序的内核和 Initrd,例如,指定来自网络来源的内核和 Initrd。要设置网络来源,请参见第 16.4 节 “手动设置 HTTP 软件源”

要传递其他引导参数,请使用 --extra-args 选项。此选项可用于指定网络配置。有关详细信息,请参见第 7 章 “引导参数

例 10.1︰ 从 HTTP 服务器装载内核和 initrd
# virt-install --location "http://example.tld/REPOSITORY/DVD1/" \
--extra-args="textmode=1" --name "SLES15" --memory 2048 --virt-type kvm\
--connect qemu:///system --disk size=10 --graphics vnc \
--network network=vnet_nated
启用控制台

默认不会对使用 virt-install 安装的新虚拟机启用控制台。要启用控制台,请如以下示例所示使用 --extra-args="console=ttyS0 textmode=1"

> virt-install --virt-type kvm --name sles12 --memory 1024 \
 --disk /var/lib/libvirt/images/disk1.qcow2 --os-variant sles12
 --extra-args="console=ttyS0 textmode=1" --graphics none

安装完成后,VM 映像中的 /etc/default/grub 文件将会更新,在 GRUB_CMDLINE_LINUX_DEFAULT 行中包含 console=ttyS0 选项。

使用 UEFI 安全引导

按照第 6.3 节 “安装 UEFI 支持”中所述安装 OVMF。然后将 --boot uefi 选项添加到 virt-install 命令。

使用 OVMF 设置新 VM 时,将自动使用 UEFI 安全引导。要使用特定的固件,请使用 --boot loader=PATH_TO_FIRMWARE

例如,对于 AArch64 体系结构:

--boot loader=/usr/share/qemu/qemu-uefi-aarch32.bin

对于 AMD64/Intel 64 体系结构:

--boot loader=/usr/share/qemu/ovmf-x86_64-opensuse.bin
例 10.2︰ virt-install 命令行示例

以下命令行示例将创建带有 virtio 加速磁盘和网卡的新 SUSE Linux Enterprise 15 SP2 虚拟机。它将创建新的 10 GB qcow2 磁盘映像作为存储空间,源安装媒体为主机 CD-ROM 驱动器。此命令行使用 VNC 图形,并自动启动图形客户端。

KVM
> virt-install --connect qemu:///system --virt-type kvm \
--name sle15sp2 --memory 1024 --disk size=10 --cdrom /dev/cdrom --graphics vnc \
--os-variant sle15sp2
Xen
> virt-install --connect xen:// --virt-type xen --hvm \
--name sle15sp2 --memory 1024 --disk size=10 --cdrom /dev/cdrom --graphics vnc \
--os-variant sle15sp2

10.3 高级 Guest 安装方案

本节提供有关超出了正常安装范围的操作(例如使用内存气球和安装附加产品)的说明。

10.3.1 对 Windows Guest 使用内存气球

内存气球是在运行时更改 VM Guest 所用内存量的方法。KVM 和 Xen 超级管理程序都提供此方法,但需要 Guest 也支持此方法。

基于 openSUSE 和 SLE 的 Guest 支持内存气球,而 Windows Guest 需要通过 Virtual Machine Driver Pack (VMDP) 来提供气球技术。要使设置的最大内存大于为 Windows Guest 配置的初始内存,请执行以下步骤:

  1. 安装最大内存等于或小于初始值的 Windows Guest。

  2. 在 Windows Guest 中安装虚拟机驱动程序包,以提供所需的驱动程序。

  3. 关闭 Windows Guest。

  4. 将 Windows Guest 的最大内存重置为所需值。

  5. 再次启动 Windows Guest。

10.3.2 在安装中包含附加产品

某些操作系统(例如 SUSE Linux Enterprise Server)允许在安装过程中包含附加产品。如果附加产品安装源是通过 SUSE Customer Center 提供的,则无需进行特殊的 VM Guest 配置。如果安装源是通过 CD/DVD 或 ISO 映像提供的,则需要向 VM Guest 安装系统提供标准安装媒体映像和附加产品的映像。

如果您使用的是基于 GUI 的安装,请在向导的最后一步选择在安装之前自定义配置,并通过添加硬件 › 存储添加附加产品 ISO 映像。指定映像的路径,并将设备类型设置为 CD-ROM

如果您是从命令行安装的,则需要使用 --disk 参数而不是 --cdrom 来设置虚拟 CD/DVD 驱动器。将使用第一个指定的设备进行引导。以下示例将 SUSE Linux Enterprise Server 15 连同 SUSE Enterprise Storage 扩展一起安装:

> virt-install \
 --name sles15+storage \
 --memory 2048 --disk size=10 \
 --disk /path/to/SLE-15-SP5-Full-ARCH-GM-media1.iso-x86_64-GM-DVD1.iso,device=cdrom \
 --disk /path/to/SUSE-Enterprise-Storage-VERSION-DVD-ARCH-Media1.iso,device=cdrom \
 --graphics vnc --os-variant sle15