我有一个设置,我使用3个mesos大师和3个mesos slasves。在完成所有必需的配置之后,我可以看到3个mesos主人是由动物园管理员维护的群集的一部分。
现在我已经设置了3个mesos奴隶,当我启动mesos-slave服务时,我期待mesos奴隶将可用于mesos masters web UI页面。但我在奴隶标签中看不到任何一个。
selinux,防火墙,iptalbes都被禁用了。能够在节点之间执行ssh。[cloud-user@slave1 ~]$ sudo systemctl status mesos-slave -l
mesos-slave.service - Mesos Slave
Loaded: loaded (/usr/lib/systemd/system/mesos-slave.service; enabled)
Active: active (running) since Sat 2016-01-16 16:11:55 UTC; 3s ago
Main PID: 2483 (mesos-slave)
CGroup: /system.slice/mesos-slave.service
├─2483 /usr/sbin/mesos-slave --master=zk://10.0.0.2:2181,10.0.0.6:2181,10.0.0.7:2181/mesos --log_dir=/var/log/mesos --containerizers=docker,mesos --executor_registration_timeout=5mins
├─2493 logger -p user.info -t mesos-slave[2483]
└─2494 logger -p user.err -t mesos-slave[2483]
Jan 16 16:11:55 slave1.novalocal mesos-slave[2494]: I0116 16:11:55.628670 2497 detector.cpp:482] A new leading master (UPID=master@127.0.0.1:5050) is detected
Jan 16 16:11:55 slave1.novalocal mesos-slave[2494]: I0116 16:11:55.628732 2497 slave.cpp:729] New master detected at master@127.0.0.1:5050
Jan 16 16:11:55 slave1.novalocal mesos-slave[2494]: I0116 16:11:55.628825 2497 slave.cpp:754] No credentials provided. Attempting to register without authentication
Jan 16 16:11:55 slave1.novalocal mesos-slave[2494]: I0116 16:11:55.628844 2497 slave.cpp:765] Detecting new master
Jan 16 16:11:55 slave1.novalocal mesos-slave[2494]: I0116 16:11:55.628872 2497 status_update_manager.cpp:176] Pausing sending status updates
Jan 16 16:11:55 slave1.novalocal mesos-slave[2494]: E0116 16:11:55.628922 2503 process.cpp:1911] Failed to shutdown socket with fd 11: Transport endpoint is not connected
Jan 16 16:11:55 slave1.novalocal mesos-slave[2494]: I0116 16:11:55.629093 2502 slave.cpp:3215] master@127.0.0.1:5050 exited
Jan 16 16:11:55 slave1.novalocal mesos-slave[2494]: W0116 16:11:55.629107 2502 slave.cpp:3218] Master disconnected! Waiting for a new master to be elected
Jan 16 16:11:55 slave1.novalocal mesos-slave[2494]: E0116 16:11:55.983531 2503 process.cpp:1911] Failed to shutdown socket with fd 11: Transport endpoint is not connected
Jan 16 16:11:57 slave1.novalocal mesos-slave[2494]: E0116 16:11:57.465049 2503 process.cpp:1911] Failed to shutdown socket with fd 11: Transport endpoint is not connected
答案 0 :(得分:3)
所以有问题的一行是:
Jan 16 16:11:55 slave1.novalocal mesos-slave[2494]: I0116 16:11:55.629093 2502 slave.cpp:3215] master@127.0.0.1:5050 exited
具体来说,请注意它检测到主机具有IP地址127.0.0.1。 Mesos Agent [1]看到IP地址,并尝试连接失败(主人不在与代理相同的机器上运行)。
这是因为主人宣布它认为它的IP地址进入了Zookeeper。在您的情况下,主人认为它的IP是127.0.0.1,然后将其存储到zk中。 Mesos有几个配置标志来控制这种行为,主要是--hostname
,--no-hostname_lookup
,--ip
,--ip_discovery_command
,以及通过设置环境变量LIBPROCESS_IP。有关这些内容及其功能的详细信息,请参阅http://mesos.apache.org/documentation/latest/configuration/。
您可以做的最好的事情是确保机器开箱即用,确保机器具有可解析的主机名。 Mesos对主机名框进行反向DNS查找,以便找出IP人员将从中联系的内容。
如果您无法正确设置主机名,我建议您手动设置--hostname
和--ip
,这会导致mesos准确宣布您想要的内容。
[1] mesos slave已重命名为agent,请参阅:https://issues.apache.org/jira/browse/MESOS-1478