由于 IT 经理的新规定,juju 主域名从 juju.this.domain.example 更改为 juju.new.domain.example。IP 地址也发生了变化。而且,这一变化影响了所有 juju 单元,现在它们有了新的 IP 和域名。
我正在使用手动环境。
是否可以更改信息以恢复我的工作站和我在环境中部署的所有 juju-agent 的连接?
答案1
这解决了这个问题:
https://gist.github.com/chuckbutler/542b9a62321f3e806daa
从客户端工作站恢复与状态服务器的连接
您将需要编辑jenv
juju 为环境创建的位于juju bootstrap
:$JUJU_HOME/environments/<environment_name>.jenv
它jenv
有一个 yaml 文件格式,因此熟悉它以便知道要查找什么:
state-servers:
- 173.173.4.187:17070
- 172.187.3.21:17070
下面的每一行项目state-servers
都需要更新新的状态服务器地址。您可能在此处列出了一个或多个,具体取决于您是否这样做juju ensure-availability
- 这将把单节点状态服务器转变为高可用性状态服务器。
从 juju-agents 恢复与状态服务器的连接
每个代理将有 2 个或更多配置文件需要编辑。
- 1 表示机器
- 部署到机器上的每个服务单元代理对应 1 个
假设如下场景:
juju deploy elasticsearch
您将有 2 个文件需要编辑 - 机器配置和 elasticsearch 配置。如果您在机器上共置了任何服务,则将为机器添加每个服务的额外配置。(不要忘记 KVM 和 LXC 容器,因为这也会增加要编辑的配置文件的数量,并且将驻留在该服务容器中)
您将在以下位置找到机器配置,/var/lib/juju/agents/machine-1/agent.conf
您将在以下位置找到服务配置/var/lib/juju/agents/unit-elasticsearch-0/unit.conf
然后杀死 jujud 并让 upstart 重新启动它