如何暂停/恢复车队单位?

时间:2015-04-23 19:05:42

标签: coreos etcd

我的计算机中有一个vagrant coreos群集设置。我可以提交,加载,启动,停止,卸载,销毁集群中不同主机的机群单位。是否有fleetctl命令用于暂停/恢复已加载/启动的单元?如果没有内置命令,如何实现车队单位的暂停/恢复功能?

2 个答案:

答案 0 :(得分:1)

容器应该是无状态的,你应该以这种方式设计你的应用程序。

但是,如果您想暂停,则可以连接到运行设备的主机并使用docker pause / unpause

或者,如果您永远不想停止容器,请使用包装脚本以这种方式调整单元文件:

    [Unit]
    Description=blah

    [Service]
    ExecStart=<full path>/start.sh
    ExecStop=<full path>/stop.sh

start.sh脚本:

    #!/bin/bash
    if [[ $(docker ps|grep <CONTAINER NAME/ID> == "" ]]; then
        docker start <yourname>/<yourcontainer>
    else
        docker unpause <CONTAINER NAME/ID>
    fi

stop.sh脚本:

    #!/bin/bash
    if [[ $(docker ps|grep <CONTAINER NAME/ID> == "" ]]; then
        echo "container not running"
    else
        docker pause <CONTAINER NAME/ID>
    fi

答案 1 :(得分:0)

今天在舰队中没有办法做到这一点。我的问题是,暂停/恢复与停止/启动或销毁/启动有什么不同?