在 Service Manager 中使用工作流程自動化 IT 程式

重要

此版本的 Service Manager 已終止支援。 建議您升級至 Service Manager 2022

您可以使用 Service Manager,自動化先前需要手動操作的許多系統管理程序。 使這項自動化作業得以實現的功能是 Windows Workflow Foundation (WF) 工作流程。 WF 工作流程包含工作流程活動,也稱為WF活動,以區別它們與其他 Service Manager 活動類型。 每個工作流程活動都會執行一項功能,例如將使用者或群組加入到 Active Directory 網域服務 (AD DS) 中的群組、建立 Service Manager 事件,或是執行指令碼。 您可以將 WF 活動組譯成執行一組工作的工作流程,也可以指定工作流程執行的條件。

本文說明 Service Manager 中可用來自動化程式的功能。 其中說明工作流程與管理組件之間的關聯性,並說明 Service Manager Authoring Tool 在預設活動程式庫中提供的 Windows Workflow Foundation (WF) 活動。

工作流程和管理元件

Service Manager 使用儲存在管理組件中的觸發條件資訊執行 Windows Workflow Foundation (WF) 工作流程。 針對每個工作流程,管理組件會包含一個資料來源模組和一個寫入動作模組。 資料來源模組定義觸發工作流程執行的條件,而寫入動作模組則定義工作流程動作。 管理組件也會儲存工作流程使用的任何指令碼資訊。

檔案和格式

除了管理組件檔案外,WF 工作流程還需要數個支援檔案:

  • 撰寫環境檔案。 當您建立或編輯工作流程時,這些檔案會儲存原始工作流程資訊,例如內容值和工作流程邏輯。

  • 已編譯的工作流程組件檔 (workflowname.dll)。 當您在 Service Manager Authoring Tool 中儲存管理組件時,此工具同時會將所有原始工作流程檔案 (XOML 和 CS 檔案) 編譯為工作流程組件檔 (DLL)。

  • 活動組件檔 (activityname.dll)。 這些檔案包含可用工作流程活動的定義。 撰寫工具無法修改活動元件檔案。

若要在 Service Manager 控制台環境中實作具有工作流程的管理元件,請確定 Service Manager 可以存取工作流程元件檔和活動元件檔案,以及管理元件本身。 下圖顯示工作流程執行時,各種檔案之間的互動方式。

管理元件和工作流程檔案的圖例。

工作流程的觸發條件

工作流程的數據源模組會定義工作流程觸發程序條件。 工作流程可以具有下列兩種觸發條件的其中一種:

  • 計時器。 此選項 (也稱為「 排程」) 會在一週指定的天數或依其他指定的間隔觸發工作流程。

  • 資料庫查詢。 此選項 (也稱為「 訂閱」) 會在特定的物件類別發生特定類型的變更時觸發工作流程。 您可以從任何安裝的管理組件中選取類別,而且可以選擇三種變更類型:

    • 當建立類別的新執行個體時

    • 當更新類別的執行個體時

    • 當刪除類別的執行個體時

活動程式庫

Service Manager 撰寫工具中的活動連結庫提供許多工作流程活動,可用來建置基本的 Windows Workflow Foundation (WF) 工作流程。 每個活動都會執行離散函式,例如在工作流程中建立迴圈結構、執行腳本,或建立 Service Manager 事件。 活動程式庫包含下列活動類型:

  • Active Directory 活動 - 執行 Active Directory 功能的活動,例如將使用者或電腦新增至群組。

  • 控制流程活動 - 提供工作流程結構的活動,例如迴圈和 if-else 分支。

  • Virtual Machine Manager 活動 - 您可以用來建置工作流程,以使用虛擬機執行簡單作業的活動。

  • 腳本活動 - 執行 Windows PowerShell、命令行或 Microsoft Visual Basic Scripting Edition (VBScript) 腳本的活動。

  • Service Manager 活動 - 執行 Service Manager 函式的活動,例如建立或更新事件。

    下表列出撰寫工具可用的預設活動:

Active Directory 活動 Description
將 AD DS 電腦新增至群組 使用此活動可將電腦新增到 Active Directory 網域服務 (AD DS) 中的安全性群組。

當您使用此活動時,請確定 Service Manager 工作流程帳戶有足夠的許可權可修改 AD DS 中的安全組。
將 AD DS 使用者新增至群組 使用此活動可將使用者新增到 AD DS 中的安全性群組。

當您使用此活動時,請確定 Service Manager 工作流程帳戶有足夠的許可權可修改 AD DS 中的安全組。
控制流程活動 Description
延遲 使用此活動可在工作流程中的活動之間加進延遲。
For Each 迴圈 使用此活動可重複特定一組活動達定義的反覆運算次數。
IfElse 使用此活動可根據布林值 (True/False) 條件控制工作流程內的活動序列。 您可以使用前面活動 (例如指令碼活動) 的結果作為條件。
平行 使用此活動可將活動序列分成兩個同時進行的活動序列分支。
虛擬機器管理活動 Description
取得 VM 使用此活動可從 System Center Virtual Machine Manager (VMM) 程式庫擷取一或多個虛擬機器識別碼的清單。
移動 VM 使用此活動可將虛擬機器從 VMM 程式庫移到維護主機。
關閉 VM 使用此活動可關閉虛擬機器上的客體作業系統。
啟動 VM 使用此活動可啟動已停止或暫停的虛擬機器。
儲存狀態 VM 使用此活動可儲存虛擬機器的狀態,然後停止虛擬機器。
指令碼活動 Description
命令指令碼 使用此活動可執行命令列指令碼作為 WF 工作流程的一部分。
VBScript 指令碼 使用此活動可執行 VBScript 指令碼作為 WF 工作流程的一部分。
Windows PowerShell 指令碼 使用此活動可執行 Windows PowerShell 指令碼作為 WF 工作流程的一部分。
Service Manager 活動 Description
建立事件 使用此活動可建立和填入 Service Manager 事件。
取得事件 使用此活動可擷取一或多個 Service Manager 事件。
更新事件 使用此活動可將內容變更儲存到一個 Service Manager 事件。
將活動狀態設定為已完成 使用此活動可更新 Service Manager 自動化活動的狀態。

下一步