我在 Ubuntu 12.04LTS 上定义了一个 Juju 环境,但是当我给出命令“juju bootstrap”时,它会产生错误,即
Unexpected Error interacting with provider: 409 CONFLICT
2012-04-13 02:25:01,025 ERROR Unexpected Error interacting with provider: 409 CONFLICT
我的 environment.yaml 文件如下:
environments:
maas:
type: maas
maas-server: 'http://127.0.0.1:80/MAAS'
maas-oauth: 'YQB6PzembfZtLzgy9q:9tzQyQpCbAG38Vf5Ph:EuNhAmH4LXrLJ6wtBUrYqe9wrwCyJrHf'
admin-secret: 'nothing'
default-series: precise
答案1
CONFLICT
来自 maas 意味着它没有任何可供 juju 获取的节点(juju bootstrap 需要启动一个节点)。
不幸的是,这不是最好的错误,juju 需要修复才能显示所有文本。您需要 12.04 的服务器版本
答案2
在决定重新开始使用新的 Juju 设置并忘记juju destroy-environment
在删除我的 Juju 配置之前运行后,我遇到了同样的错误(~/.juju
)。这使我的 MaaS 设置认为它当前已部署到,而我的新 Juju 设置从未被引导过。这导致出现409 CONFLICT
冲突错误。
当我尝试将我的新配置连接到同一个 MaaS 时,它给出了该错误。我甚至尝试手动释放 MaaS 中的所有节点,以为那里出了问题。
但问题并不在于此。MaaS 存储文件,其中一些文件包括 Juju 引导状态。
要重置它,您需要运行:
maas-cli login root http://<your_MaaS_server_hostname>/MAAS/
maas-cli root files list
查看列出的文件中是否有文件名为bootstrap-verify
或provider-state
。如果是,请运行以下命令删除文件并将 MaaS 重置为“非引导”状态:
maas-cli root file delete bootstrap-verify
maas-cli root file delete provider-state
运行juju status
。如果它给出一个错误,表明它没有引导,只需运行juju bootstrap
,您就可以开始了。如果它给出其他错误,表明它认为它已部署但找不到文件或某些东西,则删除该文件夹~/.juju/environments/
(也许备份它以防万一),然后运行juju bootstrap
。