我们使用共享的 Puppet Server 来管理 QA 和 DEV 环境。Puppet Server 使用的默认配置是生产环境
# puppet master --configprint all | grep production
environment = production
manifest = /data/puppetlabs/code/environments/production/manifests
modulepath = /data/puppetlabs/code/environments/production/modules:/data/puppetlabs/code/modules:/opt/puppetlabs/puppet/modules
我想启用另外两个环境 DEV 和 QA。为此,我将复制上述目录并分别重命名为qa
Puppet development
Server 上的环境。要puppet.conf
启用 Puppet Server 中的新环境,需要启用哪些配置项。如果我像上面的例子一样创建多个条目,它会起作用吗?请提出建议。
答案1
配置环境的经典方法是这样的:
#Environments
[development]
modulepath =/etc/puppet/development/modules
manifest = /etc/puppet/development/manifest/site.pp
manifestdir = /etc/puppet/development/manifest
[testing]
modulepath =/etc/puppet/testing/modules
manifest = /etc/puppet/testing/manifest/site.pp
manifestdir = /etc/puppet/testing/manifest
[production]
modulepath =/etc/puppet/production/modules
manifest = /etc/puppet/production/manifest/site.pp
manifestdir = /etc/puppet/production/manifest
然后,您可以将每个环境的模块和清单放入这些文件夹中。
但这种方法被认为已过时,人们正在使用基于目录的环境。设置environmentpath
为并使用 和在那里/etc/puppet/environments
创建环境文件夹。modules
manifests
例如:
/etc/puppet/environments/production/modules/
/etc/puppet/environments/production/manifests/
/etc/puppet/environments/testing/modules/
/etc/puppet/environments/testing/manifests/
您可以使用r10k自动从 Git 分支下载这些环境。