我使用 MAAS 和 juju 配置了大约 40 台机器。我使用的脚本如下(关闭 --debug 时也存在同样的问题):
juju bootstrap -e maas --debug --upload-tools=true --metadata- source="~/.juju/sync-tools" --to jujuBS.local
juju deploy --repository=".juju/charms" local:juju-gui --to 0
juju expose juju-gui
juju add-machine octave-controller.local
juju deploy --repository=".juju/charms" local:octave-controller --to 1
juju expose octave-controller
juju deploy --repository=".juju/charms" local:octave
juju add-relation octave-controller octave
juju add-unit -e maas octave -n 36
juju add-unit octave --to 0
echo "sleep 300 - force time for octave controller to be build"
sleep 300
juju expose octave
除了机器是串行配置的之外,脚本运行良好。这肯定是 juju 的问题。使用 MAAS Web 界面,我可以一次请求所有机器,它们都会启动。但如果我通过 juju 执行此操作,我可以查看 maas.log 并看到 juju 一次请求一台机器。
正如您在脚本中看到的,我让 juju 一次分配 36 个节点,但它是按顺序分配的,每个节点大约需要 9 分钟。这是在 GB e-net 上,并且在那一分钟的几秒钟内,网络被利用,它的运行速度约为 40MB/S,因此这不是带宽问题。
我定期重建不同的系统来执行不同的任务,并计划获得更多的机器,等待变得越来越痛苦,而且只会变得更糟。
有人知道为什么 juju 只按顺序提供吗?谢谢。
答案1
根据我的经验,机器总是并行配置的,因此你可能会遇到 juju 中的错误。
juju 添加单元 -e maas 八度 -n 36
这应该可以并行配置 36 台机器。
您对最新的稳定版 juju 是否也遇到同样的问题?
https://jujucharms.com/docs/stable/reference-releases#stable