第 3 章 重新引导 Compute 节点
在完成次要更新后,您可以随时重新引导 Compute 节点。您首先检查哪些更新的节点需要重新引导,然后在 OpenStackDatPlaneDeployment
自定义资源(CR)中指定它们来启动重启。在重新引导后,您的环境仍然使用旧的内核和 Open vSwitch (OVS)进行数据平面开发套件(DPDK)实施。
为确保 OpenShift (RHOSO)环境中的 Red Hat OpenStack Services 中实例的停机时间最少,您应该将实例从需要重新引导的 Compute 节点迁移。
先决条件
您已决定在开始重启前是否将实例迁移到另一个 Compute 节点。
注意- 如果您有多 RHEL 环境,并且您想要将虚拟机从运行 RHEL 9.4 的 Compute 节点迁移到运行 RHEL 9.2 的 Compute 节点,则只支持冷迁移。
-
如果无法迁移实例,您可以设置
shutdown_timeout
配置选项,以在 Compute 节点重启后控制实例的状态。此选项决定了等待实例执行干净关闭的秒数。默认值为60
。
流程
确认哪些更新的节点需要重新引导:
$ oc logs jobs/reboot-os-<deployment_name>-<nodeSet_name>
-
将
<deployment_name
> 替换为包含 Compute 节点的部署名称。 将
<nodeSet_name
> 替换为您需要检查的节点集的名称。如果需要重启,命令会显示以下输出:
Reboot 是必需的,但没有启动。Edpm_reboot_strategy 设置为 never,或者已部署了机器。必须计划重新启动。要启动 reboot,将 edpm_reboot_strategy 设置为 force
。
-
将
打开与
OpenStackClient
pod 的远程 shell 连接:$ oc rsh -n openstack openstackclient
检索 Compute 节点列表,以识别需要重启的节点的主机名:
$ openstack compute service list
在需要重新引导的 Compute 节点上禁用 Compute 服务:
$ openstack compute service set <hostname> nova-compute --disable
-
将 &
lt;hostname
> 替换为您要禁用该服务的 Compute 节点的主机名。
-
将 &
列出 Compute 节点上的所有实例:
$ openstack server list --host <hostname> --all-projects
可选:如果您决定将实例迁移到另一个 Compute 节点,例如,如果您计划重新引导包含运行工作负载的节点,请运行以下命令:
$ openstack server migrate --live-migration --host <target_host> --wait <instance_id>
-
将
<instance_id&
gt; 替换为您的实例 ID。 将
<target_host
> 替换为您要将实例迁移到的主机。- 稍等片刻,直至迁移完成。
确认迁移成功完成:
$ openstack server list --host <hostname> --all-projects
- 继续迁移实例,直到 Compute 节点上没有剩余的实例。
-
将
退出
OpenStackClient
pod:$ exit
创建
OpenStackDataPlaneDeployment
CR 以重新引导节点:apiVersion: dataplane.openstack.org/v1beta1 kind: OpenStackDataPlaneDeployment metadata: name: openstack-edpm-ipam-reboot namespace: openstack spec: nodeSets: 1 - <nodeSet_name> servicesOverride: 2 - reboot-os ansibleExtraVars: 3 edpm_reboot_strategy: force ansibleLimit: <node_hostname>,...,<node_hostname> 4
验证
openstack-edpm-ipam-reboot
部署已完成:$ oc get openstackdataplanedeployment NAME STATUS MESSAGE openstack-edpm-deployment-ipam-reboot True Setup complete
如果部署失败,请参阅在 OpenShift 上部署 Red Hat OpenStack Services 指南中的对 data plane 创建和部署进行故障排除。
重新启用 Compute 节点:
$ oc rsh openstackclient -n openstack $ openstack compute service set <hostname> nova-compute --enable
确认是否已启用 Compute 节点:
$ openstack compute service list