无法通过教程运行 Mesos:设置单节点 Mesosphere 集群

Unable to get Mesos to run from tutorial: Setting up a Single Node Mesosphere Cluster

我一直在按照本教程尝试从他们的教程中设置单节点中间层集群 官方教程:

http://mesosphere.com/docs/getting-started/developer/single-node-install/

我按照所有命令没有任何问题,我还将端口 5050 和 8080 添加到我的安全组。当我尝试访问 mesos/marathon 的控制台时,我收到一条 "Internet Explorer cannot display the webpage" 消息。

他们还建议通过以下方式进行检查:

MASTER=$(mesos-resolve `cat /etc/mesos/zk`)
mesos-execute --master=$MASTER --name="cluster-test" --command="sleep 5"

但是出现错误:

WARNING: Logging before InitGoogleLogging() is written to STDERR
F0106 17:03:08.126703 20993 process.cpp:1561] Failed to initialize, gethostbyname2: Unknown host
*** Check failure stack trace: ***

我也不太确定如何解决这个问题,而且我找不到很多关于如何在 ubuntu.

上安装 mesos 的教程

我查看了zk文件的内容,好像是默认值。

$猫/etc/mesos/zk zk://localhost:2181/mesos

如果能提供有关如何解决此问题的任何线索,我将不胜感激。

编辑:该进程肯定也在运行 - 仅供参考:

root     31545  8.5  5.9 187464 35604 ?        Ssl  17:28   0:00 /usr/local/sbin/mesos-slave --master=zk://localhost:2181/mesos --log_dir=/var/log/mesos
root     31563 28.5  2.1 116304 12856 ?        Rs   17:28   0:00 /usr/local/sbin/mesos-master --zk=zk://localhost:2181/mesos --port=5050 --log_dir=/var/log/mesos --quorum=1 --wo

Mesos 使用 gethostbyname2 将主机名解析为 IP。我建议的第一件事是尝试 "ping localhost" 和 "ping hostname",并验证 /etc/hosts 中没有奇怪的设置。如果你正在做一个多节点集群,我建议 hostname 映射到 public IP 地址(不是 127.0.x.1)。

如果这没有帮助,您可以尝试在启动 mesos-master 和 mesos-slave 时设置 --ip 和 --hostname 标志,以绕过 gethostbyname2 解析。这些也可以通过写入基于文件的参数来设置,例如/etc/mesos/mesos-master/ip

对于其他故障排除,请尝试从 mesos 管理节点 运行 wget http://localhost:5050(或 curl -L),以验证它是否在本地可见。还可以尝试 wget http://<public_ip>:5050 验证网络服务器是否已启动并为 public IP 提供服务。根据您的(EC2?)节点的设置方式,您可能需要 expose/forward 端口或连接到 VPN。

谢谢亚当。我 运行 wget 和 curl 命令,实际上没有在端口 8080 或 5050 上监听。我确实在 ec2 中打开了这些端口。一个简单的重启就可以了,但是,一旦我在重启后通过 ssh 进入 ec2 实例,mesos 和 marathon 都是 运行 并且两个端口现在都在我 运行

之后显示
netstat -ntln.