Linux VM

创建 Linux VM 时,应使用与要在 VM 上运行的操作系统对应的模板创建 VM。可以使用 Citrix 为您的操作系统提供的模板,也可以使用之前您自己创建的模板。可以从 XenCenter 或 CLI 中创建 VM。本节重点介绍如何使用 CLI。

注意:

如果要创建的 VM 要运行的 RHEL 版本是高于 XenServer 支持安装的版本的次要更新版本,请完成以下步骤:

  • 从支持的最新介质安装
  • 使用 yum update 使 VM 保持最新

此过程也适用于 RHEL 衍生产品,例如 CentOS 和 Oracle Linux。

我们建议您在安装操作系统之后立即安装 XenServer Tools。有关详细信息,请参阅安装 Linux 来宾代理。对于某些操作系统,XenServer Tools 提供了一个 XenServer 专用的内核,以取代供应商提供的内核。而其他操作系统(例如 RHEL 5.x)则要求您安装供应商提供的特定版本的内核。

下面将概括介绍 Linux VM 的创建过程:

  1. 使用 XenCenter 或 CLI 为目标操作系统创建 VM。

  2. 使用供应商的安装介质安装操作系统。

  3. 安装 XenServer Tools(推荐)。

  4. 按照在常规非虚拟环境中的配置方式,在 VM 和 VNC 上配置正确的时间和时区。

XenServer 支持将多个 Linux 版本安装到 VM 中。有以下三种安装方法:

警告:

其他安装介质模板适用于希望尝试安装运行不受支持操作系统的 VM 的高级用户。XenServer 已经过测试,只能运行提供的标准模板中包含的受支持发行版本和特定版本。使用其他安装介质模板安装的任何 VM 均受支持。

使用其他安装介质模板创建的 VM 将作为 HVM 来宾系统创建。此行为可能意味着,某些 Linux VM 将使用性能较低的仿真设备,而不是性能较高的 I/O 驱动程序。

有关特定 Linux 发行版的信息,请参阅 Linux 发行版安装说明

PV Linux 发行版

受支持的 PV Linux 发行版包括:

  • Debian Squeeze 6(32/64 位)
  • Debian Wheezy 7(32/64 位)
  • Red Hat Enterprise Linux 5.x(32/64 位)

    如果使用 5.4 或更高版本的内核,则受支持。

  • Red Hat Enterprise Linux 6.x(32/64 位)
  • CentOS 5.x(32/64 位)
  • CentOS 6.x(32/64 位)
  • Oracle Linux 5.x(32/64 位)
  • Oracle Linux 6.x(32/64 位)
  • Scientific Linux 6.6-6.9(32/64 位)
  • SUSE Linux Enterprise Server 11 SP3、SP4(32/64 位)
  • SUSE Linux Enterprise Server 12、12 SP1、12 SP2(64 位)
  • SUSE Linux Enterprise Desktop 11 SP3(64 位)
  • SUSE Linux Enterprise Desktop 12、12 SP1、12 SP2(64 位)
  • Ubuntu 12.04(32/64 位)
  • NeoKylin Linux Advanced Server 6.5(64 位)
  • Asianux Server 4.2(64 位)
  • Asianux Server 4.4(64 位)
  • Asianux Server 4.5(64 位)
  • GreatTurbo Enterprise Server 12.2(64 位)
  • NeoKylin Linux Security OS V5.0(64 位)

其他 PV Linux 发行版受支持。但是,与 Red Hat Enterprise Linux 使用相同安装机制的版本(例如 Fedora Core)可以使用同一模板成功安装。

注意:

  • 不支持在内存大于 128 GB 的主机上运行 32 位 PV Linux VM。

  • XenServer 硬件安全性功能会降低 32 位 PV VM 的整体性能。如果此问题会影响您,您可以执行以下操作之一:

    • 运行 64 位版本的 PV Linux VM
    • 使用 no-smep no-smap 选项启动 Xen。

    我们不建议使用此选项,因为此选项会降低主机安全性的深度

HVM Linux 发行版

这些 VM 可以利用新处理器中的 x86 虚拟容器技术来提高性能。从这些来宾系统访问网络和存储仍使用内核中内置的驱动程序在 PV 模式下运行。

受支持的 HVM Linux 发行版包括:

  • Debian Jessie 8(32/64 位)
  • Debian Stretch 9(32/64 位)
  • Red Hat Enterprise Linux 7.x (64 位)
  • CentOS 7.x(64 位)
  • Oracle Enterprise Linux 7.x(64 位)
  • Scientific Linux 7.x(64 位)
  • SUSE Linux Enterprise Server 12 SP3(64 位)
  • SUSE Linux Enterprise Desktop 12 SP3(64 位)
  • Ubuntu 14.04(32/64 位)
  • Ubuntu 16.04(32/64 位)
  • CoreOS Stable(64 位)
  • Linx Linux V6.0(64 位)
  • Linx Linux V8.0(64 位)
  • Yinhe Kylin 4.0(64 位)

其他 HVM 发行版受支持。但是,与 Red Hat Enterprise Linux 使用相同安装机制的版本(例如 Fedora Core)可以使用同一模板成功安装。

通过从 Internet 存储库进行安装来创建 Linux VM

本节以 Debian Squeeze 为例,说明通过从 Internet 存储库安装操作系统来创建 Linux VM 的 xe CLI 过程。

  1. 从 Debian Squeeze 模板创建 VM。系统会返回该 VM 的 UUID:

    xe vm-install template=template-name new-name-label=squeeze-vm
    
  2. 指定安装存储库。此安装存储库是一个 Debian 镜像,包含安装基本系统所需的软件包,以及在执行 Debian 安装程序期间选择的额外内容:

    xe vm-param-set uuid=UUID other-config:install-repository=path_to_repository
    

    例如,有效的存储库路径为 http://ftp.xx.debian.org/debian,其中 xx 是您所在国家/地区的代码(请参阅 Debian 镜像列表,以查看这些代码的一览表)。对于多次安装,Citrix 建议使用本地镜像或 apt 代理,以避免在中央库产生过大的网络流量或负载。

    注意:

    Debian 安装程序仅支持 HTTP 和 FTP Apt 存储库。NFS 不受支持。

  3. 找到要连接到的网络的 UUID。例如,如果网络连接到 xenbr0

    xe network-list bridge=xenbr0 --minimal
    
  4. 创建一个 VIF 以将新 VM 连接到此网络:

    xe vif-create vm-uuid=vm_uuid network-uuid=network_uuid mac=random device=0
    
  5. 启动 VM。它将直接引导至 Debian 安装程序:

    xe vm-start uuid=UUID
    
  6. 按照 Debian 安装程序的步骤,以您需要的配置安装 VM。

  7. 安装来宾代理,并配置图形显示。有关详细信息,请参阅安装 Linux 来宾代理

通过从物理 CD 或 DVD 进行安装来创建 Linux VM

本节以 Debian Squeeze 为例,说明通过从物理 CD/DVD 安装操作系统来创建 Linux VM 的 xe CLI 过程。

  1. 从 Debian Squeeze 模板创建 VM。系统会返回该 VM 的 UUID:

    xe vm-install template=template-name new-name-label=vm-name
    
  2. 获取新 VM 根磁盘的 UUID:

    xe vbd-list vm-uuid=vm_uuid userdevice=0 params=uuid --minimal
    
  3. 使用返回的 UUID,将根磁盘设置为不可引导:

    xe vbd-param-set uuid=root_disk_uuid bootable=false
    
  4. 获取 XenServer 主机上的物理 CD 驱动器的名称:

    xe cd-list
    

    在此命令为您提供的结果中,name-label 字段为类似 SCSI 0:0:0:0 的值。

  5. 将 XenServer 主机的 CD 驱动器name-label 参数用作 cd-name 参数,向新 VM 添加虚拟 CD-ROM:

    xe vm-cd-add vm=vm_name cd-name="host_cd_drive_name_label" device=3
    
  6. 获取与新虚拟 CD 驱动器对应的 VBD 的 UUID:

    xe vbd-list vm-uuid=vm_uuid type=CD params=uuid --minimal
    
  7. 将虚拟 CD 的 VBD 设置为可引导:

    xe vbd-param-set uuid=cd_drive_uuid bootable=true
    
  8. 将 VM 的安装存储库设置为 CD 驱动器:

    xe vm-param-set uuid=vm_uuid other-config:install-repository=cdrom
    
  9. 将 Debian Squeeze 安装 CD 插入到 XenServer 主机上的 CD 驱动器中。

  10. 使用 XenCenter 或 SSH 终端打开 VM 控制台,然后按照相关步骤执行操作系统安装。

  11. 启动 VM。它将直接引导至 Debian 安装程序:

    xe vm-start uuid=UUID
    
  12. 安装来宾实用程序,并配置图形显示。有关详细信息,请参阅安装 Linux 来宾代理

通过从 ISO 映像进行安装来创建 Linux VM

本节说明通过从支持网络访问的 ISO 安装操作系统来创建 Linux VM 的 xe CLI 过程。

  1. 运行以下命令

    xe vm-install template=template new-name-label=name_for_vm sr-uuid=storage_repository_uuid
    

    该命令将返回新 VM 的 UUID。

  2. 找到要连接到的网络的 UUID。例如,如果网络连接到 xenbr0

    xe network-list bridge=xenbr0 --minimal
    
  3. 创建一个 VIF 以将新 VM 连接到此网络:

    xe vif-create vm-uuid=vm_uuid network-uuid=network_uuid mac=random device=0
    
  4. other-config 参数的 install-repository 键设置为您的网络存储库的路径。例如,将 http://mirror.centos.org/centos/6/os/x86_64 用作供应商介质的 URL:

    xe vm-param-set uuid=vm_uuid other-config:install-repository=http://mirror.centos.org/centos/6/os/x86_64
    
  5. 启动 VM:

    xe vm-start uuid=vm_uuid
    
  6. 使用 XenCenter 或 VNC 连接到 VM 控制台,然后执行操作系统安装。

网络安装说明

使用 XenServer 来宾系统安装程序,可以通过支持网络访问的 ISO 映像将操作系统安装到 VM。要准备从 ISO 进行安装,应创建供应商介质(而 ISO 映像)的分解网络存储库。通过 NFS、HTTP 或 FTP 将其导出,以便可以从 XenServer 主机管理接口进行访问。

该网络存储库必须可通过 XenServer 主机的控制域来进行访问,通常使用管理接口进行访问。URL 必须指向网络服务器上的 CD/DVD 映像库,并采用以下格式:

  • HTTP: http://<server>/<path>
  • FTP: ftp://<server>/<path>
  • NFS: nfs://<server>/<path>
  • NFS: nfs:<server>/<path>

有关如何准备进行网络安装的信息(例如,ISO 的解压缩位置),请参阅供应商提供的安装说明。

注意:

从 XenCenter 使用 NFS 安装方法时,应始终使用 nfs:// 样式的路径。

从模板创建 VM 时,XenCenter 新建 VM 向导会提示您输入存储库的 URL。使用 CLI 时,正常使用 vm-install 安装模板,然后将 other-config:install-repository 参数设置为 URL 的值。然后启动 VM 时,将开始执行网络安装过程。

警告:

安装基于 Linux 的新 VM 时,务必要完成安装并重新启动该 VM,然后再对其执行任何其他操作。此过程类似于不中断 Windows 安装,否则可能导致 VM 无法正常运行。

高级操作系统引导参数

创建 VM 时,可以使用 XenCenter 或 xe CLI 指定高级操作系统引导参数。例如,在配置自动安装半虚拟化来宾系统时,指定高级参数可能很有用。例如,可以按如下过程使用 Debian preseed 或 RHEL kickstart 文件。

要使用 preseed 文件安装 Debian,请执行以下操作:

  1. 创建一个 preseed 文件。有关创建 preseed 文件的信息,请参阅 Debian 文档了解详细信息。

  2. 启动 VM 前,应确保正确设置了内核命令行。使用 XenCenter 中的“新建 VM”向导或执行类似如下的 xe CLI 命令:

    xe vm-param-set uuid=uuid PV-args=preseed_arguments
    

要使用 kickstart 文件安装 RHEL,请执行以下操作:

注意:

Red Hat Kickstart 文件是一种自动化的安装方法,与应答文件类似,可以用来对 RHEL 的安装提示提供响应。要创建此文件,请手动安装 RHEL。kickstart 文件位于 /root/anaconda-ks.cfg 中。

  1. 在 XenCenter 中,选择适当的 RHEL 模板。

  2. 在 XenCenter 的“新建 VM”向导中指定要用作内核命令行参数的 kickstart 文件。按照与在 PXE 配置文件中指定此值完全相同的方式指定此值。例如:

    ks=http://server/path ksdevice=eth0
    
  3. 在命令行中,使用 vm-param-set 设置 PV-args 参数以利用 kickstart 文件

    xe vm-param-set uuid=vm_uuid PV-args="ks=http://server/path ksdevice=eth0"
    
  4. 设置存储库的位置,以便 XenServer 知道从何处获取内核和 initrd 以用于安装程序引导:

    xe vm-param-set uuid=vm_uuid other-config:install-repository=http://server/path
    

注意:

要使用 kickstart 文件进行安装(不通过新建 VM 向导),可以将相应的参数添加到高级操作系统引导参数文本框中。

安装 Linux 来宾代理

虽然受支持的所有 Linux 发行版都是本机半虚拟化的(并且不需要特殊驱动程序即可实现最佳性能),但是 XenServer 仍安装了来宾代理。此来宾代理向主机提供有关 VM 的额外信息。应在每个 Linux VM 上安装来宾代理,才能启用动态内存控制 (DMC)。

升级 XenServer 主机时务必使 Linux 来宾代理保持最新。有关详细信息,请参阅更新 Linux 内核和来宾实用程序

要安装来宾代理,请执行以下操作:

  1. 所需的文件位于内置 guest-tools.iso CD 映像中,也可以通过依次选择 XenCenter 中的 VM安装 XenServer Tools 选项进行安装。

  2. 通过运行以下命令将映像装载到来宾系统中:

    mount -o ro,exec /dev/disk/by-label/XenServer Tools /mnt
    

    注意:

    如果装载映像失败,可以通过运行以下命令来定位该映像:

    blkid -t LABEL="XenServer Tools"
    
  3. 以 root 用户身份执行安装脚本:

    /mnt/Linux/install.sh
    
  4. 通过运行以下命令从来宾系统卸载映像:

    umount /mnt
    
  5. 如果内核已经升级,或 VM 已从上一版本升级,请立即重新启动 VM。

    注意:

    连接到 Linux 虚拟机的 CD-ROM 驱动器和 ISO 显示为设备,例如 /dev/xvdd/dev/sdd,而不是您可能认为的 /dev/cdrom。出现此行为的原因是,它们不是真正的 CD-ROM 设备,而是普通设备。使用 XenCenter 或 CLI 弹出 CD 时,将从 VM 中热拔出该设备,并且该设备将不再显示。在 Windows VM 中,此行为有所不同,CD 会以空状态保留在 VM 中。

Linux 发行版安装说明

本节列出了在创建指定的 Linux VM 之前要考虑的供应商特定的配置信息。

有关所有发行版的更多详细发行说明,请参阅 Linux VM 发行说明

CentOS 5.x(32/64 位)

对于 CentOS 5.x VM,应确保操作系统使用 CentOS 5.4 内核或更高版本(可从发行版供应商处获取)。5.4 版之前的 Enterprise Linux 内核版本中存在阻止 XenServer VM 正常运行的问题。按照供应商的常规内核升级过程升级内核。

Red Hat Enterprise Linux 5.x(32/64 位)

对于 RHEL 5.x VM,应确保操作系统使用 RHEL 5.4 内核 (2.6.18-164.el5) 或更高版本(可从发行版供应商处获取)。 5.4 版之前的 Enterprise Linux 内核版本中存在阻止 XenServer VM 正常运行的问题。按照供应商的常规内核升级过程升级内核。

Red Hat Enterprise Linux* 7.x(32/64 位)

适用于这些来宾系统的新模板指定 2 GB RAM。此 RAM 大小是成功安装 v7.4 及更高版本的一个要求。对于 v7.0 - v7.3,该模板指定 2 GB RAM,但与早期版本的 XenServer 一样,1 GB RAM 已足够。

注意:

此信息适用于 Red Hat 和 Red Hat 衍生产品。

Oracle Linux 5.x(32/64 位)

对于 OEL 5.x VM,应确保操作系统使用 OEL 5.4 内核或更高版本(可从发行版供应商处获取)。5.4 版之前的 Enterprise Linux 内核版本中存在阻止 XenServer VM 正常运行的问题。 按照供应商的常规内核升级过程升级内核。

对于 OEL 5.6(64 位),Unbreakable Enterprise Kernel (UEK) 不支持 Xen 平台。如果您尝试将 UEK 与此操作系统结合使用,内核将无法正确引导。

Oracle Linux 6.9(64 位)

对于内存超过 2 GB 的 OEL 6.9 VM,请设置启动参数 crashkernel=no 以禁用崩溃内核。仅在设置了此参数时,VM 才会成功重新启动。如果使用早期版本的 OEL 6.x,请在更新到 OEL 6.9 之前设置此启动参数。

要使用 XenCenter 设置此参数,请将其添加到新建 VM 向导的安装介质页面中的高级操作系统启动参数字段。

要使用 XenCenter 修改现有 VM,请右键单击 VM,选择属性 > 引导选项 > 操作系统启动参数

Debian 6.0 (Squeeze)(32/64 位)

如果在 XenCenter 中指定了专用镜像,此镜像将仅用于检索安装程序内核。运行安装程序时,您必须再次输入要用于检索软件包的镜像的地址。

Debian 7 (Wheezy)(32/64 位)

如果在 XenCenter 中指定了专用镜像,此镜像将仅用于检索安装程序内核。运行安装程序时,您必须再次输入要用于检索软件包的镜像的地址。

Asianux Server 4.5

必须通过图形安装程序执行安装。在安装介质选项卡中的高级操作系统启动参数字段中添加“VNC”。

Linx Linux V6.0

最多支持 6 个 vCPU。要向 Linx Linux V6.0 VM 添加磁盘,请按照以下步骤设置大于 3 的设备 ID:

  1. 获取可用的设备 ID:

    xe vm-param-get param-name=allowed-VBD-devices uuid=<VM uuid>

  2. 使用列表中大于 3 的 ID:

    xe vbd-param-set userdevice=<Device UD> uuid=<VM uuid>

Yinhe Kylin 4.0

对于来宾工具安装,请在 grub 菜单中启用 root 用户并以 root 用户身份安装来宾工具。

NeoKylin Linux Security OS V5.0(64 位)

默认情况下,NeoKylin Linux Security OS 5(64 位)禁用 /etc/init/control-alt-delete.conf 中的设置。因此,不能使用 xe 命令或 XenCenter 重新启动它。要解决此问题,请执行以下操作之一:

  • 运行 xe 以重新启动 VM 时指定 force=1 选项: xe vm-reboot force=1 uuid=<vm uuid>
  • 或者,在 XenCenter 中单击重新启动后单击强制重启按钮。
  • 或者,务必在来宾操作系统的 /etc/init/control-alt-delete.conf 文件中启用以下两行: start on control-alt-delete exec /sbin/shutdown -r now "Control-Alt-Delete pressed"

默认情况下,Selinux 在操作系统中处于启用状态。因此,用户无法通过 XenCenter 登录 VM。要解决此问题,请执行以下操作:

  1. 通过 XenCenter 向引导选项中添加 selinux=0 来禁用 Selinux
  2. 访问 VM 后,记录 VM 的 IP 地址。
  3. 从上述步骤中获取 IP 地址后,使用任意第三方软件(例如 Xshell)连接到 VM 并删除 selinux=0

    注意:

    仅当禁用了 selinux 时才能使用 XenCenter 访问 VM。

  4. 如果不需要使用 XenCenter 访问 VM,请通过删除之前添加的选项来再次启用 Selinux

Apt 存储库 (Debian)

对于不经常进行或一次性的安装来说,建议直接使用 Debian 镜像。但是,如果您计划进行多次 VM 安装,我们建议您使用缓存代理服务器或本地镜像。以下任一工具都可以安装到 VM 中。

  • Apt-cacher:保留本地软件包缓存的代理服务器的实现。
  • debmirror:用于创建 Debian 存储库的部分或完整镜像的工具。

准备克隆 Linux VM

通常情况下,克隆 VM 或计算机时,除非要使克隆的映像通用化,否则,将会在您的环境中复制该计算机特有的属性。克隆时复制的其中一些特有属性为 IP 地址、SID 或 MAC 地址。

因此,克隆 Linux VM 时,XenServer 会自动更改某些虚拟硬件参数。使用 XenCenter 复制 VM 时,XenCenter 会自动为您更改 MAC 地址和 IP 地址。如果这些接口是在您的环境中动态配置的,可能不需要修改克隆的 VM。但是,如果这些接口是静态配置的,可能需要修改其网络配置。

可能需要自定义 VM 以识别这些更改。有关受支持的特定 Linux 发行版的说明,请参阅 Linux VM 发行说明

计算机名称

克隆的 VM 是另一台计算机,与网络中的任何新计算机一样,它在网络域中必须具有唯一名称。

IP 地址

克隆的 VM 必须在所属网络域中具有唯一的 IP 地址。通常情况下,使用 DHCP 分配地址时,此要求不是问题。当 VM 引导时,DHCP 服务器将为其分配一个 IP 地址。如果克隆的 VM 具有静态 IP 地址,必须在克隆的 VM 引导前为其指定一个未使用的 IP 地址。

MAC 地址

在两种情况下,Citrix 会建议在克隆之前禁用 MAC 地址规则:

  1. 在某些 Linux 版本中,克隆 VM 的虚拟网络接口的 MAC 地址记录在网络配置文件中。但是,克隆 VM 时,XenCenter 会为新克隆的 VM 分配一个不同的 MAC 地址。因此,首次启动新 VM 时,网络会识别新 VM,但不会自动显示出来。

  2. 某些 Linux 发行版使用 udev 规则记住每个网络接口的 MAC 地址,并为该接口保留名称。此行为的目的是使同一物理 NIC 始终映射到同一 ethn 接口,这对可移动 NIC(如便捷式计算机)很有用。但是,此行为在 VM 环境中会出现问题。

    例如,假设在以下情况下存在此行为:

    1. 在安装 VM 时配置两个虚拟 NIC
    1. 关闭 VM
    1. 删除第一个 NIC
    

    VM 重新启动时,XenCenter 仅显示一个 NIC,但其称为 eth0。同时,VM 会特意强制此 NIC 为 eth1。结果导致网络连接无法工作。

对于使用静态名称的 VM,应在克隆之前禁用这些规则。如果您不希望禁用静态名称,则必须在 VM 中重新配置网络连接(按常规方法进行操作)。但是,XenCenter 中显示的信息将与网络中的实际地址不符。

更新 Linux 内核和来宾实用程序

可通过重新运行内置 guest-tools.iso CD 映像中的 Linux/install.sh 脚本更新 Linux 来宾实用程序(请参阅安装 Linux 来宾代理)。

对于启用了 yum 的发行版(CentOS 5.x、RHEL 5.x 及更高版本),xe-guest-utilities 会安装 yum 配置文件,以便能够以标准方式使用 yum 进行后续更新。

对于 Debian,会填充 /etc/apt/sources.list 以便能够在默认情况下使用 apt 更新。

升级时,Citrix 建议始终重新运行 Linux/install.sh。此脚本可自动确定 VM 是否需要更新,并在需要时安装更新。

升级到 Ubuntu 14.04、RHEL 7 和 CentOS 7 来宾系统

要将现有 Linux 来宾系统升级到当前在 HVM 模式下运行的版本(例如,RHEL 7.x、CentOS 7.x 和 Ubuntu 14.04),请执行来宾内部升级。此时,升级的来宾系统仅在 PV 模式下运行,这不受支持且存在已知问题。应运行以下脚本,将新升级的来宾系统转换为受支持的 HVM 模式。

在 XenServer 主机上,打开本地 shell,以 root 用户身份登录,然后输入以下命令:

/opt/xensource/bin/pv2hvm vm_name

/opt/xensource/bin/pv2hvm vm_uuid

重新启动 VM,完成此过程。

Linux VM 发行说明

大多数主流 Linux 版本直接支持 Xen 半虚拟化,但是具有不同的安装机制和一些内核限制。

RHEL 图形安装支持

要使用图形安装程序,请在 XenCenter 中逐步完成新建 VM 向导。在安装介质页面上的高级操作系统启动参数部分中,向列表参数中添加 vnc

图形 utf8 vnc

![“新建 VM”向导的屏幕截图。在“安装介质”页面上的“高级操作系统启动参数”中输入值 graphical utf8 vnc。](/zh-cn/xenserver/current-release/media/rhel-graphical-network-install.png)

系统将提示您为新 VM 提供网络连接配置,以便能够进行 VNC 通信。依次完成“新建 VM”向导的剩余部分。完成向导后,在基础结构视图中选择 VM,然后单击控制台以查看 VM 的控制台会话。此时,将使用标准安装程序。VM 安装最初在文本模式下启动,并且可能要求提供网络配置。提供后,XenCenter 窗口右上角将显示切换到图形控制台按钮。

Red Hat Enterprise Linux 5

XenServer 要求运行 RHEL 5.4 内核或更高版本。旧内核具有以下已知问题:

  • 在 XenServer 7.6 上,使用原始内核的 RHEL 5.0 64 位来宾操作系统无法启动。在尝试将 XenServer 主机升级到版本 7.6 之前,应将内核更新到版本 5.4 (2.6.18-164.el5xen) 或更高版本。如果您运行这些来宾系统并已将您的主机升级到 XenServer 7.6,请参阅 CTX134845 了解有关升级内核的信息。

  • 在恢复挂起的 VM 时,可以进行导致交换活动的分配,但是由于仍然需要重新连接交换磁盘,因此交换活动无法执行。这种情况极少发生。(Red Hat 问题 429102)。

  • 如果您运行的是 RHEL 5.3 或 5.4(32/64 位),请勿使用动态内存控制 (DMC),因为此功能会导致来宾系统崩溃。如果要使用 DMC,Citrix 建议您升级到更高版本的 RHEL 或 CentOS。[EXT-54]

  • 在 RHEL 5.3 中,当有许多设备连接到 VM 时,有时没有足够的时间来连接所有这些设备。在这种情况下,启动将失败。[EXT-17]

  • 在 RHEL 5.0-5.3 中,使用 XFS 文件系统在特殊情况下会导致内核混乱。应用 Red Hat RHEL 5.4 或更高版本的内核可解决此问题。[EXT-16]

  • 在 RHEL 5.2 和 5.3 中,主机具有 64 GiB RAM 或更高配置时,VM 可能会崩溃。应用 Red Hat RHEL 5.4 或更高版本的内核可解决此问题。[EXT-30]

  • 在 RHEL 5.0-5.3 中,网络驱动器存在一个在极少数情况下会导致内核死锁的问题。应用 Red Hat RHEL 5.4 或更高版本的内核可解决此问题。[EXT-45]

注意:

在先前的版本中,XenServer 具有一个备用 RHEL 5 内核,修复了某些会阻止 RHEL 5 作为虚拟机有效运行的关键问题。Red Hat 已在 RHEL 5.4 及更高版本中解决了这些问题。因此,XenServer 不再包括 RHEL 5 的特定内核。

准备 RHEL 5 来宾系统以进行克隆

要准备 RHEL 5.x 来宾系统以进行克隆,请在将 VM 转换成模板之前编辑 /etc/sysconfig/network-scripts/ifcfg-eth0,并删除 HWADDR 行。有关详细信息,请参阅准备克隆 Linux VM

注意:

Red Hat 建议使用 kickstart 执行自动安装,而不是直接克隆磁盘映像(请参阅 Red Hat 知识库文章 1308)。

Red Hat Enterprise Linux 6

注意:

Red Hat Enterprise Linux 6.x 还包括 Red Hat Enterprise Linux Workstation 6.6(64 位)和 Red Hat Enterprise Linux Client 6.6(64 位)。

  • RHEL 6.0 内核存在一个缺陷,将影响多个虚拟化平台上的磁盘 I/O。此问题导致运行 RHEL 6.0 的 VM 丢失中断信号。有关详细信息,请参阅 Red Hat 问题 681439603938652262

  • 尝试从正在运行的 RHEL 6.1 和 6.2(32/64 位)VM 分离虚拟磁盘映像 (VDI) 可能会失败。这些失败的尝试会导致来宾系统内核崩溃,并显示错误消息 NULL pointer dereference at <xyz>。可将内核更新到 6.3 (2.6.32-238.el6) 或更高版本来解决此问题。有关详细信息,请参阅 Red Hat 问题 773219

Red Hat Enterprise Linux 7

迁移或挂起 VM 后,在恢复期间,RHEL 7.x 来宾系统可能会冻结。有关详细信息,请参阅 Red Hat 问题 1141249

CentOS 5

有关 CentOS 5.x 发行说明列表,请参阅 Red Hat Enterprise Linux 5

CentOS 6

有关 CentOS 6.x 发行说明列表,请参阅 Red Hat Enterprise Linux 6

CentOS 7

有关 CentOS 7.x 发行说明列表,请参阅 Red Hat Enterprise Linux 7

Oracle Linux 5

有关 Oracle Linux 5.x 发行说明列表,请参阅 Red Hat Enterprise Linux 5

Oracle Linux 6

如果安装 Oracle Linux 6.x 来宾系统的主机运行的是 v6.5 之前的版本,在升级到 v6.5 后,这些来宾系统仍继续运行 Red Hat 内核。要切换到 UEK 内核(全新安装中使用的默认设置),请删除 dom0 中的 /etc/pygrub/rules.d/oracle-5.6 文件。您可以通过编辑 VM 中的引导加载程序配置来选择此 VM 要使用哪个内核。

对于内存超过 2 GB 的 OEL 6.9 VM,请设置启动参数 crashkernel=no 以禁用崩溃内核。仅在设置了此参数时,VM 才会成功重新启动。如果使用早期版本的 OEL 6.x,请在更新到 OEL 6.9 之前设置此启动参数。有关详细信息,请参阅 Linux 发行版安装说明

有关 Oracle Linux 6.x 发行说明列表,请参阅 Red Hat Enterprise Linux 6

Oracle Linux 7

有关 Oracle Linux 7.x 发行说明列表,请参阅 Red Hat Enterprise Linux 7

Scientific Linux 6

有关 Scientific Linux 6.x 发行说明列表,请参阅 Red Hat Enterprise Linux 6

Scientific Linux 7

有关 Scientific Linux 7.x 发行说明列表,请参阅 Red Hat Enterprise Linux 7

SUSE Linux Enterprise 12

默认情况下,SUSE Linux Enterprise 12 VM 在以下模式下受支持:

PV 模式:

  • SUSE Linux Enterprise Desktop 12、12 SP1 和 12 SP2

  • SUSE Linux Enterprise Server 12、12 SP1 和 12 SP2

HVM 模式:

  • SUSE Linux Enterprise Desktop 12 SP3

  • SUSE Linux Enterprise Server 12 SP3

准备 SLES 来宾系统以进行克隆

注意:

在准备 SLES 来宾系统以进行克隆之前,请确保清除网络设备的 udev 配置,如下所示:

cat< /dev/null > /etc/udev/rules.d/30-net_persistent_names.rules

准备 SLES 来宾系统以进行克隆

  1. 打开文件 /etc/sysconfig/network/config

  2. 编辑内容如下的行:

    FORCE_PERSISTENT_NAMES=yes
    

    更改为

    FORCE_PERSISTENT_NAMES=no
    
  3. 保存更改并重新启动 VM。

有关详细信息,请参阅准备克隆 Linux VM

Ubuntu 12.04

配备了原始内核的 Ubuntu 12.04 VM 在启动过程中会崩溃。要解决此问题,可以执行以下操作之一:

  • 使用供应商支持的最新安装介质创建 Ubuntu 12.04 VM
  • 使用来宾内部更新机制将现有 VM 更新到最新版本

Ubuntu 14.04

尝试引导 PV 来宾系统可能会导致来宾系统崩溃,并显示以下错误:kernel BUG at /build/buildd/linux-3.13.0/arch/x86/kernel/paravirt.c:239! 出现此错误的原因是,未从中断上下文正确调用非原子函数。将 Linux 映像包更新到版本 3.13.0-35.62 可解决此问题。有关详细信息,请参阅 Ubuntu Launchpad 1350373