其他安装场景
除了标准的手动安装过程之外,XenServer® 还提供了执行各种其他类型安装的功能,包括以下内容:
- 使用 PXE 引导进行网络安装
- 无人值守安装
- 将主机设置为从 SAN 引导
- 配置主机多路径
如果在安装过程中遇到问题,请按照本文所述收集日志:安装日志。
支持的引导模式
XenServer 支持使用 UEFI 或 UEFI 安全引导模式引导主机。有关安全引导的更多信息,请参阅适用于 XenServer 9 的安全引导。
网络安装
如果您要安装的服务器具有支持 PXE 引导的以太网卡,则可以使用此功能通过 PXE 引导进行网络安装。
使用 PXE 引导从网络安装涉及以下步骤:
-
将安装程序文件复制到 TFTP 服务器,并为PXE 引导安装配置 TFTP 和 DHCP 服务器。
-
将安装介质托管在 NFS、FTP 或 HTTP 上。只有安装程序文件是从 TFTP 服务器访问的。要安装在服务器上的 XenServer 文件托管在 NFS、FTP 或 HTTP 服务器上。或者,在通过 PXE 引导启动安装后,您可以从目标服务器上托管的本地介质完成安装。
-
(可选)为无人值守安装创建应答文件。您也可以选择进行有人值守安装并手动完成安装程序。
-
开始安装过程(#start-the-network-installation)。
注意:
标记的 VLAN 网络不支持 PXE 引导。请确保用于 PXE 引导的 VLAN 网络是未标记的。
配置 TFTP 和 DHCP 服务器
在设置 XenServer 安装介质之前,请配置您的 TFTP 和 DHCP 服务器。以下部分包含有关如何为 UEFI 的 PXE 引导配置 TFTP 服务器的信息。有关常规设置过程,请查阅您的供应商文档。
为 UEFI 的 PXE 引导配置 TFTP 服务器
将安装程序文件托管在 TFTP 服务器上,并配置您的 DHCP 和 TFTP 服务器以启用 UEFI 引导模式下的 PXE 引导。此配置用于启动安装过程。
-
在 TFTP 根目录(例如
/tftpboot)中,创建一个名为EFI/xenserver的目录。 -
将 XenServer 安装介质中的以下文件复制到 TFTP 服务器上的新
EFI/xenserver目录中:-
grubx64.efi,来自/EFI/xenserver目录 -
install.img,来自根目录 -
vmlinuz,来自/boot目录 -
xen.gz,来自/boot目录
-
-
配置您的 DHCP 服务器以提供
/EFI/xenserver/grubx64.efi作为引导文件。 -
在 TFTP 服务器上的
EFI/xenserver目录中,创建grub.cfg文件。此文件的内容取决于您希望如何配置 PXE 启动环境以及适用于您的服务器的值。
-
示例:无人值守安装 此示例配置使用指定 URL 处的应答文件执行无人值守安装:
menuentry "XenServer Install (serial)" { multiboot2 /EFI/xenserver/xen.gz dom0_max_vcpus=1-16 dom0_mem=max:8192M com1=115200,8n1 console=com1,vga module2 /EFI/xenserver/vmlinuz console=hvc0 console=tty0 answerfile_device=<interface_name> answerfile=http://<ip_address>/<path_to_answer_file> install module2 /EFI/xenserver/install.img } <!--NeedCopy-->注意:
要指定用于检索应答文件的网络适配器,请包含
answerfile_device=<interface_name>或answerfile_device=<MAC>参数,并指定网络接口名称(例如,eno12429np0)或设备的 MAC 地址。在网络适配器可能在不同主机上以不同方式枚举的环境中(例如,使用不同硬件代次时),您可以指定
map_netdev启动参数,以根据 MAC 地址显式控制网络适配器的逻辑顺序。map_netdev参数必须作为安装程序启动参数提供,并且通常与无人值守安装一起使用,以确保主机之间网络适配器顺序的一致性。此参数支持将特定 MAC 地址映射到逻辑索引(例如,map_netdev=0:<MAC>)。为确保确定性的 NIC 顺序,请为每个所需的适配器重复此参数。例如,您可以指定
map_netdev=0:00:11:22:AA:BB:CC以强制执行特定的硬件映射。有关使用应答文件的详细信息,请参阅创建无人值守安装的应答文件。
-
示例:手动安装 此示例配置启动从 TFTP 服务器引导并需要手动响应的安装:
menuentry "XenServer Install (serial)" { multiboot2 /EFI/xenserver/xen.gz dom0_max_vcpus=1-16 dom0_mem=max:8192M com1=115200,8n1 console=com1,vga module2 /EFI/xenserver/vmlinuz console=hvc0 console=tty0 module2 /EFI/xenserver/install.img } <!--NeedCopy-->
-
下一步: 在 NFS、FTP 或 HTTP 上托管安装介质。除了 TFTP 和 DHCP 服务器之外,您还需要一个 NFS、FTP 或 HTTP 服务器来存放安装在服务器上的 XenServer 文件。
在 NFS、FTP 或 HTTP 上托管安装介质
TFTP 服务器托管启动安装程序所需的文件,但要安装或用于升级的文件托管在 NFS、FTP 或 HTTP 服务器上。
您还可以使用托管在 NFS、FTP 或 HTTP 上的文件来完成从服务器上的本地介质启动的安装或升级。
-
在 HTTP、FTP 或 NFS 服务器上,创建一个目录,以便可以通过 HTTP、FTP 或 NFS 导出 XenServer 安装介质。
-
如果您正在使用 IIS 托管安装介质,假设使用虚拟目录,请完成以下设置:
- 为虚拟目录启用目录浏览。
- 在虚拟目录上提取安装 ISO 之前,请确保已为其启用双重转义。
- 配置以下必需的 MIME 类型
-
.作为 application/octet-stream -
.*作为 application/octet-stream
以下
web.config文件演示了为虚拟目录配置的这些值<?xml version="1.0" encoding="UTF-8"?> <configuration> <system.webServer> <security> <requestFiltering allowDoubleEscaping="true" /> </security> <directoryBrowse enabled="true" showFlags="Date, Time, Size, Extension, LongDate" /> <staticContent> <mimeMap fileExtension="." mimeType="application/octet-stream" /> <mimeMap fileExtension=".*" mimeType="application/octet-stream" /> </staticContent> </system.webServer> </configuration> <!--NeedCopy--> -
-
解压 XenServer 安装 ISO 的内容。您可以通过以下任一方式执行此操作:
- 通过使用 ISO 解压缩应用程序,例如 7-zip。
- 通过挂载 ISO 并复制所有内容。
-
将 XenServer 安装 ISO 的所有解压内容复制到 HTTP、FTP 或 NFS 服务器上新创建的目录中。此目录是您的安装存储库。
注意:
复制 XenServer 安装介质时,请确保将文件
.treeinfo复制到新创建的目录中。
下一步:
- 如果您正在完成无人值守安装:为无人值守安装创建应答文件。
- 如果您正在使用 PXE 引导启动手动安装:启动网络安装。
为无人值守安装创建应答文件
要以无人值守方式执行安装,请创建 XML 应答文件。
将所有节点包含在名为 installation 的根节点中。构建应答文件时,请参阅应答文件参考。
以下是一个应答文件示例:
<?xml version="1.0"?>
<installation srtype="ext">
<primary-disk>sda</primary-disk>
<guest-disk>sdb</guest-disk>
<guest-disk>sdc</guest-disk>
<keymap>us</keymap>
<root-password>mypassword</root-password>
<source type="url">http://pxehost.example.com/xenserver/</source>
<script stage="filesystem-populated" type="url">
http://pxehost.example.com/myscripts/post-install-script
</script>
<admin-interface name="<interface-name>" proto="dhcp" />
<timezone>Europe/London</timezone>
</installation>
<!--NeedCopy-->
下一步: 启动网络安装。
使用应答文件进行自动化升级
您也可以通过适当修改应答文件来执行自动化升级。
- 将
installation元素的mode属性设置为upgrade。 - 使用
existing-installation元素指定现有安装所在的磁盘。 - 将
primary-disk和guest-disk元素留空。
例如:
<?xml version="1.0"?>
<installation mode="upgrade">
<existing-installation>sda</existing-installation>
<source type="url">http://pxehost.example.com/xenserver/</source>
<script stage="filesystem-populated" type="url">
http://pxehost.example.com/myscripts/post-install-script
</script>
</installation>
<!--NeedCopy-->
应答文件参考
以下是元素的摘要。除非另有说明,所有节点值均为文本。已标明必需元素。
<installation>
必需? 是
描述: 包含所有其他元素的根元素。
属性:
srtype
属性 srtype 可以具有以下值之一:lvm、ext 或 xfs:
-
lvm- 将本地存储类型设置为 LVM。 -
ext- 将本地存储类型设置为 EXT4。这使得 Citrix Virtual Desktops 的本地缓存能够正常工作。有关详细信息,请参阅 存储。 -
xfs- 将本地存储类型设置为 XFS。此选项还允许您创建具有 4 KB 物理块的本地存储设备,而无需 512 字节的逻辑块大小。
要启用精简配置,您可以将 srtype 属性指定为 ext 或 xfs。如果您未指定 srtype 属性,则 srtype 的默认值为 lvm。如果您未指定 srtype 属性,但在应答文件中为本地存储配置了 4 KB 本机磁盘,则默认值为 xfs。
注意:
您不能将本地 LVM 或本地 EXT3/EXT4 存储类型与 4 KB 物理块一起使用。如果您尝试在配置 4 KB 物理块时为
srtype属性指定lvm或ext,则您的应答文件配置将被拒绝,因为它不兼容。
mode
要将安装类型更改为升级,请指定值为 upgrade 的 mode 属性。如果未指定此属性,安装程序将执行全新安装并覆盖服务器上的任何现有数据。
<primary-disk>
必需? 是
注意:
已弃用,不适用于升级场景。
描述: 安装控制域的存储设备的名称。此元素等同于手动安装过程中“选择主磁盘”步骤中所做的选择。
属性: 您可以指定一个 guest-storage 属性,其可能的值为 yes 和 no。
例如:<primary-disk guest-storage="no">sda</primary-disk>
默认值为 yes。如果您指定 no,则可以自动化一个不创建存储库的安装场景。在这种情况下,请勿指定任何 guest-disk 键。
<guest-disk>
必需? 否
描述: 用于存储来宾的存储设备的名称。每个额外磁盘使用其中一个元素。
属性: 无
<ntp>
必需? 是
描述: 指定 NTP 服务器的来源。如果未指定 <ntp> 元素,则在指定 <ntp-server> 的情况下,默认值为 manual;如果使用 DHCP,则为 dhcp;否则为 default。
属性:
属性 source 可以具有以下值之一:dhcp、default、manual 或 none。
-
dhcp- 使用 DHCP 中的 NTP 服务器 -
default- 使用默认 NTP 服务器 -
manual- 使用提供的 NTP 服务器,在这种情况下,必须至少指定一个<ntp-server>条目 -
none- NTP 已禁用
如果 source 是 dhcp、default 或 none,请勿指定 <ntp-server>。
<ntp-server>
必需? 否
描述: 指定一个或多个 NTP 服务器。仅与 ntp 元素和 manual 属性一起使用。
属性: 无
<keymap>
必需? 否
描述: 安装期间要使用的键盘映射名称。<keymap>us</keymap> 如果未为此元素指定值,则会考虑默认值 us。
属性: 无
<root-password>
必需: 否
描述: XenServer 主机所需的 root 密码。如果未提供密码,则在主机首次启动时会显示提示。
属性: 您可以指定一个 type,其值为 hash 或 plaintext
例如:
<root-password type="hash">hashedpassword</root-password>
<!--NeedCopy-->
哈希值可以使用 glibc 中 crypt(3) 支持的任何哈希类型。默认哈希类型为 SHA-512。
您可以使用以下 Python 代码生成要包含在应答文件中的哈希密码字符串:
python -c 'import crypt; print(crypt.crypt("mypasswordhere", crypt.mksalt(crypt.METHOD_SHA512)))'
<!--NeedCopy-->
<source>
必需: 是
描述: 上传的 XenServer 安装介质或补充包的位置。此元素可以出现多次。
属性: 属性 type 可以具有以下值之一:url、nfs 或 local。
如果值为 local,则将元素留空。例如,
<source type="url">http://server/packages</source>
<source type="local" />
<source type="nfs">server:/packages</source>
<!--NeedCopy-->
<script>
必需: 否
描述: post-install-script 的位置。
属性:
属性 stage 可以具有以下值之一:filesystem-populated、installation-start 或 installation-complete。
-
当使用值
filesystem-populated时,脚本会在根文件系统卸载之前运行(例如,在安装/升级之后,initrds 已构建等)。脚本会接收一个参数,该参数是根文件系统的挂载点。 -
当使用值
installation-start时,脚本会在主安装序列开始之前运行,但在安装程序初始化并处理应答文件之后。脚本不接收任何参数。 -
当使用值
installation-complete时,脚本在安装程序完成所有操作(因此根文件系统已卸载)后运行。如果安装成功完成,脚本会收到一个值为零的参数;如果安装因任何原因失败,则参数为非零。
属性 type 可以具有以下值之一:url、nfs 或 local。
如果值为 url 或 nfs,请将 URL 或 NFS 路径放入 PCDATA 中。如果值为 local,请将 PCDATA 留空。例如,
<script stage="filesystem-populated" type="url">
http://prehost.example.com/post-install-script
</script>
<script stage="installation-start" type="local">
file:///scripts/run.sh
</script>
<script stage="installation-complete" type="nfs">
server:/scripts/installation-pass-fail-script
</script>
<!--NeedCopy-->
注意:
如果使用本地文件,请确保路径是绝对路径。这通常意味着
file://前缀后跟另一个正斜杠,然后是脚本的完整路径。
<admin-interface>
必需: 有时
注意:
在安装/重新安装期间必需,但在升级或恢复期间不需要。
描述: 用作主机管理接口的单个网络接口。
属性:
指定以下属性之一:
-
name- 您的网络接口名称,例如eno12429np0。 -
hwaddr- 您的网络接口的 MAC 地址,例如00:00:11:aa:bb:cc。
属性 proto 可以具有以下值之一:dhcp 或 static。
如果您指定 proto="static",则还必须指定所有这些子元素:
子元素
-
<ipaddr>:IP 地址 -
<subnet>:子网掩码 -
<gateway>:网关
<timezone>
必需: 否
描述: 时区,采用 TZ 变量使用的格式,例如 Europe/London 或 America/Los_Angeles。默认值为 Etc/UTC。
<name-server>
必需: 否
描述: 命名服务器的 IP 地址。对于要使用的每个命名服务器,请使用其中一个元素。
<hostname>
必需: 否
描述: 如果要手动设置主机名,请指定此元素。
<ntp-server>
必需: 否
描述: 指定一个或多个 NTP 服务器。
开始网络安装
设置 PXE 引导安装所需的网络服务器后,请在要安装到的服务器上完成以下步骤:
-
启动系统并进入引导菜单(在大多数 BIOS 程序中为 F12)。
-
选择从以太网卡引导。
-
系统将从您设置的安装源进行 PXE 引导,并启动安装脚本。
- 如果您已设置应答文件,安装将自动进行。
- 如果您决定手动安装,请在出现提示时提供信息。有关详细信息,请参阅 安装。
从 SAN 引导
从 SAN 引导环境具有多项优势,包括高性能、冗余和空间整合。在这些环境中,引导磁盘位于远程 SAN 上,而不是本地主机上。
支持以下类型的从 SAN 引导配置:
在 XenServer 中设置从 SAN 引导之前,请确保已配置硬件 BIOS 以启用此功能。有关详细信息,请参阅您的硬件供应商文档。
对于完全冗余的从 SAN 启动环境,您必须为 I/O 访问配置多条路径。有关详细信息,请参阅 启用多路径。
注意:
在使用从 SAN 启动环境时,强烈建议启用将日志发送到远程 syslog 服务器。请参阅 将 syslog 消息发送到中央服务器。如果未启用远程 syslog,并且系统故障导致无法访问启动磁盘,则可能很难确定根本原因,并且如果没有这些日志,技术支持可能无法提供帮助。
HBA 和硬件光纤通道
这种从 SAN 启动的部署类型依赖于基于 SAN 的磁盘阵列,这些阵列在主机上支持硬件光纤通道或 HBA iSCSI 适配器。主机通过主机总线适配器 (HBA) 与 SAN 通信。HBA 的 BIOS 包含使主机能够找到启动磁盘的指令。
通过硬件光纤通道或 HBA 适配器设置从 SAN 启动的所有配置都在您将 XenServer 安装到服务器之前在您的网络基础设施中完成。有关如何完成此设置的信息,请参阅供应商提供的文档。
从 iSCSI 软件启动
从 iSCSI 软件启动功能使客户能够使用 iSCSI 从 SAN 安装和启动 XenServer。使用此功能,XenServer 可以安装到 iSCSI 目标提供的 LUN,从该 LUN 启动并运行。iSCSI 目标在 iSCSI 启动固件表中指定。此功能允许通过 iSCSI 附加根磁盘。此启动磁盘可以位于提供 SR 的同一目标上。
要使用此功能,请确保您的环境满足以下要求:
-
专用于 iSCSI 启动的网络接口必须与管理接口和用于 VM 流量的接口分开。
-
存储(iSCSI 目标)必须位于与主机上所有其他具有 IP 地址的网络接口分开的第 3 层 (IP) 网络上。
-
请勿对专用于 iSCSI 启动目标的网络接口使用标记 VLAN。
-
我们建议您配置多路径。
要配置从 iSCSI 软件启动功能,您必须将 use_ibft 参数添加到您的启动参数中。添加此参数的方式取决于您的启动模式和您正在进行的安装类型。
在从本地媒体安装期间,在 UEFI 启动服务器上启用从 iSCSI 软件启动功能
-
从安装介质启动计算机。有关详细信息,请参阅 安装 XenServer 主机。
在初始启动消息之后,您会看到一个 GRUB 菜单。此菜单显示 5 秒。
-
使用光标键选择 install 选项:
-
按
e键以在启动前编辑命令。 -
编辑以下开头的行:
module2 /EFI/xenserver/vmlinuz ... <!--NeedCopy-->使用光标键,编辑此行以在末尾包含
use_ibft:module2 /EFI/xenserver/vmlinuz ... use_ibft <!--NeedCopy--> -
按 Enter。
-
照常继续 XenServer 主机安装过程。
在 PXE 启动安装期间,在 UEFI 启动服务器上启用软件从 iSCSI 启动功能
使用 PXE 安装时,请确保在内核参数中添加关键字 use_ibft。
例如:
menuentry "XenServer Install (serial)" {
multiboot2 /EFI/xenserver/xen.gz dom0_max_vcpus=1-16 dom0_mem=max:8192M com1=115200,8n1 console=com1,vga
module2 /EFI/xenserver/vmlinuz console=hvc0 console=tty0 answerfile_device=<interface_name> answerfile=http://<ip_address>/<path_to_answer_file> install use_ibft
module2 /EFI/xenserver/install.img
}
<!--NeedCopy-->
有关设置 PXE 启动的详细信息,请参阅 为 UEFI 配置 TFTP 服务器以进行 PXE 启动。
安装补充包
补充包用于通过将软件安装到控制域 (dom0) 来修改和扩展 XenServer 的功能。例如,OEM 合作伙伴可能希望随 XenServer 一起提供一套需要安装 SNMP 代理的管理工具。您可以在初始 XenServer 安装期间或之后随时在运行的 XenServer 实例上安装补充包。
在 XenServer 安装期间安装补充包时,请将每个补充包解压到 Web 服务器上的单独目录中。
您可以通过以下方式之一安装补充包:
-
在交互式安装过程中,当系统提示您安装补充包时,请指定补充包介质的 URL。
-
如果您正在使用应答文件进行安装,请添加一个额外的
<source>元素来指定补充包的位置。