启用目标主机进行冷迁移 — Queens

https://blueprints.launchpad.net/nova/+spec/cold-migration-with-target-queens

此功能的目标是允许操作员手动使用目标主机进行冷迁移。

问题描述

目标主机可以在实时迁移操作中指定。但是,目标主机无法在冷迁移操作中指定。这与实时迁移操作不一致,并且这两种操作在需要指定主机时具有相似的情况。

用例

它与实时迁移用例相同。有时,操作员或脚本会决定哪个主机最适合接受冷迁移,然后希望执行它。应确保与实时迁移用例的一致性。

提议的变更

修改 API 和当前的 resize_instance 流程,以便能够指定冷迁移的目标主机。

添加函数以检查目标主机是否符合调度器规则,作为冷迁移的默认行为。具体来说,在 nova/compute/api.py 中添加 RequestSpec 对象的 ‘requested_destination’ 设置。该字段已经在调度器中得到支持,因此只需要填充即可。

备选方案

数据模型影响

REST API 影响

  • URL: POST /v2.1/servers/{server_id}/action

    JSON 请求体

    {
        "migrate": {
            "host": "target-host"
        }
    }
    

‘host’ 参数用于指定目标主机是可选的。微版本号递增。

安全影响

通知影响

其他最终用户影响

python-novaclient 将被修改,使其具有可选的目标主机参数。

nova migrate <server> [<host>]

性能影响

其他部署者影响

开发人员影响

实现

负责人

主要负责人

natsume-takashi

工作项

  • 添加逻辑以指定冷迁移的目标主机

  • 添加处理冷迁移中目标主机检查的逻辑

  • 禁用在指定目标主机时调度重试

  • 添加带有新微版本号的 API

  • 添加 nova 功能测试

  • 添加 tempest 测试

依赖项

测试

添加以下测试。

  • 单元测试

  • 功能测试

  • Tempest 测试

文档影响

  • API 参考

  • CLI 参考

  • 关于冷迁移主题的管理员用户指南。

参考资料

关于为什么未将 force 标志作为此提案的一部分添加的邮件列表讨论:http://lists.openstack.org/pipermail/openstack-dev/2017-August/121654.html

历史

该蓝图已获得 Ocata 的批准,命名为 ‘cold-migration-with-target-ocata’,并获得 Pike 的批准,命名为 ‘cold-migration-with-target-pike’。现在将其重命名为 ‘cold-migration-with-target-queens’。但是,该规范中删除了用于绕过调度器检查的 ‘force’ 参数。

修订版

发布名称

描述

Ocata

已批准

Pike

重新批准

Queens

重新提出