管理您的主机

Last published : Oct 07, 2026
本文介绍了一些您可以用来管理单个 XenServer® 主机的操作。
要管理与资源池相关的操作,请参阅 管理您的池。

配置 SSH 访问

默认情况下,您的 XenServer 主机已启用 SSH 访问。如果您想禁用对 XenServer 主机的 SSH 访问,请运行以下命令:
xe host-disable-ssh host=<host_uuid_or_name_label>
此命令禁用 SSH。主机将拒绝新的 SSH 连接,但不会断开任何现有会话。
要启用对 XenServer 主机的 SSH 访问,请运行以下命令:
xe host-enable-ssh host=<host_uuid_or_name_label>
设置当前主机 SSH 临时启用超时(秒):
xe host-param-set uuid=<host-uuid> ssh-enabled-timeout=<seconds>
超时参数决定 SSH 服务持续时间。当设置为 0 时,SSH 将无限期保持活动状态。当设置为正整数(秒)时,SSH 将在指定时间段后自动禁用。配置更改会立即对后续的活动 SSH 会话生效,并且在用户每次从 CLI/API 启用 SSH 时都会生效。
设置当前主机 SSH 控制台空闲超时(秒)
xe host-param-set uuid=<host-uuid> console-idle-timeout=<seconds>
使用非负整数值(以秒为单位)配置 VNC 和 SSH 控制台连接的空闲会话超时,其中 0 禁用超时(会话永不失效),正值(例如 3600)在指定持续时间后自动终止空闲会话,并且设置在配置后应用于新创建的控制台会话。
设置当前主机 SSH 自动模式
xe host-param-set uuid=<host-uuid>  ssh-auto-mode=true
根据 XAPI 服务健康状态配置自动 SSH 管理。当启用自动模式时,SSH 激活遵循 XAPI 状态:当 XAPI 健康时 SSH 被禁用,当 XAPI 不健康时 SSH 被启用。
自动模式已启用 + ssh_enabled_timeout = 0:通过 host.enable_ssh 手动激活 SSH 会永久禁用自动模式。
自动模式已启用 + ssh_enabled_timeout > 0:手动激活 SSH 会暂时禁用自动模式;当超时到期时,自动模式将恢复到原始设置。(如果在活动的 SSH 超时期间发生系统重启,则原始自动模式设置将丢失,并在超时/恢复时重置为启用状态。)
对于这些命令中的任何一个的主机参数值,您可以使用主机选择器。有关详细信息,请参阅主机选择器。
您可以同时管理 XenServer 池中所有主机的 SSH 访问。有关详细信息,请参阅禁用池的 SSH 访问。

带有应答文件的 SSH 自动模式

添加新的应答文件配置 <ssh-mode>on|off|auto</ssh-mode> 以控制默认 SSH 和自动模式设置。
  • 当设置为“auto”时,自动模式已启用,并且一旦 XAPI 启动,将自动停止 SSH 服务。
  • 当设置为“on”或“off”时,自动模式默认禁用,并且 SSH 服务将相应地启用或禁用。

新 SSH 管理控制的定义

在主机级别设置新的 XAPI API host.set_ssh_auto_mode 以配置 SSH
set_ssh_auto_mode:配置以启用或禁用 SSH 自动模式。当自动模式启用时,SSH 状态取决于 XAPI 状态:当 XAPI 正常时,SSH 被禁用;当 XAPI 不正常时,SSH 被启用。
当用户将自动模式配置为启用且当前 ssh_enabled_timeout 为 0 时,使用 host.enable_ssh 启用 SSH 将永久禁用自动模式。
当用户使用 host.set_auto_mode 将自动模式配置为启用或禁用时,这称为“原始自动模式设置”。如果当前 ssh_enabled_timeout 设置为正数(例如 1800 秒),使用 host.enable_ssh 启用 SSH 将暂时禁用自动模式。当超时期限到期时,SSH 将自动禁用,并且自动模式将恢复到其原始设置。
当用户将 ssh_enabled_timeout 设置为正数(例如 3600 秒)并在超时期限到期之前重新启动主机(或重新启动 XAPI)时,一旦超时期限到期,SSH 将自动禁用,并且自动模式将恢复为 true,因为重新启动将丢失原始自动模式设置。
当您将 ssh_enabled_timeout 配置为正数(例如 180 秒)并且 XAPI 随后失败时,如果在超时期限到期时 XAPI 仍处于失败状态,SSH 将保持启用状态,直到 XAPI 重新启动。XAPI 重新启动后,SSH 将自动禁用,并且自动模式将恢复为 true,因为系统重新启动会导致原始自动模式设置的丢失。

在主机上安装 TLS 证书

XenServer 主机默认安装了 TLS 证书。但是,要使用 HTTPS 保护 XenServer 与 Citrix Virtual Apps and Desktops™ 之间的通信,请安装由受信任的证书颁发机构提供的证书。
本节介绍如何使用 xe CLI 安装证书。有关使用 XenCenter 处理证书的信息,请参阅 (/zh-cn/xencenter/current-release/hosts-certificates.html)。
确保您的 TLS 证书及其密钥满足以下要求:
  • 证书和密钥对是 RSA 密钥。
  • 密钥与证书匹配。
  • 密钥与证书分别存储在不同的文件中。
  • 证书与任何中间证书分别存储在不同的文件中。
  • 密钥文件必须是以下类型之一:.pem 或 .key。
  • 任何证书文件必须是以下类型之一:.pem、.cer 或 .crt。
  • 密钥长度大于或等于 2048 位,小于或等于 4096 位。
  • 密钥是未加密的 PKCS #8 密钥,并且没有密码。
  • 密钥和证书采用 base-64 编码的“PEM”格式。
  • 证书有效且未过期。
  • 签名算法为 SHA-256 或 SHA-512。
当您选择的证书和密钥不符合这些要求时,xe CLI 会发出警告。

我在哪里可以获取 TLS 证书?

1. 生成证书签名请求

首先,生成私钥和证书签名请求。在 XenServer 主机上,完成以下步骤:
  1. 要创建私钥文件,请运行以下命令:
    openssl genrsa -des3 -out privatekey.pem 2048
    系统将提示您输入密码短语。此密码短语将在后续步骤中删除。
  2. 从密钥中删除密码短语:
    openssl rsa -in privatekey.pem -out privatekey.nop.pem
  3. 使用私钥创建证书签名请求:
    openssl req -new -key privatekey.nop.pem -out csr
  4. 按照提示提供生成证书签名请求所需的信息。
    • 国家/地区名称。输入您所在国家/地区的 TLS 证书国家/地区代码。例如,加拿大的 CA 或牙买加的 JM。您可以在网上找到 TLS 证书国家/地区代码列表。
    • 州或省名称(全称)。输入池所在的州或省。例如,马萨诸塞州或艾伯塔省。
    • 地区名称。池所在的城市名称。
    • 组织名称。您的公司或组织的名称。
    • 组织单位名称。输入部门名称。此字段是可选的。
    • 通用名称。输入您的 XenServer 主机的 FQDN。我们建议指定一个不会过期的 FQDN 或 IP 地址。
    • 电子邮件地址。生成证书时,此电子邮件地址将包含在证书中。
    证书签名请求将保存到当前目录,并命名为 csr。
  5. 通过运行以下命令在控制台窗口中显示证书签名请求:
    cat csr
  6. 复制整个证书签名请求,并使用此信息向证书颁发机构请求证书。
    证书签名请求示例:
    -----BEGIN CERTIFICATE REQUEST-----
    MIIDBDCCAewCAQAwgYsxCzAJBgNVBAYTAlVLMRcwFQYDVQQIDA5DYW1icmlkZ2Vz
    aGlyZTESMBAGA1UEBwwJQ2FtYnJpZGdlMRIwEAYDVQQKDAlYZW5TZXJ2ZXIxFTAT
    ...
    SdYCkFdo+85z8hBULFzSH6jgSP0UGQU0PcfIy7KPKyI4jnFQqeCDvLdWyhtAx9gq
    Fu40qMSm1dNCFfnACRwYQkQgqCt/RHeUtl8srxyZC+odbunnV+ZyQdmLwLuQySUk
    ZL8naumG3yU=
    -----END CERTIFICATE REQUEST-----

2. 将证书签名请求发送到证书颁发机构

生成证书签名请求后,您可以将请求提交给您组织首选的证书颁发机构。
证书颁发机构 (CA) 是一种提供数字证书的服务,您的组织内部可能有一个可用的 CA,或者您可以使用受信任的第三方。某些证书颁发机构要求证书托管在可从 Internet 访问的系统上。我们建议不要使用具有此要求的证书颁发机构。
证书颁发机构会响应您的签名请求并提供以下文件:
  • 已签名证书
  • 如果适用,中间证书
您现在可以将所有这些文件安装到您的 XenServer 主机上。

3. 在 XenServer 主机上安装签名证书

在证书颁发机构响应证书签名请求后,请完成以下步骤以在 XenServer 主机上安装证书:
  1. 从证书颁发机构获取签名证书,如果证书颁发机构有中间证书,也一并获取。
  2. 将密钥和证书复制到 XenServer 主机。
  3. 在主机上运行以下命令:
    xe host-server-certificate-install certificate=&lt;path_to_certificate_file> private-key=&lt;path_to_private_key> certificate-chain=&lt;path_to_chain_file>
    certificate-chain 参数是可选的。
为了增强安全性,您可以在安装证书后删除私钥文件。

管理管理员密码

首次安装 XenServer 主机时,您会设置一个管理员或 root 密码。您可以使用此密码将 XenCenter 连接到您的主机,或(使用用户名 root)登录到系统配置控制台 xsconsole。
如果将主机加入池,则主机的管理员密码会自动更改为与池协调器管理员密码匹配。
注意:
XenServer 管理员密码必须只包含可打印的 ASCII 字符。

更改密码

您可以使用 XenCenter®、xe CLI 或 xsconsole 更改管理员密码。

XenCenter

要使用 XenCenter 更改池或独立主机的管理员密码,请完成以下步骤:
  1. 在“资源”窗格中,选择池或池中的任何主机。
  2. 在“池”菜单或“服务器”菜单上,选择“更改服务器密码”。
要更改独立主机的 root 密码,请在“资源”窗格中选择该主机,然后从“服务器”菜单中单击“密码”,再单击“更改”。
如果 XenCenter 配置为在会话之间保存主机登录凭据,则新密码将被记住。有关详细信息,请参阅 存储主机连接状态。
更改管理员密码后,轮换池密钥。有关详细信息,请参阅 轮换池密钥。

xe CLI

要使用 xe CLI 更改管理员密码,请在池中的主机上运行以下命令:
xe user-password-change new=<new_password>
注意:
确保在命令前加上一个空格,以避免将纯文本密码存储在命令历史记录中。
更改管理员密码后,轮换池密钥。有关详细信息,请参阅 轮换池密钥。

xs 控制台

要使用 xsconsole 更改池或独立主机的管理员密码,请完成以下步骤:
  1. 在池协调器上,转到控制台。
  2. 以 root 身份登录。
  3. 键入 xsconsole。按 Enter 键。将显示 xsconsole。
  4. 在 xsconsole 中,使用箭头键导航到 Authentication 选项。按 Enter 键。
  5. 导航到 更改密码。按 Enter 键。
  6. 使用管理员密码进行身份验证。
  7. 在 更改密码 对话框中:
    1. 输入当前密码。
    2. 输入新密码。
    3. 再次输入新密码以确认。
    将显示 密码更改成功 屏幕。按 Enter 键关闭。
如果主机是池协调器,此更新的密码现在将传播到池中的其他主机。
更改管理员密码后,轮换池密钥。有关详细信息,请参阅轮换池密钥。

重置丢失的 root 密码

如果您丢失了 XenServer 主机的管理员 (root) 密码,可以通过直接访问主机来重置密码。
  1. 重新启动 XenServer 主机。
  2. 当 GRUB 菜单显示时,按 e 编辑启动菜单条目。
  3. 将 init=/sysroot/bin/sh 添加到以 module2 开头的行。
  4. 按 Ctrl-X 启动到根 shell。
  5. 在命令 shell 中,运行以下命令:
    chroot /sysroot
    passwd

    (type the new password twice)

    sync
    /sbin/reboot -f
如果主机是池协调器,则此更新后的密码现在会传播到池中的其他主机。
更改管理员密码后,轮换池密钥。有关更多信息,请参阅轮换池密钥

更改服务器上的 NTP 配置

您可以从 xsconsole 更新服务器的 NTP 配置。
  1. 在主机控制台中,键入 xsconsole。
  2. 在 xsconsole 中,转到 网络和管理接口 > 网络时间 (NTP)。
  3. 输入您的密码以继续。
  4. 从 Configure Network Time 菜单中,选择要配置的选项。

准备 XenServer 主机池以进行维护

在对属于资源池的主机执行维护操作之前,必须禁用它。禁用主机可防止在其上启动任何 VM。然后,您必须将其 VM 迁移到池中的另一个 XenServer 主机。您可以通过使用 XenCenter 将 XenServer 主机置于维护模式来完成此操作。有关更多信息,请参阅 XenCenter 文档中的在维护模式下运行。
备份同步每 24 小时进行一次。将池协调器置于维护模式会导致丢失离线 VM 最近 24 小时的 RRD 更新。
警告:
我们强烈建议在安装更新之前重新启动所有 XenServer 主机,然后验证其配置。某些配置更改仅在 XenServer 主机重新启动后才会生效,因此重新启动可能会发现可能导致更新失败的配置问题。

使用 CLI 准备池中的主机进行维护操作

  1. 运行以下命令:
    xe host-disable uuid=XenServer_host_uuid
    xe host-evacuate uuid=XenServer_host_uuid
    此命令禁用 XenServer 主机,然后将所有正在运行的虚拟机迁移到池中的其他 XenServer 主机。
  2. 执行所需的维护操作。
  3. 维护操作完成后,启用 XenServer 主机:
    xe host-enable
  4. 重新启动所有已停止的虚拟机并恢复所有已暂停的虚拟机。

关闭或重新启动 XenServer 主机

我们建议始终使用 xe CLI 或 XenCenter 关闭或重新启动 XenServer 主机。在正常操作期间,请勿使用其他方法(例如基于硬件的重置或操作系统命令)关闭或重新启动主机。这样做可能会导致主机和池出现意外行为。
要使用 xe CLI 关闭或重新启动主机,请使用以下命令:
  1. 阻止任何新虚拟机在此主机上启动或迁移到指定主机:
    xe host-disable host=<host name>
  2. 如果需要,将所有正在运行的虚拟机从主机迁移出去:
    xe host-evacuate uuid=<host uuid>
  3. 使用以下 xe CLI 命令之一关闭或重新启动主机。
    • 要干净地关闭主机:
      xe host-shutdown host=<host name>
    • 要干净地重新启动主机:
      xe host-reboot host=&lt;host name>
有关如何使用 XenCenter 关闭服务器的信息,请参阅 XenCenter 文档。

配置主机开机

远程开机主机

您可以使用 XenServer 主机开机功能,通过 XenCenter 或 CLI 远程开启和关闭主机。
要启用主机电源,主机必须具有以下电源控制解决方案之一:
  • 支持网络唤醒 (Wake on LAN) 的网卡。
  • 智能平台管理接口 (IPMI)。
  • 基于管理 API 的自定义脚本,使您能够通过 XenServer 开启和关闭电源。有关详细信息,请参阅下一节中的为主机开机功能配置自定义脚本。
使用主机开机功能需要执行以下两项任务:
  1. 确保池中的主机支持远程控制电源。例如,它们具有网络唤醒 (Wake on LAN) 功能或支持 IPMI,或者您已创建自定义脚本。
  2. 使用 CLI 或 XenCenter 启用主机开机功能。

使用 CLI 管理主机开机

您可以使用 CLI 或 XenCenter 管理主机开机功能。本节提供有关使用 CLI 管理此功能的信息。
主机开机在主机级别(即在每个 XenServer 上)启用。
启用主机电源管理后,您可以使用 CLI 或 XenCenter 开启主机。

使用 CLI 启用主机电源管理

运行以下命令:
xe host-set-power-on-mode host=&lt;host uuid>

power-on-mode=("" , "wake-on-lan", "IPMI","custom")

power-on-config=key:value

使用 CLI 远程开启主机

运行以下命令:
xe host-power-on host=&lt;host uuid>