3

我正在努力解决这个问题,

要获得 mesos 从站,我们是否必须安装 Mesos 并启动 mesos 从站设置?

而且我对运行命令的mesos master有问题

./bin/mesos-master.sh --ip=*** --work_dir=/var/lib/mesos

最终它不会继续运行,所以我停止运行。最后我运行上面相同的命令,我得到错误显示

Failed to initialize, bind: Address already in use [98]

我做错了哪一部分?

4

4 回答 4

4

您必须先运行 mesos-master,然后才能将运行在不同节点上的 mesos slave 连接到 master。你可以参考mesos的入门指南。只有一个从设备可以连接到同一端口上的主设备。如果你得到绑定地址已经在使用,你可以尝试通过传递--port=value参数在另一个端口上运行从机。用端口号替换值。

在 localhost 上启动 mesos master:

./bin/mesos-master.sh --ip=127.0.0.1 --work_dir=/var/lib/mesos

启动和连接从站到主站

./bin/mesos-slave.sh --master=127.0.0.1:5050 

要启动另一个从站并将其连接到同一个主站,您必须使用另一个端口,因为默认端口 5051 已被第一个连接的从站使用。使用参数--port-value在另一个端口上启动从站

./bin/mesos-slave.sh --master=127.0.0.1:5050 --port=5053

您可能会收到权限被拒绝错误。如果是这样,请使用 sudo 访问给定的端口

sudo ./bin/mesos-slave.sh --master=127.0.0.1:5050 --port=5053
于 2015-01-09T07:51:35.027 回答
1

您可以再运行一个从属设备,但您必须使用指定 ip 和不同的工作目录

./mesos-slave.sh --master=<ipaddr>:<port> --ip=<ip of slave> --work_dir=<work_dir other than that of a running slave> --port=<another_port>

编辑您的 etc/hosts 并使用以下条目添加更多本地 ip

127.0.0.2   slave2
127.0.0.3   slave3

那么你可以--ip=<ip of slave>--ip=slave1or替换--ip=slave2

如果您有一个正在运行的从站,您可能必须<another_port>用 5052,5053 或任何可用端口替换端口。从站将使用默认端口。

于 2015-01-13T09:08:47.603 回答
0

在主机上只运行 mesos-slave 很简单,只需安装 mesos 包并仅使用正确的标志运行 mesos-slave 进程,如果还安装了 master 也没有问题,但请注意只运行 master 正确到法定人数。

在您尝试启动 mesos-master 的端口上已经运行了一些东西,它有一个 Web 界面。检查在 mesos 默认端口上运行的程序,或使用其他端口,有关此处提供的命令行文档的更多信息:Mesos 配置

要查看使用端口 5050 或 5051 的内容,请使用以下任一命令:

sudo fuser -v 5050/tcp
sudo lsof -i | grep 5050

这两个命令都会为您提供保存端口的进程 pid。要么杀死它们,要么通过使用正确的端口选项启动 mesos 为 mesos 指定一个新端口:

./bin/mesos-master.sh --ip=*** --work_dir=/var/lib/mesos --port=FREE_PORT

你在哪里指定 mesos 主从的动物园管理员?启动 mesos-master 需要以下标志(请参阅我给您的链接):--advertise_ip、--advertise_port、--quorum、--work_dir、--zk

你目前对 mesos master 的完整配置是什么?您可以在/etc/mesos/, /etc/mesos-master/, /etc/mesos-slave/, /etc/defaults/mesos, /etc/defaults/mesos-master,下找到相关文件/etc/defaults/mesos-slave。如果您在此处复制粘贴其中的行和 mesos 日志,我们可能会为您提供更多帮助。

还请说明您要设置的集群(主机数量、主服务器、从服务器数量),我们也可以在那里提供帮助。

于 2016-01-31T16:07:31.197 回答
0

执行以下命令:sudo netstat -peanut

然后检查哪个进程正在使用端口 5050 和 5051。使用 pid 杀死这些进程。

再次启动 mesos 主从。

当我意外杀死 mesos 从站然后重新启动它但由于地址绑定问题而失败时,这发生在我身上。

于 2016-02-29T02:55:24.317 回答