17.7. 触发 Controller 节点替换


完成以下步骤,以删除旧的 Controller 节点,并将它替换为新的 Controller 节点。

流程

  1. 确定您要删除的 Controller 节点的 UUID,并将其存储在 < NODEID& gt; 变量中。确保将 & lt;node_name > 替换为您要删除的节点的名称:

    (undercloud)[stack@director ~]$ NODEID=$(openstack server list -f value -c ID --name <node_name>)
    Copy to Clipboard Toggle word wrap
  2. 要识别 Heat 资源 ID,请输入以下命令:

    (undercloud)[stack@director ~]$ openstack stack resource show overcloud ControllerServers -f json -c attributes | jq --arg NODEID "$NODEID" -c '.attributes.value | keys[] as $k | if .[$k] == $NODEID then "Node index \($k) for \(.[$k])" else empty end'
    Copy to Clipboard Toggle word wrap
  3. 创建以下环境文件 ~/templates/remove-controller.yaml,并包含您要删除的 Controller 节点的节点索引:

    parameters:
      ControllerRemovalPolicies:
        [{'resource_list': ['<node_index>']}]
    Copy to Clipboard Toggle word wrap
  4. 输入 overcloud 部署命令,在命令中包含 remove-controller.yaml 环境文件以及所有与您环境相关的其他环境文件:

    (undercloud) $ openstack overcloud deploy --templates \
        -e /home/stack/templates/remove-controller.yaml \
        [OTHER OPTIONS]
    Copy to Clipboard Toggle word wrap
    注意
    • 仅对部署命令的这个实例包含 -e ~/templates/remove-controller.yaml。从后续的部署操作中移除此环境文件。
    • 如果要替换 bootstrap Controller 节点并希望保留节点名称,请包含 ~/templates/bootstrap-controller.yaml。如需更多信息,请参阅 替换 bootstrap Controller 节点
  5. director 会移除旧节点,创建一个新节点并更新 overcloud 堆栈。您可以使用以下命令检查 overcloud 栈的状态:

    (undercloud)$ openstack stack list --nested
    Copy to Clipboard Toggle word wrap
  6. 部署命令完成后,确认旧节点已替换为新节点:

    (undercloud) $ openstack server list -c Name -c Networks
    +------------------------+-----------------------+
    | Name                   | Networks              |
    +------------------------+-----------------------+
    | overcloud-compute-0    | ctlplane=192.168.0.44 |
    | overcloud-controller-0 | ctlplane=192.168.0.47 |
    | overcloud-controller-2 | ctlplane=192.168.0.46 |
    | overcloud-controller-3 | ctlplane=192.168.0.48 |
    +------------------------+-----------------------+
    Copy to Clipboard Toggle word wrap

    新节点现在托管运行的 control plane 服务。

返回顶部
Red Hat logoGithubredditYoutubeTwitter

学习

尝试、购买和销售

社区

关于红帽文档

通过我们的产品和服务,以及可以信赖的内容,帮助红帽用户创新并实现他们的目标。 了解我们当前的更新.

让开源更具包容性

红帽致力于替换我们的代码、文档和 Web 属性中存在问题的语言。欲了解更多详情,请参阅红帽博客.

關於紅帽

我们提供强化的解决方案,使企业能够更轻松地跨平台和环境(从核心数据中心到网络边缘)工作。

Theme

© 2025 Red Hat