使用资源的数组
你可以将一切均视为 Puppet 的资源,你也可以使用数组资源。 使用这种想法,可以重构你的配置清单,使其更加简洁而清晰。
操作步骤
在你的配置清单中,将同一类型资源的几个实例定义在一个类中,例如:packages:
package { "sudo" : ensure => installed } package { "unzip" : ensure => installed } package { "locate" : ensure => installed } package { "lsof" : ensure => installed } package { "cron" : ensure => installed } package { "rubygems" : ensure => installed }
使用如下的方法用数组将它们组织在一起并用一个 package 资源代替:
package { [ "cron", "locate", "lsof", "rubygems" "screen", "sudo" "unzip" ]: ensure => installed, }
工作原理
绝大多数的 Puppet 资源类型都可以使用数组来替换单个的资源名, 并会为每个数组的元素创建一个实例。 你为资源提供的所有参数(例如:ensure => installed)都会分配给每个新的资源实例。
参见本书
- 第 3 章的 遍历多个项目 一节