mesos

xpszyzbs  于 2021-06-21  发布在  Mesos
关注(0)|答案(2)|浏览(456)

我有一个通过openstack部署的4 centos 7.1虚拟机的设置。他们有一个公共和一个私人的ip地址。主机不知道公共ip所以如果我运行

ifconfig -a

我只得到主机的私有ip地址。
现在我想使用mesosphere包部署mesos23.0,首先我使用以下选项部署master

--cluster="my-cluster" --hostname="<Public-IP>" --log_dir="/var/log/mesos"  --port="5050" --zk="zk://127.0.0.1:2181/mesos" --quorum="1"

其余的选项是默认值。
从机通过以下选项进行部署:

--log_dir=/var/log/mesos --containerizers=docker,mesos --executor_registration_timeout=5mins --hostname=<Public IP> --master=<Master Public IP>:5050

从属服务器被添加到集群中,但它们直接进入“停用”状态,因此我无法在集群上运行任何框架。我可以在5051上给奴隶们做一个远程通话。我还想补充 --ip=<public IP> 导致绑定到错误:

Failed to initialize: Failed to bind on <Public IP>:5051: Cannot assign requested address: Cannot assign requested address [99]

因为奴隶不知道它是公共ip。而mesos slave默认监听0.0.0.0

netstat -ltnp | grep ':5051'
tcp        0      0 0.0.0.0:5051            0.0.0.0:*               LISTEN      764/mesos-slave

当我查看来自mesos主机的日志文件时,我可以看到从机用他们的私有ip通知他们自己

Slave 20150805-161215-1059104960-5050-715-S1136 at slave(1)@<private IP>:5051 (<Public IP>) disconnected
Disconnecting slave 20150805-161215-1059104960-5050-715-S1136 at slave(1)@<private IP>:5051 (<Public IP>)
Deactivating slave 20150805-161215-1059104960-5050-715-S1136 at slave(1)@<private IP>:5051 (<Public IP>)

由于虚拟机无法在专用网络中通信,因此无法工作。我是否必须允许虚拟机通过他们的私有ip进行通信,或者如何使我的集群工作?
谢谢!

pxq42qpu

pxq42qpu1#

如果您无法绑定到nic,您可以使用“--advertise\u ip”选项来分配浮动ip。

w46czmvw

w46czmvw2#

我通过ifconfig添加公共ip解决了我的问题。也许有更好的解决办法?
我们现在决定允许vm之间通过私有ip进行通信,这也解决了这个问题。

相关问题