我在puppet.confconfiguration了dynamic环境,例如:
modulepath = $confdir/environments/$environment/modules manifest = $confdir/environments/$environment/site/manifests/site.pp environmentpath = /etc/puppetlabs/puppet/environments
我的environments目录具有manifest/site.pp文件和modules目录的环境。
然而,当我运行代理sudo puppet agent --test --environment=test我得到以下错误(我没有在代理的puppet.conf文件中设置production环境):
Warning: Local environment: "test" doesn't match server specified node environment "production", switching agent to "production".
它只适用于生产环境的模块。
我正在使用木偶企业3.7.3。
所以事实certificate,因为我使用的是PE版本,节点被自动分类到production环境中,因此是问题所在。 将环境更改为分类部分中agent-specified 。
我没有解释,但我有3.73和使用环境没有问题。 我的puppet.conf文件包含: environmentpath=$confdir/environments但不包含manifest或modulepath条目。
模块和清单path在环境目录的根目录下的environment.conf中定义:
manifest = manifests/ modulepath = modules:site
至于代理,我修改了节点上的puppet.conf来指定环境,但是你所说的参数应该可以工作(它清楚地告诉代理根据你提供的错误使用哪个环境)。