使用资源的数组

优质
小牛编辑
132浏览
2023-12-01

你可以将一切均视为 Puppet 的资源,你也可以使用数组资源。 使用这种想法,可以重构你的配置清单,使其更加简洁而清晰。

操作步骤

  1. 在你的配置清单中,将同一类型资源的几个实例定义在一个类中,例如: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 }
    
  2. 使用如下的方法用数组将它们组织在一起并用一个 package 资源代替:

    package { [ "cron",
          "locate",
          "lsof",
          "rubygems"
          "screen",
          "sudo"
          "unzip" ]:
      ensure => installed,
    }
    

工作原理

绝大多数的 Puppet 资源类型都可以使用数组来替换单个的资源名, 并会为每个数组的元素创建一个实例。 你为资源提供的所有参数(例如:ensure => installed)都会分配给每个新的资源实例。

参见本书