gpt4 book ai didi

postgresql - Chef 和 postgres;如何指定密码?

转载 作者:行者123 更新时间:2023-11-29 11:32:20 25 4
gpt4 key购买 nike

我是 Chef 的新手,我正在尝试解释文档。我已将 opscode postgresql 配方添加到我的 chef-solo 环境中。 postgresql 似乎安装和启动都很好,但不幸的是我无法登录服务器,导致它几乎无法使用。

文档中提到了这一点:

The following node attribute is stored on the Chef Server when using chef-client. Because chef-solo does not connect to a server or save the node object at all, to have the password persist across chef-solo runs, you must specify them in the json_attribs file used. For Example:

{
"postgresql": {
"password": {
"postgres": "iloverandompasswordsbutthiswilldo"
}
},
"run_list": ["recipe[postgresql::server]"]
}

但是,我不知道“json_attribs”文件是什么。 Recipe 本身不包含这样的文件,我尝试使用谷歌搜索,但没有结果。我也尝试创建这样一个文件并将其粘贴在我的目录结构中的随机位置,但当然这没有用。

“没有用”,我的意思是我启动了 vagrant,ssh 进入,然后尝试“psql -U postgres -W”,然后输入我创建的密码......但总是得到身份验证错误。另请注意,我知道我为密码提供的值(例如,在上面的示例中代替“iloverandompasswordsbutthiswilldo”)应该是密码的 MD5 哈希,而不是明文,所以这就是我提供的。

最佳答案

由于您使用的是 Vagrant,因此您应该适本地将以下内容添加到您的 Vagrantfile 的 config.vm.provision :chef_solo do |chef| 部分(其中一个或多个 chef. add_recipe 调用也存在):

config.vm.provision :chef_solo do |chef|
# other stuff... like: chef.add_recipe "postgresql::server"
chef.json = {
"postgresql" => {
"password" => {
"postgres" => "iloverandompasswordsbutthiswilldo"
}
}
}
end

chef.json 散列是所有节点特定属性所在的位置,并在 Vagrant 运行的供应期间移交给 chef-solo,请参阅 Vagrant doc获取更多信息。

关于postgresql - Chef 和 postgres;如何指定密码?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15195467/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com