Share via


選擇 Azure 中的自動化服務

本文說明 Azure 環境提供的各種自動化服務。 這些服務可以將商務和作業流程自動化,並解決多個服務、系統和流程之間的整合問題。 自動化服務可以定義輸入、動作、要執行的活動、條件、錯誤處理和輸出產生。 使用這些服務,您可以依排程執行各種活動,或執行以手動需求為基礎的執行作業。 每個服務都有其獨特的優點和目標受眾。 您可以使用這些服務,將手動執行的操作工作改為自動化流程,包括:

  • 縮短執行動作的時間
  • 降低執行動作的風險
  • 節省更多人力以推動進一步的創新
  • 標準化作業

自動化作業中的類別

三大作業類別需要自動化:

  • 資源的部署和管理:使用自動化或基礎結構作為程式碼工具,以程式設計方式建立及設定,以提供可重複且一致的雲端資源部署和管理。 例如,您可以部署 Azure 網路安全性群組,並使用 Azure Resource Manager 範本或自動化指令碼建立安全性群組規則。

  • 回應外部事件:您可以根據重要的外部事件 (例如回應資料庫變更、根據提供給網頁的輸入等),診斷和解決問題。

  • 複雜的協調流程:藉由整合第一方或第三方產品,您可以定義端對端自動化工作流程。

適用於自動化的 Azure 服務

多個 Azure 服務可以滿足上述需求。 每個服務都有其優點和限制,客戶可以使用多個服務來滿足其自動化需求。

資源的部署與管理

  • 使用 Bicep 開發 Azure Resource Manager (ARM) 範本
  • Azure 藍圖
  • Azure Automation
  • Azure Automanage (用於機器設定和管理)

回應外部事件

  • Azure Functions
  • Azure Automation
  • Azure 原則客體設定 (在資源合規性狀態變更時採取動作。)

複雜的協調流程,以及整合第一方或第三方產品

  • Azure Logic 應用程式
  • Azure Functions 或 Azure 自動化。 (Azure 邏輯應用程式使用超過 400 個連接器連接其他服務,包括 Azure 自動化和 Azure Functions,可用來滿足複雜的自動化案例需求。)

Screenshot shows an Overview of Automation services.

部署和管理自動化服務

Azure Resource Manager (ARM) 範例

Azure Resource Manager 提供語言來開發 Azure 資源的可重複且一致的部署範本。 範本是一個 JavaScript 物件標記法 (JSON) 檔案,會定義專案的基礎結構和設定。 這些範本會使用宣告式語法,可讓您陳述您要部署的項目,而不需要撰寫一連串程式設計命令來建立範本。 在該範本中,您可以指定要部署的資源和這些資源的屬性。 深入了解

Bicep

我們已推出名為 Bicep 的新語言,其會提供與 ARM 範本相同的功能,但是語法更易於使用。 在部署期間,每個 Bicep 檔案都會自動轉換為 ARM 範本。 如果您正在考慮選擇基礎結構為程式碼的方式,建議使用 Bicep。 如需詳細資訊,請參閱什麼是 Bicep?

下表說明 ARM 範本和 Bicep 的適用案例和使用者:

案例 使用者
建立、管理及更新基礎結構資源,例如虛擬機器、網路、儲存體帳戶、容器等。

部署應用程式、新增標籤、指派原則、指派角色型存取控制全都是以宣告方式撰寫成程式碼,然後整合 CI\CD 工具。

管理多個環境,例如生產環境、非生產環境,以及災害復原。

以一致且可靠的方式大規模部署資源。
第一次使用 Azure 或使用 Azure 作為主要雲端的應用程式開發人員、基礎結構系統管理員、DevOps 工程師。

負責雲端基礎結構部署的 IT 工程師\雲端架構師。

Azure 藍圖 (預覽)

Azure 藍圖 (預覽) 定義一組可重複的 Azure 資源,這些資源會實作並遵循組織標準、模式和需求。 藍圖是以宣告方式來協調部署各種資源範本和其他成品,例如:角色指派、原則指派、ARM 範本和資源群組。 深入了解

案例 使用者
建立、管理及更新基礎結構資源,以確保已部署的基礎結構符合組織合規性標準。

稽核及追蹤 Azure 部署。
負責確保已部署的 Azure 基礎結構符合組織合規性標準的稽核者和中央資訊技術群組。

Azure 自動化

Azure 自動化會使用雲端或混合式環境中的圖形化、PowerShell 和 Python Runbook 來協調重複的流程。 它提供持續性共用資產,包括允許複雜作業協調流程的變數、連線、的物件。 深入了解

PowerShell 資源庫中有超過 3,000 個模組,且 PowerShell 社群會持續成長。 以 PowerShell 模組為基礎的 Azure 自動化可以與多個應用程式和廠商合作,不論是第一方還是第三方。 隨著更多應用程式廠商針對整合、擴充性和自動化工作發行 PowerShell 模組,您可以依現狀使用現有的 PowerShell 指令碼,在自動化帳戶中以 PowerShell Runbook 的形式執行,而不需要進行任何變更。

案例 使用者
允許自動化使用 Azure Resource Manager 範本,撰寫部署 Azure 資源的自動化 PowerShell Runbook

排程工作,例如:在夜間停止開發/測試 VM 或服務,並在白天開啟。

回應警示,例如系統警示、服務警示、高 CPU/記憶體警示、建立 ServiceNow 票證等。

混合式自動化,您可以用來管理並自動化內部部署伺服器,例如 SQL Server、Active Directory 等。

Azure 資源生命週期管理和治理,包括資源佈建、取消佈建、新增正確的標記、鎖定、NSG 等。
擅長使用 PowerShell 或 Python 型指令碼的 IT 管理員、系統管理員、IT 作業系統管理員。

基礎結構管理員會使用指令碼或執行長時間執行的作業 (例如在執行內部部署的伺服器上執行月末作業),管理內部部署基礎結構。

以 Azure 自動化為基礎客體內管理

設定管理:收集清查並追蹤環境中的變更。 深入了解。 您可以設定所需的機器狀態,以探索並更正設定漂移。 深入了解

更新管理:評估伺服器的合規性,並排程機器上的更新安裝。 深入了解

案例 使用者
偵測並警示機器的軟體、服務、檔案和登錄變更,並隨時注意安裝在伺服器上的項目。

使用 Azure 更新管理在伺服器上評估及安裝更新。

設定伺服器所需的狀態,並確保持續符合規範。


大規模尋找法規需求,並確保伺服器結束狀態符合預期、修補和稽核的中央 IT\基礎結構管理員\稽核者。

Azure Automanage (預覽版)

以僅限例外狀況的管理模型取代重複的日常操作工作,其中 VM 的良好穩定狀態等於免手動管理。 深入了解

Linux 和 Windows 支援

  • 您可以運用智能方式將虛擬機器上線,以選取 Azure 服務的最佳做法。
  • 它可讓您按照 Azure 最佳做法自動設定每個服務。
  • 它支援透過開發\測試和生產工作負載的 VM 最佳做法範本,自訂最佳做法服務。
  • 您可以監視漂移,並在偵測到時加以更正。
  • 它提供簡單的體驗 (點、選取、設定和刪除)。
案例 使用者
根據 Microsoft 基準設定,自動設定客體作業系統。

在 VM 的整個生命週期中自動偵測並更正漂移。

以免手動管理機器為目標。
IT 管理員、基礎結構系統管理員、IT 作業系統管理員負責管理 Azure 和內部部署上的伺服器工作負載、日常管理工作,例如備份、災害復原、安全性更新、回應安全性威脅等。

不想管理伺服器或將時間花在低優先順序工作上的開發人員。

回應自動化工作流程中的事件

Azure 原則型客體設定

Azure 原則型客體設定是 Azure 自動化狀態設定的下一個反覆項目。 深入了解

您可以檢查已安裝的項目:

  • Azure 自動化狀態設定的下一個反覆項目。
  • 是否有已知不良的應用程式、通訊協定憑證、系統管理員權限,以及代理程式的健康情況。
  • 客戶撰寫的內容。
案例 使用者
取得可能包含下列項目的合規性資料:作業系統的設定 – 檔案、登錄和服務、應用程式設定或目前狀態、檢查環境設定。

稽核或部署範圍中所有機器 (集合) 的設定,不論是以回應方式部署到現有機器,或在部署機新機器時在其中主動部署設定。

回應原則事件,以視需要提供 補救或持續補救。
中央 IT、基礎結構系統管理員、稽核者 (雲端監管人) 正在大規模處理法規需求,並確保伺服器的最終狀態符合預期。

應用程式小組會在發行變更之前先驗證合規性。

Azure 自動化 - 程序自動化

在雲端或混合式環境中使用圖形化、PowerShell 和 Python Runbook 來協調重複的流程。 深入了解

  • 它提供持續性共用資產,包括允許複雜作業協調流程的變數、連線和物件。
  • 您可以根據 Azure 監視器警示或透過 Webhook 來叫用 Runbook。
案例 使用者
回應來自第一方或第三方監視工具的系統警示、服務警示或高 CPU/記憶體警示,例如 Splunk 或 ServiceNow、建立 ServiceNow 票證基礎警示等等。

混合式自動化案例,您可在其中依據外部事件來管理內部部署伺服器的自動化,例如 SQL Server、Active Directory 等。

依據 Azure 監視器警示,進行 Azure 資源生命週期管理和治理,包括資源佈建、取消佈建、新增正確的標記、鎖定、NSG 等。
擅長使用 PowerShell 或 Python 型指令碼的 IT 管理員、系統管理員、IT 作業系統管理員。

Azure Functions

為自動化提供無伺服器事件驅動計算平台,可讓您撰寫程式碼,以回應來自各種來源、第三方服務和內部部署系統的重要事件。 例如 HTTP 觸發程序,而無需擔心基礎平台。 深入了解

  • 您可以使用各種不同的語言,以您選擇的語言撰寫函式,例如 C#、Java、JavaScript、PowerShell 或 Python,並專注於特定程式碼片段。 Functions 執行階段是開放原始碼。
  • 您可以根據函數應用程式調整需求、功能和所需的資源,選擇主控方案。
  • 您可以透過 Durable Functions 協調複雜的工作流程。
  • 您應避免使用大型、長時間執行的函式,因為可能會造成非預期的逾時問題。 深入了解
  • 當您在函數應用程式內撰寫 PowerShell 指令碼時,必須調整指令碼,以定義函式的運作方式,例如觸發方式、其輸入和輸出參數。 深入了解
案例 使用者
回應資源上的事件:例如,刪除 VM 時,將標籤新增至資源群組基礎成本中心等。

設定排程工作,例如設定模式以在特定時間停止和啟動 VM、定期讀取 Blob 儲存體內容等。

處理 Azure 警示,在 CPU 活動尖峰達到 90% 時傳送小組事件。

與 Microsoft 365 等外部系統協調。

回應資料庫變更。
擅長程式碼撰寫語言 (例如 C#、F#、PHP、Java、JavaScript、PowerShell 或 Python) 的應用程式開發人員。

雲端架構師,建置無伺服器應用程式並在其中的大型應用程式工作流程中使用 Azure Functions。

在 Azure 自動化中協調複雜的作業

Azure Logic Apps

Logic Apps 平台可用來建立和執行複雜的協調工作流程,以整合應用程式、資料、服務和系統。 深入了解

  • 可讓您在內部部署、混合式環境和雲端原生環境中執行的第一方和第三方應用程式、服務和系統之間,建置智能整合。
  • 可讓您在工作流程中使用含有 450 個以上連接器且數量持續成長的 Azure 連接器生態系統中的受控連接器。
  • 提供企業整合和 B2B 案例的頂級支援。
  • 可讓您彈性採用視覺效果方式建立和編輯工作流程 - 低程式碼\無程式碼方法
  • 只可在雲端中執行。
  • 提供現成動作和觸發程序的大型集合。
案例 使用者
當發生特定事件時,使用 Office 365 排程及傳送電子郵件通知。 例如,上傳新的檔案。

處理並路由傳送跨內部部署系統與雲端服務的訂單。

將上傳的檔案從 SFTP 或 FTP 伺服器移到 Azure 儲存體。

監視特定主旨的推文、分析情緒,以及針對需要檢閱的項目建立警示或工作。
專業的整合人員和開發人員、想要在外部系統或 API 的進階整合案例中使用低程式碼/無程式碼選項的 IT 專業人員。

Azure 自動化 - 程序自動化

在雲端或混合式環境中使用圖形化、PowerShell 和 Python Runbook 來協調重複的流程。 它提供持續性共用資產,包括允許複雜作業協調流程的變數、連線和物件。 深入了解

案例 使用者
透過從 ITSM 警示觸發的 Runbook,進行 Azure 資源生命週期管理和治理,包括資源佈建、取消佈建、新增正確的標記、鎖定、NSG 等。

使用混合式背景工作角色作為從雲端到內部部署的橋接器,以便在內部部署啟用資源\使用者管理。

透過自動化 Runbook,執行複雜的災害復原工作流程。

透過 Azure 自動化連接器,在邏輯應用程式工作流程中執行自動化 Runbook。
擅長使用 PowerShell 或 Python 型指令碼的 IT 管理員、系統管理員、IT 作業系統管理員。

基礎結構管理員,使用指令碼或執行長時間執行的作業 (例如在執行內部部署的伺服器上執行月末作業) 來管理內部部署基礎結構。

Azure Functions

為自動化提供無伺服器事件驅動計算平台,可讓您撰寫程式碼,以回應來自各種來源、第三方服務和內部部署系統的重要事件。 例如 HTTP 觸發程序,而無需擔心基礎平台。深入了解

  • 您可以使用各種不同的語言,以您選擇的語言撰寫函式,例如 C#、Java、JavaScript、PowerShell 或 Python,並專注於特定程式碼片段。 Functions 執行階段是開放原始碼。
  • 您可以根據函數應用程式調整需求、功能和所需的資源,選擇主控方案。
  • 您可以透過 Durable Functions 協調複雜的工作流程。
  • 您應避免使用大型、長時間執行的函式,因為可能會造成非預期的逾時問題。 深入了解
  • 當您在函數應用程式內撰寫 PowerShell 指令碼時,必須調整指令碼,以定義函式的運作方式,例如觸發方式、其輸入和輸出參數。 深入了解
案例 使用者
回應資源上的事件:例如,刪除 VM 時,將標籤新增至資源群組基礎成本中心等。

設定排程工作,例如設定模式以在特定時間停止和啟動 VM、定期讀取 Blob 儲存體內容等。

處理 Azure 警示,在 CPU 活動尖峰達到 90% 時傳送小組事件。

與 Microsoft 365 等外部系統協調。

透過 Azure Function 連接器,在邏輯應用程式工作流程中執行 Azure Function。
擅長程式碼撰寫語言 (例如 C#、F#、PHP、Java、JavaScript、PowerShell 或 Python) 的應用程式開發人員。

雲端架構師,建置無伺服器應用程式並在其中的大型應用程式工作流程中使用一或多個 Azure Functions。

下一步