
chef
Linuxデスクトップ環境設定用の料理書を作成したいと思います。
kitchen
byを作成し、knife solo init chef-repo
仕様hello
とノードファイルを作成しましたlocalhost.json
。
次に、次を実行します。
$ knife solo cook localhost
そして、このエラーが発生しました:
Running Chef on localhost...
Checking Chef version...
ERROR: Network Error: Connection refused - connect(2) for "localhost" port 22
Check your knife configuration and network settings
localhostでChefホストとクライアントを使用している場合でも、SSHデーモンを実行する必要がありますか?
Linux Mint 16
VirtualBox環境で使用しています。これは私の~/.chef/knife.rb
設定ファイルです。
log_level :info
log_location STDOUT
node_name 'ironsand'
client_key '/home/ironsand/.chef/ironsand.pem'
validation_client_name 'chef-validator'
validation_key '/etc/chef-server/chef-validator.pem'
chef_server_url 'https://vm-mint:443'
syntax_check_cache_path '/home/ironsand/.chef/syntax_check_cache'
答え1
使ってみましたか?カールソロ、ツールは次のことを意味します「1人シェフをシェフ-サーバーコラボレーションほど強力にする」。あなたが見つけたように、基本的な仮定はあなたが提供するということです。その他の機械SSHで接続します。その後、Knife-soloはomnipack(デフォルト)を介してChef-clientをインストールし、必要なすべてのレシピをシステムに配置し、最後にChef omnipackでChef-soloを実行します。
ドキュメントから:「knife Solo Cookは現在のキッチン(Chefリポジトリ)をターゲットホストにアップロードし、そのホストでChef-Soloを実行します。」
Chef-soloを実行するために必要なものは、おおよそ次のとおりです。
- レシピ(使用可能)本棚および
berks vendor
(v3)またはberks download
(v2)) - マニュアルのsolo.rb設定を指します(ねえ)
- それはおそらく、属性のオーバーライドのためのJSONファイルでしょう。
管理するローカルホスト、このものを集めて実行するだけで十分ですchef-solo -c solo.rb -J dna.json
。
ポイント:Knife-soloを使用せずにローカルホストでChefを使用できます。