Azure 自動化更新管理

Azure 自動化
Azure Log Analytics
Azure 監視器
Azure Resource Manager
Azure 虛擬機器

此參考架構說明如何設計混合式更新管理解決方案,以管理 Microsoft Azure 和內部部署 Windows 和 Linux 電腦上的更新。

架構

Azure 更新管理是Azure 自動化的組態元件。Azure 和內部部署中的 Windows 和 Linux 電腦都會將遺漏更新的評量資訊傳送至 Log Analytics 工作區。Azure 自動化然後使用該資訊來建立自動部署遺漏更新的排程。

下載這個架構的 Visio 檔案

工作流程

此架構包含下列服務:

  • Log Analytics 工作區:Log Analytics 工作區是記錄資料存放庫,可從在 Azure、內部部署或其他雲端提供者中執行的資源收集。
  • 自動化混合式背景工作角色解決方案:建立混合式 Runbook 背景工作角色,以在您的 Azure 和非 Azure 電腦上Azure 自動化Runbook。
  • 自動化帳戶: 這是一項雲端服務,可跨 Azure 和非 Azure 環境自動化設定和管理。
  • 混合式 Runbook 背景工作角色: 這是使用混合式 Runbook 背景工作角色功能設定的電腦,可以直接在電腦上和本機環境中的資源執行 Runbook。
  • 混合式 Runbook 背景工作角色群組: 這是一組用於高可用性的混合式 Runbook 背景工作角色。
  • Runbook: 這是一或多個連結活動的集合,可將程式或作業自動化。
  • 內部部署電腦和 VM: 這些是內部部署電腦和具有內部部署 Windows 或 Linux 作業系統的 VM。
  • Azure VM: Azure VM 包含裝載于 Azure 中的 Windows 或 Linux VM。

單元

實例詳細資料

此架構的典型使用案例包括:

  • 使用自動化帳戶的更新管理元件,在內部部署和 Azure 中管理更新。
  • 使用排程的部署,在定義的維護期間內協調更新的安裝。

建議

下列建議適用於大部分的案例。 除非您有覆寫它們的特定需求,否則請遵循它們。

更新管理

更新管理 是自動化的設定元件。 Azure 和內部部署中的 Windows 和 Linux 電腦都會將遺漏更新的評量資訊傳送至 Log Analytics 工作區。 Azure 自動化然後使用該資訊來建立自動部署遺漏更新的排程。

下列步驟會反白顯示實際實作:

  1. 建立 Log Analytics 工作區。
  2. 建立自動化帳戶。
  3. 將自動化帳戶與 Log Analytics 工作區連結。
  4. 啟用 Azure VM 的更新管理。
  5. 啟用非 Azure VM 的更新管理。

建立 Log Analytics 工作區

建立 Log Analytics 工作區之前,請確定您至少有 Log Analytics 參與者角色許可權。

您可以有一個以上的 Log Analytics 工作區進行資料隔離或資料儲存的地理位置,但 Log Analytics 代理程式可以設定為向一個 Log Analytics 工作區報告。 如需詳細資訊,請先檢閱 設計 Azure 監視器記錄部署 ,再建立工作區。

使用下列程式來建立 Log Analytics 工作區:

  1. https://portal.azure.com 登入 Azure 入口網站。
  2. 在 Azure 入口網站中,選取 [建立資源]。
  3. 在 [ 搜尋 Marketplace] 方塊中,輸入 Log Analytics。 當您開始輸入此文字時,清單會根據您的輸入進行篩選。 選取 [Log Analytics 工作區]。
  4. 選取 [建立],然後設定下列專案:
    1. 如果預設選取專案不適用,請在下拉式清單中 選取不同的訂 用帳戶。
    2. 針對 資源群組,選擇使用已設定或建立新資源群組的現有資源群組。
    3. 為新的 Log Analytics 工作區提供唯一的名稱,例如 HybridWorkspace-yourname
    4. 選取部署 的 [位置 ]。
    5. 選取 定價層 以繼續進行進一步的自訂。
    6. 如果您要在 2018 年 4 月 2 日之後建立的訂用帳戶中建立工作區,它會自動使用 Per GB 定價方案,而且無法選擇定價層的選項。 如果您要為在該日期之前建立的現有訂用帳戶建立工作區,或針對系結至現有Enterprise 合約註冊的訂用帳戶,請選取您慣用的定價層。 如需特定層級的詳細資訊,請參閱 Log Analytics 定價詳細資料
    7. 選取 [標記 ],並選擇性地提供資源分類的名稱和值。
    8. 選取 [檢閱 + 建立] 。
  5. Log Analytics 工作區 窗格中提供必要資訊之後,請選取 [ 建立]。

建立自動化帳戶

將自動化混合式背景工作角色解決方案新增至 Log Analytics 工作區之後,請繼續建立自動化帳戶。 請參閱 連結 Log Analytics 工作區的支援區域 ,以選取自動化帳戶和 Log Analytics 工作區的區域。 請務必根據區域對應檔建立自動化帳戶,最好在與 Log Analytics 工作區相同的資源群組中。

使用下列程式來建立自動化帳戶:

  1. 在 Azure 入口網站中,選取 [建立資源]。
  2. 在 [ 搜尋 Marketplace] 方塊中 ,輸入 自動化。 當您開始輸入此文字時,清單會根據您的輸入進行篩選。 選取 [自動化],然後選取 [ 建立]。
  3. 選取 [建立],然後設定下列專案:
    1. 提供自動化帳戶的名稱,例如混合式自動
    2. 如果預設選取專案不適用,請在下拉式清單中 選取不同的訂 用帳戶。
    3. 針對 [資源群組],選擇您要在其中建立自動化帳戶的相同資源群組。
    4. 根據區域對應檔選取 [位置 ]。
    5. 建立 Azure 執行身分帳戶 是選擇性的,因為這只會向 Azure 提供驗證,以從自動化 Runbook 管理 Azure 資源。
  4. 在 [ 新增自動化帳戶 ] 窗格中提供必要資訊之後,請選取 [ 建立]。

自動化帳戶會使用部署在 Log Analytics 工作區中的混合式 Runbook 背景工作角色元件。 在內部部署電腦上部署 Log Analytics 代理程式之前,必須先整合這些服務。 目前,數個區域支援 Log Analytics 工作區與自動化帳戶之間的對應。 如需詳細資訊,請參閱 連結 Log Analytics 工作區的支援區域

使用下列程式,將自動化帳戶與 Log Analytics 工作區連結:

  1. 在Azure 入口網站中,選取 [所有服務],然後輸入自動化。 當您開始輸入此文字時,清單會根據您的輸入進行篩選。 選取 [自動化帳戶],然後選取您稍早建立的自動化帳戶。
  2. 在 [ 自動化帳戶 ] 窗格中,選取 [更新管理 ] 區段中的 [ 更新管理 ]。
  3. 在 [ 更新管理] 窗格中,設定下列專案:
    1. 如果預設選取專案不適用,請在下拉式清單中 選取不同的訂 用帳戶。
    2. 針對 Log Analytics 工作區,選取您現有的 Log Analytics 工作區;例如 ,HybridWorkspace-yourname
  4. 在 [ 更新管理 ] 窗格中提供必要資訊之後,請選取 [ 啟用]。

為 Azure VM 啟用更新管理

使用下列工具啟用 Azure VM 的更新管理:

使用下列程式來啟用 Azure VM 的更新管理:

  1. 在Azure 入口網站中,選取[所有服務],然後輸入自動化。 當您開始輸入此文字時,清單會根據您的輸入進行篩選。 選取 [自動化帳戶],然後選取您稍早建立的自動化帳戶。
  2. 在 [ 自動化帳戶] 窗格中,選取 [ 更新管理 ] 區段中的 [更新管理 ]。
  3. 在 [ 更新管理] 窗格中,選取 [ 新增 Azure VM],選取一或多個準備好進行更新管理的 VM,然後選取 [ 啟用]。

部署 Log Analytics 代理程式並聯機至 Log Analytics 工作區

部署混合式 Runbook 背景工作角色元件是 Log Analytics 代理程式部署的一部分。

如果您使用 Azure VM 來測試解決方案,您可以使用 LinuxWindows的 VM 擴充功能,在現有的 Log Analytics 工作區中安裝 Log Analytics 代理程式並註冊 VM。 您也可以使用Azure 自動化 Desired State Configuration、Windows PowerShell腳本,或使用 VM 的Resource Manager範本來部署代理程式。 如需詳細資訊,請參閱 將 Windows 電腦連線至 Azure 監視器

針對非 Azure VM,請在環境中的實體 Windows 和 Linux 電腦或 VM 上使用手動或自動化程式來部署代理程式。

針對 Windows 電腦,使用傳輸層安全性 (TLS) 1.2 通訊協定,設定代理程式與 Log Analytics 服務通訊。 如需部署程式的詳細說明,請參閱 將 Windows 電腦連線至 Azure 監視器

您可以部署適用于 Linux 的 Log Analytics 代理程式:

  • 使用包含 Debian 和 Red Hat 套件管理員的殼層腳本套件組合,手動 (每個代理程式元件的 RPM) 套件。 當 Linux 電腦沒有網際網路連線,而且會透過 Log Analytics 閘道與 Log Analytics服務通訊時,建議這麼做。
  • 當電腦連線到網際網路時,使用裝載于 GitHub 上的 包裝函式腳本

Log Analytics 代理程式必須設定為使用 Log Analytics 工作區的 工作區識別碼和金鑰 與 Log Analytics 工作區通訊。

使用下列程式來部署 Log Analytics 代理程式,並聯機到 Log Analytics 工作區:

  1. 在 Azure 入口網站中,搜尋並選取 Log Analytics 工作區
  2. 在 Log Analytics 工作區清單中,選取代理程式用於報告的工作區。
  3. 選取 [代理程式管理]。
  4. 工作區識別碼主鍵 複製並貼到您最愛的編輯器中。
  5. 在您的 Log Analytics 工作區中,從您流覽至先前的 Windows Server 頁面,選取適當的 下載 Windows 代理程式 版本,以根據 Windows 作業系統的處理器架構進行下載。
  6. 執行 安裝程式 ,在您的電腦上安裝代理程式。
  7. 在 [歡迎] 頁面上,選取 [下一步] 。
  8. 在 [ 授權條款] 頁面上,閱讀授權,然後選取 [我同意]。
  9. 在 [目的地資料夾] 頁面上,變更或保留預設的安裝資料夾,然後選取 [下一步]。
  10. 在 [ 代理程式設定選項] 頁面上,選擇將代理程式連線至 Azure Log Analytics,然後選取 [ 下一步]。
  11. [Azure Log Analytics ] 頁面上,執行下列步驟:
    1. 貼上您先前複製的工作區識別碼工作區金鑰 (主要金鑰) 。 如果電腦向 Microsoft Azure Government雲端中的 Log Analytics 工作區報告,請在[Azure 雲端] 下拉式清單中選取[Azure 美國政府]。
    2. 如果電腦需要透過 Proxy 伺服器與 Log Analytics 服務通訊,請選取 [ 進階],然後提供 Proxy 伺服器的 URL 和埠號碼。 如果您的 Proxy 伺服器需要驗證,請輸入使用者名稱和密碼以向 Proxy 伺服器進行驗證,然後選取 [ 下一步]。
  12. 完成提供必要組態設定之後,選取 [ 下一步 ]。

啟用非 Azure 電腦的更新管理

在非 Azure 電腦上啟用更新管理具有下列必要條件:

  • 部署 Log Analytics 代理程式並聯機到 Log Analytics 工作區。

先前的程式說明如何設定這些必要條件。

在內部部署電腦上安裝 Log Analytics 代理程式之後,請使用下列程式在 Azure 入口網站 中啟用更新管理:

  1. 在Azure 入口網站中,選取[所有服務],然後輸入自動化。 當您開始輸入此文字時,清單會根據您的輸入進行篩選。 選取 [自動化帳戶],然後選取您稍早建立的自動化帳戶。
  2. 在 [ 自動化帳戶] 窗格中,選取 [ 更新管理 ] 區段中的 [更新管理 ]。
  3. 在 [ 更新管理] 窗格中,選取 [ 管理電腦],然後選取列出的電腦,並已設定為將記錄資料傳送至 Log Analytics 工作區。
  4. 選取 [啟用 ] 以完成非 Azure 機器上的更新管理設定。

更新管理所管理的每個 Windows 電腦都會列在 [混合式背景工作角色群組 ] 窗格中,作為自動化帳戶的系統混合式背景工作角色群組。 使用這些群組來部署更新,不適用於以 Runbook 為目標進行自動化工作的群組。

考量

這些考慮會實作 Azure Well-Architected Framework 的要素,這是一組可用來改善工作負載品質的指引原則。 如需詳細資訊,請參閱 Microsoft Azure Well-Architected Framework

管理性

管理 Azure VM 和非 Azure 機器的更新

自動化帳戶的 [ 更新管理 ] 區段中會顯示 Azure VM 和非 Azure 電腦需要之所有遺失更新的更新評估。

使用 Azure 入口網站 或使用 PowerShell 排程更新部署,以建立連結至Patch-MicrosoftOMSComputers Runbook 的排程資產。

使用下列程式來排程新的更新部署:

  1. 在您的自動化帳戶中,移至 [更新管理] 底下的 [更新管理],然後選取 [排程更新部署]。

  2. [新增更新部署] 下,使用 [ 名稱 ] 方塊來輸入部署的唯一名稱。

  3. 選取要進行更新部署的目標作業系統。

  4. [要更新的群組 ] 窗格中,定義結合訂用帳戶、資源群組、位置和標籤的查詢,以建置要包含在部署中的 Azure VM 動態群組。 若要深入瞭解,請參閱 搭配更新管理使用動態群組

  5. [要更新的機器 ] 窗格中,選取已儲存的搜尋、匯入的群組,或從下拉式功能表中挑選 [機器 ],然後選取個別電腦。

  6. 使用 [更新分類] 下拉式功能表來指定產品的 更新分類

  7. 使用 [ 包含/排除更新] 窗格來選取部署的特定更新。

  8. 選取 [排程設定 ] 以定義更新部署將在電腦上執行的時間。

  9. 使用 [ 週期 ] 方塊來指定部署是否發生一次,或使用週期性排程,然後選取 [ 確定]。

  10. 在 [前置指令碼 + 後置指令碼 (預覽)] 區域,選取在部署前和部署後要執行的指令碼。 若要深入瞭解,請參閱 管理前置腳本和後置腳本

  11. 使用 [維護] 視窗 (分鐘) 方塊來指定允許更新安裝的時間量。

  12. 使用 [ 重新開機選項 ] 方塊可指定在部署期間處理重新開機的方式。

  13. 當您完成部署排程的設定時,請選取 [ 建立]。

已完成更新部署的結果會顯示在 [歷程記錄] 索引標籤上的 [更新管理] 窗格中。

設定Windows Update設定

Azure 更新管理取決於Windows Update用戶端,從 Windows Update (預設設定下載並安裝更新,) 或 Windows Server Update Server。 使用下列專案設定Windows Update用戶端設定,以連線到 Windows Server Update Services (WSUS) :

  • 本機群組原則編輯器
  • 群組原則
  • PowerShell
  • 直接編輯登錄

如需詳細資訊,請參閱如何設定Windows Update設定

搭配 Microsoft Endpoint Configuration Manager 使用更新管理

軟體更新管理週期可與 Microsoft 端點Configuration Manager整合,供已使用此產品來管理電腦、伺服器和行動裝置的客戶。

若要整合軟體更新管理與端點Configuration Manager,請先整合 Endpoint Configuration Manager與 Azure 監視器記錄,然後在 Log Analytics 工作區中匯入集合。

如需詳細資訊,請參閱將Configuration Manager連線至 Azure 監視器

若要管理本機電腦上的更新,請使用下列專案進行設定:

  • 端點Configuration Manager用戶端。
  • Log Analytics 代理程式,其設定為向已啟用更新管理的 Log Analytics 工作區報告。
  • 設定為與 WSUS 通訊或可存取 Microsoft Update 的 Windows 代理程式。

若要使用 Endpoint Configuration Manager管理電腦上的更新,請在端點Configuration Manager電腦上部署下列角色:

  • 管理點。 此月臺系統角色會使用包含組態設定和服務位置資訊的原則來管理用戶端。
  • 發佈點。 這包含用戶端的來源檔案。
  • 軟體更新點。 這是裝載 WSUS 之伺服器上的角色。

使用:

  • Endpoint Configuration Manager
  • Azure 自動化

您可以從System Center 更新 Publisher ( SCUP) 提供的自訂存放庫部署 Windows 電腦上的合作夥伴更新。 SCUP 可以在獨立 WSUS 中匯入自訂更新,或與端點Configuration Manager整合。

如需詳細資訊,請參閱整合更新管理與 Windows 端點Configuration Manager

使用 PowerShell 腳本部署 Log Analytics 代理程式

若要使用在 Windows 電腦上執行的混合式背景工作角色加速 Log Analytics 代理程式的部署,請使用 New-OnPremiseHybridWorker.ps1 PowerShell 腳本。 指令碼:

  • 安裝必要的模組。
  • 使用您的 Azure 帳戶登入。
  • 確認指定的資源群組和自動化帳戶是否存在。
  • 建立自動化帳戶屬性的參考。
  • 如果未指定,則會建立 Azure 監視器 Log Analytics 工作區。
  • 啟用工作區中的自動化解決方案。
  • 下載並安裝適用于 Windows 作業系統的 Log Analytics 代理程式。
  • 將電腦註冊為混合式 Runbook 背景工作角色。

您可以使用命令列腳本,以及使用 群組原則 或 Endpoint Configuration Manager,在內部部署基礎結構中部署許多代理程式。

針對 Azure 和非 Azure 機器使用動態群組

Azure VM 的動態群組會根據下列組合來篩選 VM:

  • 訂用帳戶
  • 資源群組
  • 位置
  • Tags

非 Azure 電腦的動態群組會使用已儲存的搜尋來篩選電腦以進行更新的部署。 儲存的搜尋也稱為 電腦群組,可以使用:

  • 記錄查詢。 使用 Azure Data Explorer定義邏輯運算式來篩選電腦。
  • Active Directory 網域服務。 系統會在 Log Analytics 工作區中為 Active Directory 網域的任何成員建立群組。
  • 端點Configuration Manager。 將電腦集合從端點Configuration Manager匯入 Log Analytics 工作區。
  • WSUS。 在 WSUS 伺服器中建立的群組可以匯入 Log Analytics 工作區。

如需如何建立電腦群組以篩選電腦以進行更新部署的詳細資訊,請參閱 Azure 監視器記錄查詢中的電腦群組

可擴縮性

Azure 自動化每個更新部署最多可以處理 1,000 部電腦。 如果您預期更新超過 1,000 部電腦,您可以在多個更新排程之間分割更新。 請參閱 Azure 訂用帳戶和服務限制、配額和條件約束

可用性

  • Log Analytics 工作區與自動化帳戶之間的對應目前支援數個區域。 如需詳細資訊,請參閱 連結 Log Analytics 工作區的支援區域
  • 支援的用戶端類型:在 Azure 或內部部署環境中執行的 Windows 和 Linux 電腦上支援更新評量和修補。 目前尚未正式支援 Windows 用戶端。 如需支援的用戶端清單,請參閱 支援的用戶端類型

安全性

安全性可提供保證,以避免刻意攻擊和濫用您寶貴的資料和系統。 如需詳細資訊,請參閱安全性要素的概觀

  • 更新管理許可權:監視的自動化更新管理元件和 Log Analytics 工作區元件可以使用 Azure 角色型存取控制, (Azure RBAC) 搭配來自 Azure Resource Manager 的內建角色。 為了隔離職責,這些角色可以指派給不同的使用者、群組和安全性主體。 如需自動化帳戶中角色的清單,請參閱 管理角色許可權和安全性
  • 自動化中的敏感性資產加密:自動化帳戶可以包含敏感性資產,例如 Runbook 可能使用的認證、憑證和加密變數。 每個安全資產預設都會使用針對每個自動化帳戶產生的資料加密金鑰來加密。 這些金鑰會以帳戶加密金鑰加密並儲存在自動化中,其可儲存在 Azure 金鑰保存庫,以供想要使用自己的金鑰管理加密的客戶使用。 根據預設,帳戶加密金鑰會使用 Microsoft 管理的金鑰進行加密。 使用下列指導方針,在Azure 自動化 中套用安全資產的加密
  • 混合式 Runbook 背景工作角色的 Runbook 許可權:根據預設,混合式 Runbook 背景工作角色的 Runbook 許可權會在部署所在電腦上的系統內容中執行。 Runbook 會提供自己的本機資源驗證。 您可以使用 Azure 資源的受控識別來設定驗證,或藉由指定執行身分帳戶來提供所有 Runbook 的使用者內容。
  • 網路規劃:混合式 Runbook 背景工作角色需要透過 TCP 埠 443 的輸出網際網路存取,才能與自動化通訊。 對於具有受限制網際網路存取的電腦,您可以使用 Log Analytics 閘道 來設定與自動化和 Azure Log Analytics 工作區的通訊。
  • 自動化的 Azure 安全性基準: 適用于自動化的 Azure 安全性基準 包含如何提高整體安全性的建議,以遵循最佳做法指引保護您的資產。

DevOps

  • 您可以透過 REST API 以程式設計方式排程更新部署。 如需詳細資訊,請參閱 軟體更新組態 - 建立
  • Azure 自動化允許與熱門原始檔控制系統整合,例如 Azure DevOps 和 GitHub。 使用原始檔控制,您可以整合現有的開發環境,其中包含先前在隔離環境中測試過的腳本和自訂程式碼。
  • 如需如何整合自動化與原始檔控制環境的詳細資訊,請參閱 使用原始檔控制整合

成本最佳化

成本最佳化是關於考慮如何減少不必要的費用,並提升營運效率。 如需詳細資訊,請參閱成本最佳化要素的概觀

  • 使用 Azure 定價計算機來估計成本。 如需自動化定價模型的詳細資訊,請參閱 自動化定價
  • Azure 自動化成本會以每分鐘執行作業或每個節點的組態管理定價。 每個月,五個節點上的前 500 分鐘程式自動化和組態管理是免費的。
  • Azure Log Analytics 工作區可能會產生更多與儲存在 Azure Log Analytics 中的記錄資料量相關的成本。 定價是以耗用量為基礎,而成本會與資料擷取和資料保留相關聯。 若要將資料擷取至 Azure Log Analytics,請使用容量保留或隨用隨付模型,其中包含 5 GB (GB) 每個計費帳戶的每月免費。 前 31 天的資料保留免費。
  • 使用 Azure 定價計算機來估計成本。 如需 Log Analytics 定價模型的詳細資訊,請參閱 Azure 監視器定價

參與者

本文由 Microsoft 維護。 最初是由下列參與者所撰寫。

主體作者:

若要查看非公用LinkedIn設定檔,請登入 LinkedIn。

下一步

深入瞭解Azure 自動化: