您可以将 OpenStack 实例实时迁移到不同的计算节点。

注:

对于 VMware Integrated OpenStack 管理的实例,必须使用 OpenStack 命令进行迁移。不要使用 vCenter Server 或其他方法来迁移 OpenStack 实例。

前提条件

  • 源计算节点和目标计算节点必须位于同一个 vCenter Server 实例中。

  • 源计算节点和目标计算节点必须至少具有一个通用的分布式交换机。如果有两个分布式交换机连接到源计算节点,但只有一个分布式交换机连接到目标计算节点,实时迁移将成功,但 OpenStack 实例将只连接到两个计算节点通用的分布式交换机的端口组。

  • 如果要实时迁移连接了 CD-ROM 驱动器的实例,请确认您的环境具有可供所有主机访问的共享数据存储。

    重要:

    VMware Integrated OpenStack 5.1.0.1 或更高版本支持实时迁移连接了 CD-ROM 驱动器的实例。

过程

  1. viouser 用户身份登录到 OpenStack 管理服务器
  2. 如果该实例连接了 CD-ROM 驱动器,请配置用于 CD-ROM 迁移的共享数据存储。
    1. 如果您的部署未使用 custom.yml 文件,请将模板 custom.yml 文件复制到 /opt/vmware/vio/custom 目录。
      sudo mkdir -p /opt/vmware/vio/custom
      sudo cp /var/lib/vio/ansible/custom/custom.yml.sample /opt/vmware/vio/custom/custom.yml
    2. 在文本编辑器中打开 /opt/vmware/vio/custom/custom.yml 文件。
    3. 取消对 nova_shared_datastore_regex 参数的注释并将其值设置为 vSphere 中共享数据存储的名称。
    4. 部署更新的配置。
      sudo viocli deployment configure

      部署此配置会短暂中断 OpenStack 服务。

  3. viouser 用户身份登录到控制器节点。
  4. 切换到 root 用户并加载云管理员凭据文件。
    sudo su -
    source ~/cloudadmin.rc
  5. 将实例迁移到所需的计算节点。
    openstack server migrate compute-name instance-uuid --live
    • 要查找计算节点的名称,请运行 openstack host list 命令,并查看主机名列。

    • 要查找实例的 UUID,请运行 openstack server list 命令,然后查看 ID 列。

下一步做什么

您可以运行 openstack server show instance-uuid 命令确认该实例已迁移至所需的计算节点。