2014-02-11 73 views
0

試圖安裝廚師工作站要設置廚師工作站

knife configure -i 

以前它的工作,但現在它不工作,我無法創建knife.rb它說以下錯誤:

/opt/chef/embedded/lib/ruby/gems/1.9.1/gems/chef-11.10.0/lib/chef/config_fetcher.rb:53:in `realpath': Not a directory - /home/ubuntu/.chef/knife.rb (Errno::ENOTDIR) 
    from /opt/chef/embedded/lib/ruby/gems/1.9.1/gems/chef-11.10.0/lib/chef/config_fetcher.rb:53:in `realpath' 
    from /opt/chef/embedded/lib/ruby/gems/1.9.1/gems/chef-11.10.0/lib/chef/config_fetcher.rb:53:in `config_missing?' 
    from /opt/chef/embedded/lib/ruby/gems/1.9.1/gems/chef-11.10.0/lib/chef/knife.rb:350:in `block in locate_config_file' 
    from /opt/chef/embedded/lib/ruby/gems/1.9.1/gems/chef-11.10.0/lib/chef/knife.rb:348:in `each' 
    from /opt/chef/embedded/lib/ruby/gems/1.9.1/gems/chef-11.10.0/lib/chef/knife.rb:348:in `locate_config_file' 
    from /opt/chef/embedded/lib/ruby/gems/1.9.1/gems/chef-11.10.0/lib/chef/knife.rb:418:in `configure_chef' 
    from /opt/chef/embedded/lib/ruby/gems/1.9.1/gems/chef-11.10.0/lib/chef/knife/configure.rb:65:in `configure_chef' 
    from /opt/chef/embedded/lib/ruby/gems/1.9.1/gems/chef-11.10.0/lib/chef/knife.rb:173:in `run' 
    from /opt/chef/embedded/lib/ruby/gems/1.9.1/gems/chef-11.10.0/lib/chef/application/knife.rb:135:in `run' 
    from /opt/chef/embedded/lib/ruby/gems/1.9.1/gems/chef-11.10.0/bin/knife:25:in `<top (required)>' 
    from /usr/bin/knife:23:in `load' 
    from /usr/bin/knife:23:in `<main>' 
+0

那麼,什麼是你的問題? – sethvargo

回答

4

我懷疑「.chef」目錄缺失。試試這個:

mkdir ~/.chef 

如何設置我的廚師工作站

首先下載從我的廚師服務器

ssh [email protected] sudo cat /etc/chef-server/admin.pem   > ~/.chef/admin.pem 
ssh [email protected] sudo cat /etc/chef-server/chef-validator.pem > ~/.chef/chef-validator.pem 

參考產生時,這些文件的管理和確認鍵〜/ .chef/knife.rb file:

knife configure --server-url https://chefserver \ 
       --user admin \ 
       --key ~/.chef/admin.pem \ 
       --validation-client-name chef-validator \ 
       --validation-key ~/.chef/chef-validator.pem 

更新:Che f服務器12

廚師12不再創建默認的「管理員」用戶。相反,您必須創建一個用戶並將其與組織關聯。

創建一個名爲「爲myuser」用戶並保存鍵:

ssh [email protected] sudo chef-server-ctl user-create myuser myName mySurname [email protected] XXXXXX > ~/.chef/myuser.pem 

創建一個名爲「演示」,並稱「爲myuser」作爲管理員,並保存驗證密鑰的組織:

ssh [email protected] sudo chef-server-ctl org-create demo "Demo organisation" -a myuser > ~/.chef/demo-validator.pem 

並生成刀配置文件:

knife configure --server-url https://chefserver/organizations/demo \ 
       --validation-client-name demo-validator \ 
       --validation-key ~/.chef/demo-validator.pem \ 
       --user myuser \ 
       --key ~/.chef/myuser.pem 

最後,廚師12尊重SSL證書。下面的命令創建的信任關係:

knife ssl fetch 

或者,您也可以禁用SSL證書驗證:

echo "ssl_verify_mode :verify_none" >> ~/.chef/knife.rb