以守护进程模式启动 Apache mesos
Starting Apache mesos in daemon mode
有谁知道mesos 1.3.0 的初始化脚本在哪里?
(我在 ubuntu 16.0 上从源代码构建了 mesos)
我正在通过 ansible 像下面这样启动 mesos:
/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 启动它不会导致进程停留 运行ning。
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
代理配置示例。
对于使用 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 "" 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
有谁知道mesos 1.3.0 的初始化脚本在哪里? (我在 ubuntu 16.0 上从源代码构建了 mesos)
我正在通过 ansible 像下面这样启动 mesos:
/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 启动它不会导致进程停留 运行ning。
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
代理配置示例。 对于使用 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 "" 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