我有代理/主设置。我在/etc/puppetlabs/code/environments/
中创建了一个名为master
的新环境。
environment.conf
目录环境的master
内容为
modulepath = site:modules:$basemodulepath
manifest = manifests/site.pp
当我尝试puppet agent -t --environment master
时,我收到了一些错误
Notice: Local environment: 'master' doesn't match server specified node environment 'production', switching agent to 'production'.
Info: Retrieving pluginfacts
Info: Retrieving plugin
Info: Loading facts
Info: Caching catalog for node1.localpuppet.com
Info: Applying configuration version '1490712072'
Notice: Applied catalog in 0.67 seconds
我是傀儡新手。我需要做哪些改变?
答案 0 :(得分:4)
这是一个真正有趣的"在过去几年出现的Puppet Enterprise怪癖。您必须在PE分类器中指定允许在puppet.conf
或puppet agent -t --environment
参数中指定其目录环境的节点。
在分类器中的代理程序指定的环境选项卡中(您可以在上图的底部看到它),您可以为所有节点启用它。通过添加规则,选择name
事实,使用正则表达式(~
),然后使用正则表达式匹配所有字符(.*
)来执行此操作。填写完成后,PE分类器将为您提供许多匹配的节点。它应该是所有订阅你的主人的。请务必点击右下角以更新您的规则。您的节点现在可以从配置文件或CLI参数中使用master
而不是production
。
话虽如此,如果你这样做是为了避免在使用Code Manager时在你的控制库中命名你的默认Git分支production
,你应该只是重命名分支,因为这更容易。