透過 [Pillar] 工作區,可以建立和管理以原生方式儲存在 SaltStack Config 中的 pillar 資料。Pillar 是在 Salt 主節點上定義並使用目標傳遞到一或多個部屬節點的資料結構。僅允許將機密的目標資料安全地傳送到相關部屬節點。Pillar 有助於限制使用者存取私人資料。例如,可以使用 pillar 以允許使用者執行需要對外部服務進行驗證的工作,而無需存取這些驗證認證本身。在這種情況下,可以為使用者指派對指定工作和目標的存取權,而不是對包含敏感驗證詳細資料的 pillar 的存取權。
pillar 資料會在 SaltStack Config 資料庫中加密,不會以純文字形式儲存。它會在傳輸期間加密,並且僅對 pillar 目標設定中指定的部屬節點可見。如需有關將 pillar 指派給目標的詳細資訊,請參閱指派 pillar。
目標是指一或多個 Salt 主節點中的一組部屬節點,將為其套用工作的 Salt 命令。Salt 主節點也可以像部屬節點一樣進行管理,如果正在執行部屬節點服務,也可以成為目標。部屬節點是執行部屬節點服務的節點,可以接聽 Salt 主節點的命令並執行請求的工作。如需詳細資訊,請參閱〈部屬節點〉。
可以將 pillar 資料儲存到以下任一項中:
- [Pillar] 工作區中的私人 pillar
- 工作的設定
- API (RaaS) 伺服器中的其他根目錄
在工作內儲存的 pillar 資料不及標準 pillar 中的資料安全,因為任何具有工作存取權限的使用者也可以檢視 pillar 資料。工作用於執行遠端執行工作、套用狀態和啟動 Salt 執行器。如需詳細資訊,請參閱〈工作〉。
如需有關 Salt 中 pillar 的詳細資訊,請參閱 Salt pillar 逐步解說。
在 [Pillar] 工作區中,可以建立新 pillar 並將 pillar 指派給目標。將 pillar 指派給目標時,也可以選擇重新整理 pillar。
存取 [Pillar] 工作區
若要使用 [Pillar] 工作區,請按一下側邊功能表上的組態 > Pillar。
建立 pillar
建立新 pillar:
- 在 [Pillar] 工作區中,按一下建立。
- 輸入 JSON 格式的 pillar 資料,然後按一下儲存。
指派 pillar
將 pillar 指派給特定目標:
-
在 [Pillar] 工作區中,選取 pillar。
-
按一下更新目標。
-
在對話方塊中,選取要將 pillar 套用到的目標。
除了選取目標外,還要選取 [重新整理 pillar],以便該 pillar 能夠立即可供所選目標使用。
-
按一下儲存。
現在,pillar 資料可供所選目標中的所有部屬節點使用。
[Pillar] 和 [所有部屬節點] 目標
[所有部屬節點] 目標為唯讀,無法為其指派 pillar 資料。若要將 pillar 資料指派給所有部屬節點,請建立與所有部屬節點 (*
) 相符的新目標。如需詳細資訊,請參閱〈部屬節點〉。
值優先順序
如果在多個來源中定義了相同的 pillar 資料,SaltStack Config 將按以下優先順序選取要套用的資料:
- 直接在工作上傳遞的值
- SaltStack Config 使用者介面中的值 (在 [Pillar] 工作區中)
- 其他 pillar 根目錄中的值
可以透過在 Salt 主節點組態中調整 pillar_roots
順序來變更此行為。
pillar 資料格式
外部 pillar 資料必須採用 JSON 格式。目前不支援 YAML。
Pillar 相依性
檔案
pillar 資料有助於將資料傳遞至狀態、反應器和其他類型的檔案。請確保在建立或更新 pillar 資料時一併更新任何對應檔案中的 pillar 參考。請參閱〈檔案伺服器〉。
目標
在目標上執行相關聯的工作時,會使用連結至目標的 pillar 資料。請確保在更新 pillar 資料時一併重新整理其相關聯目標上的 pillar。請參閱指派 pillar。