以下のようにセットアップを作成しました。これらすべてに Amazon EC2 を使用しています。
Chefサーバーがインストールされ、ナイフが構成されているubuntuサーバー12.04イオン。これは完全に正常に機能しており、ナイフ コマンドを実行でき、期待どおりの結果が得られています。
別の同様のubuntuサーバーをシェフクライアントとして使用しようとしています。シェフをインストールし、クライアントを構成しました。また、クライアントにナイフをインストールしました。インストール後にコマンドを実行したため、これが正しくインストールされていることがわかります
knife --version
私は出力を得ました
Chef: 10.16.2
これで、knife.rb ファイルが構成されました。内容は次のとおりです。 log_level :info log_location STDOUT node_name 'knife' cache_type 'BasicFile' cache_options( :path => "~/.chef/checksums" ) client_key '~/.chef/clientkey.pem'
cookbook_path [ "~/mychefrepo/cookbooks" ]
cookbook_copyright "example org"
cookbook_email "cookbooks@example.net"
cookbook_license "apachev2"
chef_server_url "http://ip-11-213-23-99:4000"
validation_key "~/.chef/validation.pem"
設定後knifeコマンドを実行すると
knife client list
次のエラーが表示されます。
エラー:キー /etc/chef/clientkeys.pem を使用して client1 としてhttp://ip-11-213-23-99:4000への認証に失敗しました
以下の疑問を解消していただきたいと思います。
- シェフサーバーにもclientkey.pemを保持することは必須ですか? はいの場合、どの場所にありますか?
- シェフクライアントでpemファイルを保持する必要がある特定の場所はありますか?
- 私は何を間違っていますか?