如何在非 MAAS 环境中的专用 OpenStack 可用区域/聚合上“juju deploy”?

如何在非 MAAS 环境中的专用 OpenStack 可用区域/聚合上“juju deploy”?

需要解决以下问题: - OpenStack Ocata(Ubuntu 16.04)(部署了 MAAS/Juju),具有多个可用区域/聚合。一些用于测试,一些用于生产 - 在其自己的 OpenStack 域和项目中的测试租户 - 测试租户(Ubuntu 18.04)中的跳转服务器 VM 带有 Juju 2.4 - Juju 控制器(从 OpenStack 云/区域中的跳转服务器引导)(测试租户中没有 MAAS !)

现在,我们要使用“juju deploy”部署一个多节点魅力包,并确保每个 juju 启动的“机器”只会在“测试”可用区域/聚合中的 nova 计算节点上创建。

有什么建议或推荐吗?

问候

PS:我并不想通过这个问题实现:-“juju deploy --to 0 xxx”或“juju add-unit --to 1 xxx”的提示和技巧,因为目标机器必须仍然存在。我正在寻找“绿地”捆绑部署的解决方案。

答案1

部署命令允许区域放置。

以下是“juju deploy --help”命令的示例:

juju deploy mysql --to zone=us-east-1a
(provider-dependent; deploy to a specific AZ)

我相信区域放置与 openstack 兼容,因此目标定位zone=testing应该可以工作。

答案2

以下正在运行 --> Juju 2.4

$ openstack availability zone list
+-----------+-------------+
| Zone Name | Zone Status |
+-----------+-------------+
| internal  | available   |
| default   | available   |
| testzone  | available   |  <--- desired AZ
| nova      | available   |
+-----------+-------------+

# juju model-config zone='testzone'
# juju deploy cs:ubuntu-12 --constraints "root-disk=8G" --to zone='testzone' ubuntu01

每台部署的机器将在所需的 AZ 中启动。

不起作用的是:

# juju deploy canonical-kubernetes --to zone='testzone'
ERROR flags provided but not supported when deploying a bundle: --to

因此,您必须逐步部署您的服务,并使用单一魅力和关系部署重现魅力包。:-(

我目前正在调查强制将区域归入本地捆绑包的一些可能性。

非常感谢 !

相关内容