如何在 Puppet 中定义两次相同的服务? [英] How define twice the same service in Puppet?

查看:42
本文介绍了如何在 Puppet 中定义两次相同的服务?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

为了使用 Puppet 类部署 Varnish,我需要停止 Varnish 以移动和部署文件,然后在最后确保 Varnish 已启动.

In order to deploy Varnish with a Puppet class, I need stop Varnish for move and deploy files, then at the end, ensure that Varnish is started.

我的问题很简单,如何在 Puppet 类中定义两次服务,以便在不同的步骤停止或启动服务?

My problem is simple, how I can define twice a service in a Puppet class, in order to stop or start the service at differents steps ?

class varnish::install (

    (...)

    service { "varnish":
        ensure => "stopped",
        require => Package['varnish'],
        before => Exec['mv-lib-varnish'],
    }

    (...)

    service { "varnish":
        ensure => "running",
        require => File["$varnishncsa_file"],
    }
}

我有一个重复定义:Service[varnish] (...) 错误,这是合乎逻辑的...

I've an Duplicate definition: Service[varnish] (...) error, and it's logical...

在 Puppet 类中管理服务的最佳实践是什么?分成多个类,或者有一个选项可以重命名"一个服务以多次声明它?

What's the best practice to manage services in a Puppet class ? Divide in multiple classes, or there is an option for "rename" a service for declare it several times ?

推荐答案

尝试以下操作来消除重复错误,但您尝试做的是错误的.Puppet 使系统处于某种一致状态——所以告诉停止服务 X,做一些工作,启动服务 X——它超出了适当的 puppet 使用范围,puppet 更像是如果服务所依赖的某些文件被修改,则重启服务.>

try the following to get rid of duplicate error, but what you are trying to do is wrong. Puppet brings system to certain consistent state - so telling stop service X, do some work , start service X - it out of scope of proper puppet use, puppet is more like restart service if some files on which the service depends were modified.

class varnish::install (

(...)

service { "varnish-stop":
    name => "varnish"
    ensure => "stopped",
    require => Package['varnish'],
    before => Exec['mv-lib-varnish'],
}

(...)

service { "varnish-start":
    name => "varnish"
    ensure => "running",
    require => File["$varnishncsa_file"],
}
}

这篇关于如何在 Puppet 中定义两次相同的服务?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆