私はシェフに不慣れで、ドキュメントを解釈しようとしています。chef-solo環境にopscodepostgresqlレシピを追加しました。postgresqlは正常にインストールおよび起動するようですが、残念ながらサーバーにログインできず、サーバーがほとんど使用できなくなります。
ドキュメントにはこれが記載されています:
chef-clientを使用すると、次のノード属性がChefサーバーに保存されます。chef-soloはサーバーに接続したり、ノードオブジェクトを保存したりしないため、chef-soloの実行間でパスワードを保持するには、使用するjson_attribsファイルでパスワードを指定する必要があります。例えば:
{
"postgresql": {
"password": {
"postgres": "iloverandompasswordsbutthiswilldo"
}
},
"run_list": ["recipe[postgresql::server]"]
}
ただし、「json_attribs」ファイルが何であるかはわかりません。レシピ自体にそのようなファイルが含まれていないので、グーグルで試しましたが、結果が得られませんでした。また、そのようなファイルを作成して、ディレクトリ構造のランダムな場所に貼り付けようとしましたが、もちろんそれは機能しませんでした。
そして、「動作しなかった」とは、vagrantを起動し、sshで接続し、「psql -U postgres -W」を試し、作成したパスワードを入力したことを意味します...しかし、常に認証エラーが発生します。また、パスワードに提供する値(たとえば、上記の例の「iloverandompasswordsbutthiswilldo」の代わりに)は、プレーンテキストではなくパスワードのMD5ハッシュであると想定されていることを理解しているため、これを提供しました。