有谁知道mesos 1.3.0的init脚本在哪里? (我在ubuntu 16.0上从源代码构建了mesos)
我现在通过ansible开始使用如下所示的介质:
/opt/mesos/build/bin/mesos-master.sh --ip=`hostname -i` --work_dir=/var/lib/mesos
然而,当Ansible从终端断开连接时,mesos进程终止。因此,这种启动mesos的方式似乎与远程自动安装不兼容。
我已尝试在nohup之前使用该命令,并在此脚本中进行后台处理(无效):
#!/bin/bash
# Start the mesos slave
# Start Mesos master (ensure work directory exists and has proper permissions).
nohup /opt/mesos/build/bin/mesos-agent.sh --master=`cat /tmp/master.ip`:5050 --work_dir=/var/lib/mesos &```
当我手动运行它,登录到终端并通过ansible启动它时,它似乎才起作用,不会导致进程继续运行。
答案 0 :(得分:1)
Mesos没有守护进程初始化脚本。你需要自己做好准备。
您可以查看mesosphere/mesos-deb-packaging
例如,systemd脚本可能如下所示:
[Unit]
Description=Mesos Master
After=network.target
Wants=network.target
[Service]
ExecStart=/usr/bin/mesos-init-wrapper master
Restart=always
RestartSec=20
LimitNOFILE=16384
[Install]
WantedBy=multi-user.target
答案 1 :(得分:0)
代理配置示例。 对于我使用Ubuntu / init.d,以最简单的形式进行以下工作,确保有优化空间:
创建可执行文件/etc/init.d/mesos
使用以下内容:
#! /bin/sh
### BEGIN INIT INFO
# Provides: mesos
# Default-Start: 2 3 4 5
# Default-Stop: 0 1 6
# Short-Description: Apache Mesos 1.5.0
### END INIT INFO
set -e
case "$1" in
start)
/opt/mesos/bin/mesos-agent.sh --master=<YOUR_MASTER_HOST>:5050 --work_dir=/var/lib/mesos & > /var/log/mesos 2>&1
;;
esac
exit 0
开始于:
service mesos start