在使用 conjure-up 引导时,我们是否需要访问所有服务器的互联网?

在使用 conjure-up 引导时,我们是否需要访问所有服务器的互联网?

我正在尝试按照提供的步骤使用 ubuntu maas juju autopilot 设置 openstack。

我停滞在我正在奔跑的某一步

conjure-up --bootstrap-to <hostname>.

此命令卡在

获取 Juju Agent 2.1.2

等待一段时间,然后登录到选择引导的服务器,发现它无法访问互联网。该服务器有两个网卡,其中一个连接到外部网络(可以通过互联网访问公司防火墙)。现在,我编辑了 /etc/resolv.conf,将外部网络 dns 服务器和 dns 搜索放在 maas 服务器 dns 和 IP 之前。在此之后,该过程可以进一步进行,开始部署 haproxy、landscape-server、postgresql 和 rabbitmq-server。这里它正在等待机器,并开始部署第二台服务器。

由于 16.04 没有 wakeonlan 选项,我已将 maas 列表中的所有服务器设置为手动。使用 etherwake,我可以打开服务器并在第二台服务器上开始部署。

现在,问题是第二台服务器是否也需要访问互联网?另外,我有一个问题,是否所有服务器出于某种原因都需要互联网访问?有没有办法将 MAAS 控制器节点以外的所有服务器保留在没有互联网访问的私有网络中,并通过 MAAS 控制器满足所有互联网访问需求?

在我的设置中,我有一个 MAAS 控制器,它有两个网卡,一个连接到互联网,另一个连接到私有交换机。我还以类似的方式连接了另外两台服务器,以便 juju 和 Landscape 可以启动并运行。

如果您需要任何具体信息来回答这个问题,请告诉我。

答案1

与往常一样,在这个论坛中很难找到与 maas/juju/autopilot 相关的答案。

我的问题的答案是:是的。它由 MAAS 服务器完成,该服务器可以充当路由器:MAAS 服务器上的防火墙修改示例如下:

sudo iptables -A FORWARD -o eno1 -i eno2 -s 10.0.0.1/24 -m conntrack --ctstate NEW -j ACCEPT
sudo iptables -A FORWARD -m conntrack --ctstate ESTABLISHED,RELATED -j ACCEPT
sudo iptables -t nat -F POSTROUTING
sudo iptables -t nat -A POSTROUTING -o eno2 -j MASQUERADE

这里10.xxx是内部网络。

相关内容