Puppet 中类和自定义类型的使用与设计模式
1. 类的使用
在 Puppet 中,类是一种用于声明系统核心资源和属性的结构。例如,对于所有的 Web 服务器节点,都可以使用一个 Apache 类来进行配置:
class apache { file { '/etc/apache2/apache2.conf': source => 'puppet:///modules/apache/etc/apache2/apache2.conf', require => Package['apache2'], } service { 'apache2': enable => true, require => Package['apache2'], } }要让节点使用这个类,只需在其清单中包含如下简单语句:
include apache若 Apache 类功能强大,足以满足所有需求,一个节点块的内容可能就只有这一行:
node 'webserver01' { include apache }在实际设置中,通常无需自己编写 Apache 类,可以使用通过 Puppet 模块提供的开源类