作为用户,我只想问几个问题。
如果我想在两台不同的机器(或 LXD)上部署具有两个不同 JuJu charms(比如 DB + Mediawiki)的应用程序,我是否需要两个控制器?如果需要,谁来管理这两个控制器?
是否存在某种类型的控制器“Master”?
最后,当我通过 CLI 部署应用程序时,我是否对控制器采取行动(告诉它进行部署)?
控制器通过添加关系“告诉”一个 charm 与另一个(在另一台机器上)具有 IP 地址的 charm 对话,但是在哪里(或如何)指定 IP 地址呢?
非常感谢您的解释。
答案1
你不需要为你的 2 个 charms 配备 2 个控制器:
- 您可以通过
juju deploy mediawiki
以下方式将它们部署到您的模型中juju deploy mysql
- 然后你可以在它们之间添加关系: juju add-relation
mediawiki:db mysql
- 您可以通过
在每个控制器上,您都有一个在控制器引导时创建的超级用户。通过使用,
juju show-controller
您可以看到:account: user: admin access: superuser
- 该用户可以创建新模型或将新用户添加到控制器/模型。该用户可以在您的控制器上执行任何操作。
charms 之间通过接口进行通信。Mysql 将提供一个数据库,该接口有一个
provides.py
文件,其中所有必要的信息都将提供给需要方 (MediaWiki)。接口的需要方有一个文件,requires.py
该文件将获取信息并将其传递给 charm。每个接口都可以提供或需要不同的东西。你可以在http://interfaces.juju.solutions/
现在这两个 charm 已经连接好了,Mediawiki 将会知道 MySql 的 IP 地址,从而能够与它建立连接。
如果你还需要更多信息,你可以在JUJU 文档