Chef - 根据需要启动或重启服务

时间:2013-05-20 22:09:53

标签: chef

使用Chef,如果服务没有运行,我该如何启动服务?如果是的话,我该怎么办?

我正在运行Ubuntu 12.04,我正在处理的服务是PostgreSQL。停止和启动它几乎可以工作,但厨师似乎在它完全停止并失败之前尝试启动它。

2 个答案:

答案 0 :(得分:3)

通常,您在安装服务时使用action :start以确保它在主厨运行后正在运行,请参阅Service resource

修改要求服务重新启动以使更改处于活动状态的文件时,可以使用操作:reload:restart(取决于init脚本提供的内容)。它看起来像这样:

template "/etc/postgresql/pg.conf" do
  source "pg.conf.erb"
  notifies :restart, "service[postgres]"
end

有关Notifications的更多信息。

答案 1 :(得分:0)

这是我用来有条件地执行docker容器的几个(重新)启动类型操作之一的代码的概述。在@ giannis-nohj总是重新启动的建议由于某种原因不起作用的情况下,它可以适应服务(重新)启动情况。

<div class = "members">
    <div class = "member1" style = "display:inline">
        <a href="#"><img src = "http://justcuteanimals.com/wp-content/uploads/2016/10/baby-bear-pictures-cute-animal-pics.jpg" style = "width: 80px; height: 100px"/></a>
        <a href="#">Member1</a>
    </div>

    <div class = "member2" style = "display:inline">
        <a href="#"><img src = "http://justcuteanimals.com/wp-content/uploads/2016/10/baby-bear-pictures-cute-animal-pics.jpg" style = "width: 100px; height: 100px"/></a>
        <a href="#">Member 2</a>
    </div>
</div>