我正在使用 Chef 12.5.0,我最近发现更新后报告不再起作用。所以我执行了:
opscode-reporting-ctl reconfigure
并得到以下错误:
致命:用户“opscode-pgsql”的密码验证失败
因此,我查看了说明书 opscode-reporting 以检查说明书从何处获取其凭据。看起来它只是从节点属性中获取所有内容。这是我的第一个问题:我的节点没有任何与食谱中的属性相匹配的属性(例如报告)。因此,在我的理解中,厨师无法获得任何属性,因为在此节点上没有定义所需的属性。这是奇怪的部分,食谱以某种方式找到了一个用户进行身份验证(opscode-pgsql)。我试图更改属性文件中的密码,但这并没有帮助,并且也是错误的用户,因为属性文件中不存在所提到的用户。
我怎样才能恢复厨师报告?
出于某种原因,opscode-reporting-ctl 设置的 postgres 密码与 Chef 服务器的运行实例不同。我设法通过复制 opscode-pgsql 用户密码
/etc/opscode/chef-server-running.json
并将其粘贴到/etc/opscode-reporting/opscode-reporting-secrets.json
.