我正在努力解决这个问题,
要获得 mesos 从站,我们是否必须安装 Mesos 并启动 mesos 从站设置?
而且我对运行命令的mesos master有问题
./bin/mesos-master.sh --ip=*** --work_dir=/var/lib/mesos
最终它不会继续运行,所以我停止运行。最后我运行上面相同的命令,我得到错误显示
Failed to initialize, bind: Address already in use [98]
我做错了哪一部分?
我正在努力解决这个问题,
要获得 mesos 从站,我们是否必须安装 Mesos 并启动 mesos 从站设置?
而且我对运行命令的mesos master有问题
./bin/mesos-master.sh --ip=*** --work_dir=/var/lib/mesos
最终它不会继续运行,所以我停止运行。最后我运行上面相同的命令,我得到错误显示
Failed to initialize, bind: Address already in use [98]
我做错了哪一部分?
您必须先运行 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
您可以再运行一个从属设备,但您必须使用指定 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=slave1
or替换--ip=slave2
如果您有一个正在运行的从站,您可能必须<another_port>
用 5052,5053 或任何可用端口替换端口。从站将使用默认端口。
在主机上只运行 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 日志,我们可能会为您提供更多帮助。
还请说明您要设置的集群(主机数量、主服务器、从服务器数量),我们也可以在那里提供帮助。
执行以下命令:sudo netstat -peanut
然后检查哪个进程正在使用端口 5050 和 5051。使用 pid 杀死这些进程。
再次启动 mesos 主从。
当我意外杀死 mesos 从站然后重新启动它但由于地址绑定问题而失败时,这发生在我身上。