工作用於執行遠端執行工作、套用狀態和啟動 Salt 執行器。可以在 [工作] 工作區中建立、設定和儲存工作設定以供重複使用。工作通常適用於需要多次自動化和執行的系統作業,從而節省設定時間。

例如,您可能有一項工作,即建立和部署虛擬機器並安裝一組基本應用程式。每次需要部署新的虛擬機器時都可以執行此工作,以確保將一組相同的應用程式和組態套用至每個部署。

如需大致瞭解如何將 [工作] 工作區與 SaltStack Config 中的其他工作區搭配使用以建立和使用工作進行組態管理,請參閱〈SaltStack Config 工作流程〉

可以從 [工作] 工作區、[部屬節點] 工作區或 SaltStack Config 使用者介面的其他畫面中執行工作,具體取決於工作的特性。此外,還可以定期執行工作,也可以僅在需要時執行工作。通常,僅在需要時執行的工作稱為臨機工作。

如需有關執行工作的詳細資訊,請參閱:

  • 執行工作,瞭解在 [工作] 工作區中執行工作的相關資訊
  • 〈部屬節點〉,瞭解在 [部屬節點] 工作區中執行工作的相關資訊
  • 〈排程〉,瞭解按排程執行工作的相關資訊
備註: 作為 VMware 移除有問題術語計劃的一部分,Salt 主節點一詞將在 SaltStack Config 及相關產品和說明文件中取代為更貼切的詞。此術語更新可能需要幾個發行週期才能全面完成。

工作需求

[工作] 工作區中的每項工作都有預先定義的設定。您可以編輯現有工作的相關設定,也可以使用自己的唯一設定建立新工作。

為了使工作能夠執行,則必須包括:

  • 函數 (工作要完成的任務)
  • 目標、一個 Salt 主節點或多個 Salt 主節點
  • 以角色為基礎的權限

可以在工作設定中定義目標,也可以將目標保持未定義,以便在每次執行工作時選取目標。定義工作目標還會防止此工作在不應執行該工作的節點上執行。如需詳細資訊,請參閱〈部屬節點〉

透過 [工作] 工作區,可以定義對每個工作的角色型存取權。除了定義對工作的角色存取權外,還必須指派角色權限以在角色編輯器中執行相應的工作。如需詳細資訊,請參閱〈角色和權限〉

可以在 [工作] 工作區中建立新工作和編輯現有工作。定義工作設定後,您可以執行臨機工作,也可以建立排程以在未來執行工作。如需詳細資訊,請參閱〈排程〉

SaltStack Config 包括執行命令控制,可讓您執行單一命令而無需定義可重複使用的工作。這有助於快速執行命令,或執行不屬於日常工作流程一部分的一次性工作,例如疑難排解時或初始設定期間。如需詳細資訊,請參閱〈執行命令〉

此外,還可以定義哪些角色能檢視、編輯、執行和刪除不同的工作。

存取 [工作] 工作區

若要使用 [工作] 工作區,請按一下側邊功能表上的組態 > 工作

建立工作

建立新工作:

  1. 在 [工作] 工作區中,按一下建立工作
  2. 輸入新工作的詳細資料。輸入的詳細資料取決於您要建立的工作類型。如需詳細資訊,請參閱工作設定
  3. 按一下儲存。工作現在可以執行。

執行工作

執行臨機工作:

  1. 在 [工作] 工作區中,按一下要執行的工作旁邊的功能表 menu-icon-light
  2. 按一下立即執行
  3. 在快顯視窗中,選取要執行工作的目標。
    備註: 如果工作已設定為包括目標或 Salt 主節點,系統會顯示此項以進行確認。
  4. 可以根據需要選取其他選項。
    • 設定通知喜好設定
    • 選取 [作為測試執行] (試執行),以根據需要作為測試執行工作。
  5. 按一下立即執行
    備註: 也可以從 [部屬節點] 工作區執行工作。請參閱 〈部屬節點〉

搜尋工作

若要檢視迄今為止已建立的可用工作的清單,請存取 [工作] 工作區。

依預設,一個頁面上一次僅顯示 20 項工作。若要檢視更多工作,請按一下工作資料表底部的每頁項目數功能表,然後選取您要檢視的所需工作數目。

尋找特定工作:

  1. 在 [工作] 工作區中,按一下要搜尋之資料行所對應的篩選器按鈕 filter-icon
  2. 開始輸入搜尋準則,以立即查看篩選出的資料列。例如,可以透過篩選函數資料行,依工作中所涉及的 Salt 模組搜尋工作。
    備註: 也可以按一下任何資料行名稱,以遞減順序對資料列進行排序。再次按一下即可顛倒順序。如需有關篩選的詳細資訊,請參閱 對資料表資料行進行篩選和排序

對資料表資料行進行篩選和排序

可以透過選取每個資料行的篩選器圖示 filter-icon 並選取或輸入篩選準則來篩選每個資料行。若要清除篩選器,請按一下工作資料表上方的清除篩選器按鈕。

也可以透過選取資料行名稱對資料行進行排序。若要自訂在資料表中顯示哪些資料行,請按一下資料表左下角的顯示資料行按鈕 show-columns-icon

備註: 無論用來登入的裝置為何,指定使用者的篩選器、資料行排序和資料行可見度都會一直保留。這意味著,當特定使用者登入後,該使用者會在下次登入時看到相同的篩選、排序和可見度設定,直到清除篩選器或變更排序和可見度設定。

檢視工作傳回資料

檢視工作傳回資料:

  1. 在側邊功能表中,依序按一下活動已完成,以查看已完成工作的清單。
  2. JID 資料行中選取工作識別碼,以檢視工作傳回詳細資料。如需詳細資訊,請參閱〈工作傳回資料〉

編輯工作

更新或變更工作:

  1. 在 [工作] 工作區中,選取工作。
  2. 視需要編輯工作詳細資料,然後在完成時按一下儲存

定義工作權限

身為管理員,您可以限制哪些使用者可以執行特定工作。定義這些權限:

  1. 在 [工作] 工作區中,選取工作以開啟該工作的詳細資料。
  2. 在工作詳細資料頁面中,按一下角色存取權
  3. 在對話方塊中,選取要針對不同角色啟用的存取層級,然後按一下儲存
  4. 在工作詳細資料頁面中,按一下儲存
    備註: 除了定義對工作的角色存取權外,還必須指派角色權限以在角色編輯器中執行相應的工作。如需詳細資訊,請參閱 〈角色和權限〉

工作設定

根據下列選項定義工作設定。

  • 名稱 - 輸入工作的名稱。這將顯示在 [工作]、[部屬節點] 和 [活動] 工作區以及角色編輯器中。
  • 說明 - 輸入工作的說明 (可選)。此說明將顯示在 [工作] 工作區的工作清單中。
  • 命令 - 指定要執行的命令,從以下內容進行選擇:
    • salt - 定義要在目標部屬節點群組上執行的工作。
    • salt-run - 定義要在一個 Salt 主節點或一組 Salt 主節點上執行的工作。
    備註: SaltStack Config 包括執行命令控制,可讓您執行單一命令而無需定義可重複使用的工作。這有助於快速執行命令,或執行不屬於日常工作流程一部分的一次性工作,例如疑難排解時或初始設定期間。如需詳細資訊,請參閱 〈執行命令〉
  • 目標 - 目標是指一或多個 Salt 主節點中的一組部屬節點,將為其套用工作的 Salt 命令。Salt 主節點也可以像部屬節點一樣進行管理,如果正在執行部屬節點服務,也可以成為目標。在命令中選取 salt 後,可以選擇性地指定要執行工作的目標部屬節點群組。如果將此欄位保留空白,則每次工作執行時,系統都會提示您選取目標。
  • 所有主節點 - Salt 主節點是用於向部屬節點發出命令的中央節點。在命令中選取 salt-run 後,可以指定應對其執行工作的 Salt 主節點。依預設,會選取所有主節點。如果關閉此選項,則會顯示主節點功能表。

    salt-run 工作也稱為 Salt 執行器。Salt 執行器是用於在 Salt 主節點上執行便利函數的模組。如需有關使用 salt-run 的詳細資訊,請參閱工作設定

  • Salt 主節點 - 在命令中選取 salt-run 後,並且所有主節點處於關閉狀態時,將會顯示主節點功能表。按一下此功能表,然後選取要對其執行工作的特定 Salt 主節點。如果需要,可以選取多個 Salt 主節點。
  • 函數 - 輸入函數以定義工作執行時發生的情況。可以定義單一遠端執行工作、狀態檔案工作或 Salt 執行器工作。如需 Salt 函數的清單,請參閱 Salt 模組參考
    • 單一遠端執行工作 - 若要定義單一遠端執行工作,請在工作設定中包括一個函數和任何必要的引數。
    • 狀態檔案工作 - 狀態檔案工作會向目標套用狀態,並且以至少一個命令為基礎。狀態函數是狀態模組內包含的一種函數,可以管理對系統套用特定狀態的情況。狀態函數會頻繁呼叫一或多個執行模組,以執行指定的工作。highstate 會套用在 top 檔案中定義的所有狀態。可以在檔案伺服器中檢視和新增狀態檔案。請參閱〈檔案伺服器〉

      若要將狀態檔案套用至工作,請使用 state.apply 函數。若要執行 highstate,請在工作設定中使用 state.applystate.highstate 函數。

      將狀態呼叫新增至工作時會顯示其他欄位,您可以在其中選取要套用的狀態檔案。也可以 JSON 格式傳遞可選 pillar 覆寫。

      備註: 工作頁面上提供的 pillar 資料隨工作一起傳送,並且其他已驗證的部屬節點可能會看到該資料。為了增強資料保護,請改為在標準 pillar 中指派機密資料。請參閱 Pillar

      如需有關 Salt 狀態的詳細資訊,請參閱 Salt 說明文件:如何使用 Salt 狀態?

    • Salt 執行器 - salt-run 工作將套用至一個 Salt 主節點或一組 Salt 主節點。salt-run 工作也稱為 Salt 執行器。Salt 執行器是用於在 Salt 主節點上執行便利函數的模組。可以使用 Salt 執行器執行協調、遠端支援部屬節點、呼叫 webhook 等。它們對於集中執行工作或從一個中心起點執行工作非常有用。例如,可以將 highstate 套用至與指定 Salt 主節點相關聯的所有部屬節點。

      若要設定協調執行器工作,請使用 state.orchestrate 函數。將協調呼叫新增至工作時會顯示其他欄位,您可以在其中列出要套用的協調檔案。也可以 JSON 格式傳遞可選 pillar 覆寫。

      備註: 工作頁面上提供的 pillar 資料隨工作一起傳送,並且其他已驗證的部屬節點可能會看到該資料。為了增強資料保護,請改為在標準 pillar 中指派機密資料。請參閱 Pillar

      如需有關 Salt 執行器的詳細資訊,請參閱 Salt 執行器參考

  • 環境 - 選取狀態檔案或協調檔案所在的環境。這是檔案伺服器中根目錄的子目錄。請參閱〈檔案伺服器〉
  • 測試 (試執行) - 執行測試工作並產生模擬工作傳回。如果選取測試,該工作將不會執行,並且不會進行任何變更。如果此選項保持未選取狀態,可以稍後在執行工作時選擇將工作作為測試執行。測試 (試執行) 僅適用於某些函數。如需詳細資訊,請連絡管理員。