![服务器上出现错误 400:环境必须纯字母数字,而不是“puppet-ca”](https://linux22.com/image/660803/%E6%9C%8D%E5%8A%A1%E5%99%A8%E4%B8%8A%E5%87%BA%E7%8E%B0%E9%94%99%E8%AF%AF%20400%EF%BC%9A%E7%8E%AF%E5%A2%83%E5%BF%85%E9%A1%BB%E7%BA%AF%E5%AD%97%E6%AF%8D%E6%95%B0%E5%AD%97%EF%BC%8C%E8%80%8C%E4%B8%8D%E6%98%AF%E2%80%9Cpuppet-ca%E2%80%9D.png)
我想分享这个错误,因为我已经浪费了一天的时间。所以我认为我可能对其他人有用
基础设施团队的同事帮我设置了一个 puppet 服务器。他们又给我提供了一个 windows 2008 r2 让我自己安装 puppet 代理。
我尝试运行 Puppet Agent,它总是显示消息
服务器上出现错误 400:环境必须纯字母数字,而不是“puppet-ca”
答案1
根本原因是 puppet 主服务器上的 puppet 版本是 3.8.1,但是我在 puppet 代理上安装了 puppet 4.1.0。
Puppet master 版本必须大于或等于 puppet agent 版本。解决方案是我卸载 puppet agent 上的 puppet,然后重新安装 puppet 版本 3.8.1。
您可以在以下链接找到先前版本的下载:https://puppet.com/misc/pe-files/previous-releases
答案2
就我而言,这个问题是由于 puppet.conf 中缺少环境变量引起的。使用 --environment production 运行后,一切正常。