2014-09-30 56 views
3

這似乎是一個容易的事情來解決,但我不能讓刀爲我創建一個新的用戶。我是管理儀表板的用戶主廚服務器。我用root用戶創建了一個具有初始命令knife configure --initial的管理員用戶。現在我試圖爲名爲「myuser」的本地用戶創建一個api用戶。廚師刀創建未能創建API用戶

所以,我這樣做:

[email protected]:~$ knife configure --initial 
Overwrite /home/myuser/.chef/knife.rb? (Y/N)y 
Please enter the chef server URL: [https://chefserver:443] 
Please enter a name for the new user: [myuser] 
Please enter the existing admin name: [admin] 
Please enter the location of the existing admin's private key: [/etc/chef-server/admin.pem] 
Please enter the validation clientname: [chef-validator] 
Please enter the location of the validation key: [/etc/chef-server/chef-validator.pem] 
Please enter the path to a chef repository (or leave blank): 
Creating initial API user... 
Please enter a password for the new user: 
ERROR: The data in your request was invalid 
Response: Field 'display_name' missing 

爲什麼不能創建一個API的用戶?

+0

有沒有機會嘗試使用新的Chef Server 12候選版本? – coderanger 2014-09-30 22:43:26

+0

我正在使用:chef-server-core_12.0.0-rc.4-1_amd64.deb – Kryten 2014-10-01 20:04:12

回答

4

knife configure此時不適用於廚師服務器12。爲Chef Server 12執行初始設置的最簡單方法是使用高級WebUI功能。這對於多達25個節點是免費的,否則您應該向Chef Software諮詢價格。您可以使用命令行工具來完成設置,但目前它尚未記錄,對於大多數人來說並非真正可行。

+1

謝謝!我有通過CLI設置的網絡界面,報告和分析。我對使用刀而不是chef-server-ctl感到困惑。現在只是我還是opscode文檔處於流動狀態?我無法找到安裝Chef Server 12 +節點配置+工作站設置的實用文章。 – Kryten 2014-10-01 20:47:42

+0

它僅僅是一個名稱上的候選版本,它應該只是被稱爲測試版。我仍然希望UX在發佈之前會有所改善,但現在它肯定很糟糕。就目前而言,'knife configure'的替代品是您將在組織配置屏幕中看到的入門工具包鏈接。自從我寫這個系統以來,我有點偏頗,但我認爲它比舊方法好得多:) – coderanger 2014-10-01 21:53:12

+0

您也可以使用Chef Server 12系統本身的chef-server-ctl工具來創建用戶。這是「刀配置」的替代品。 – 2014-10-06 03:38:54

0

下面的註釋假設您已經在主服務器中爲該組織創建了組織和用戶。並且您將用戶和組織.pem密鑰複製到本地工作站,並且現在已準備好設置工作站。

用戶是管理員,組織是bwengineering,用戶必須屬於該組織。主服務器的FQDN是master.dev

還要注意,你需要帶過來使用這方面的大師CRT文件:

knife ssl fetch https://master.dev 

確保cd到廚師回購文件夾做這一切。

廚師12 不要使用knife configure --initial。而是將參數作爲標誌傳入。就像這樣:

knife configure -s https://master.dev/organizations/bwengineering/ -r ~/chef-repo --admin-client-key ~/chef-repo/.chef/admin.pem --admin-client-name admin -c ~/chef-repo/.chef/knife.rb --validation-client-name bwengineering-validator --validation-key ~/chef-repo/.chef/chef-validator.pem 

這個出口後,chefdk二進制文件到你的.bash_profile,然後引導你的節點。如何做後者取決於您的節點配置。如果你可以以root身份登錄,那麼直接使用它,否則使用--sudo標誌。

+0

這仍然不是正確的解決方案,你不應該使用這個。請刪除這個答案。正確的解決方案如上所述,使用Web UI生成的入門工具包或從頭開始製作knife.rb。 – coderanger 2015-07-01 05:32:59

+0

@coderanger:謝謝!我想知道使用這樣的刀配置knife.rb和在文本編輯器中從頭開始創建knife.rb的區別。它對系統有什麼作用?你擔心API用戶和密鑰嗎?謝謝。 – einarc 2015-07-02 00:54:40

+0

因爲該命令已被棄用,並且確實沒有給你帶來太多。你可以自己填寫這個模板https://github.com/chef/chef/blob/master/lib/chef/knife/configure.rb#L78-L85。當所有的操作都是現在寫入文本文件時,沒有理由通過使用該命令來混淆人們。 – coderanger 2015-07-02 19:04:52