我不清楚廚師如何以可靠和可預見的方式最好地管理祕訣。廚師管理祕密
我試過的是把所有的祕密邏輯放在一個單獨的食譜,然後取決於所有的食譜,它是管理的祕密。
這樣 - 我想 - 祕密可以在一個地方以一致的方式處理。另一個好處是我不必改變現有的食譜。
這個祕密食譜是從加密的數據包中提取祕密並使用它來設置密碼/祕密屬性。爲了防止祕密上傳到Chef服務器,我將所有不想上傳的屬性列入黑名單。
對於一些食譜,這會產生所需的效果,但對於其他食譜,結果變得非常難以預測。我現在確信,這不是解決問題的方法。推薦的方法是什麼?我不想改變現有的食譜。
因此,舉例來說,如果有菜譜的東西,如
execute 'change first install root password' do
# Add sensitive true when foodcritiC#233 fixed
command '/usr/bin/mysqladmin -u root password \'' + \
node['mariadb']['server_root_password'] + '\''
action :nothing
not_if { node['mariadb']['server_root_password_2'].empty? }
end
什麼是打開屬性['mariadb']['server_root_password']
在祕密和檢索它從加密的數據包價值的最佳方式是什麼?我不想更改食譜,也不想將密碼上傳到服務器。
更新
我覺得問題在blacklist_node_attrs
錯誤的結果,導致列入黑名單的屬性是廚師運行期間不可用。
但是,整體屬性方法與祕密相結合在廚師看來很大程度上還未開發。這太神奇了。
目前的狀態是,如果你想管理的祕密,你將不得不改變現有的食譜。如果您嘗試使用屬性文件和配方文件中的食譜屬性,則會發現結果是隨機的。在某些情況下,它會起作用,而在其他情況下則不會。
這是我認爲https://coderanger.net/chef-secrets/的帖子。這是對我的問題的徹底回答。 – onknows
同時查看鏈接的鏈接,這些鏈接更多地更新了幾年,並且更深入地討論了這些選項。我還有一篇關於將hashicorp vault與廚師合用的更近期文章,但現在它只是一個提議。敬請關注? – coderanger