在自動化中部署代理程式型 Linux 混合式 Runbook 背景工作角色
重要
Azure 自動化代理程式型使用者混合式 Runbook 背景工作角色 (Windows 和 Linux) 已在 2024 年 8 月 31 日淘汰,不再受到支援。 請遵循如何從現有代理程式型使用者混合式 Runbook 背景工作角色移轉至延伸模組型混合式背景工作角色的指導方針。
您可使用 Azure 自動化的使用者混合式 Runbook 背景工作角色功能,直接在 Azure 或非 Azure 機器上執行 Runkbook,包含向已啟用 Azure Arc 的伺服器登錄的伺服器。 您可從裝載角色的機器或伺服器,直接在其中和針對環境中的資源執行 Runbook,以便管理這些本機資源。
Linux 混合式 Runbook 背景工作角色可利用特殊使用者身分執行 Runbook,此身分的權限經過提升後可執行需要提高權限的命令。 Azure 自動化會儲存並管理 Runbook,然後將這些 Runbook 傳遞至一或多個所選的機器。 本文說明如何:在 Linux 機器上安裝混合式 Runbook 背景工作角色、移除背景工作角色和移除混合式 Runbook 背景工作角色群組。 對於混合式 Runbook 背景工作角色,另請參閱在自動化中部署擴充功能型 Windows 或 Linux 使用者混合式 Runbook 背景工作角色
在您成功部署 Runbook 背景工作角色後,請檢閱在混合式 Runbook 背景工作角色上執行 Runbook,以了解如何設定 Runbook 以將內部部署資料中心或其他雲端環境中的程序自動化。
注意
混合式背景工作角色可與下列兩個平台共存:代理程式型 (V1) 和擴充功能型 (V2)。 如果您在已執行代理程式型 (V1) 的混合式背景工作角色上,安裝擴充功能型 (V2),則您會在群組中看到混合式 Runbook 背景工作角色的兩個項目。 其中一個使用平台擴充功能型 (V2),而另一個則使用代理程式型 (V1)。 深入了解。
必要條件
開始之前,請確定您有下列項目。
Log Analytics 工作區
混合式 Runbook 背景工作角色會根據 Azure 監視器 Log Analytics 工作區來安裝及設定角色。 您可透過 Azure Resource Manager、透過 PowerShell,或在 Azure 入口網站中建立角色。
如果您沒有 Azure 監視器 Log Analytics 工作區,在建立工作區之前,請檢閱 Azure 監視器記錄設計指引。
Log Analytics 代理程式
混合式 Runbook 背景工作角色需要支援 Linux 作業系統的 Log Analytics 代理程式。 對於裝載於 Azure 外部的伺服器或機器,您可使用已啟用 Azure Arc 的伺服器來安裝 Log Analytics 代理程式。 代理程式會與執行需要根權限命令的特定服務帳戶一併安裝。 如需詳細資訊,請參閱服務帳戶。
支援的 Linux 作業系統
混合式 Runbook 背景工作角色支援下列發行版本。 所有作業系統皆假設為 x64。 所有作業系統皆不支援 x86。
Amazon Linux 2012.09 到 2015.09
Oracle Linux 6、7 和 8
Red Hat Enterprise Linux Server 5、6、7 和 8
Debian GNU/Linux 6、7 和 8
SUSE Linux Enterprise Server 12、15 和 15.1 (SUSE 未發行版本號碼為 13 或 14)
Ubuntu
Linux OS 名稱 20.04 LTS Focal Fossa 18.04 LTS Bionic Beaver 16.04 LTS Xenial Xerus 14.04 LTS Trusty Tahr
注意
混合式背景工作角色會遵循 OS 廠商的支援時間表。
重要
啟用更新管理功能 (視系統混合式 Runbook 背景工作角色而定) 之前,請在這裡確認支援的發行版本。
最低需求
Linux 系統和使用者混合式 Runbook 背景工作角色的最低需求如下:
- 雙核心
- 4 GB 的 RAM
- 連接埠 443 (輸出)
必要封裝 | 說明 | 最低版本 |
---|---|---|
Glibc | GNU C 程式庫 | 2.5-12 |
Openssl | OpenSSL 程式庫 | 1.0 (支援 TLS 1.1 和 1.2) |
Curl | cURL 網路用戶端 | 7.15.5 |
Python-ctypes | Python 的外部函數庫 | 需要 Python 2.x 或 Python 3.x |
PAM | 插入式驗證模組 |
選用套件 | 說明 | 最低版本 |
---|---|---|
PowerShell Core | 若要執行 PowerShell Runbook,必須安裝 PowerShell Core。 請參閱在 Linux 上安裝 PowerShell Core 以了解其安裝方式。 | 6.0.0 |
將機器新增至混合式 Runbook 背景工作角色群組
您可將背景工作角色機器新增至其中一個自動化帳戶中的混合式 Runbook 背景工作角色群組。 對於裝載由「更新管理」所管理系統混合式 Runbook 背景工作角色的機器,您可將這些機器新增至混合式 Runbook 背景工作角色群組。 但針對更新管理和混合式 Runbook 背景工作角色群組成員資格,您必須使用相同的自動化帳戶。
注意
Azure 自動化的更新管理會自動在已啟用「更新管理」的 Azure 或非 Azure 機器上安裝系統混合式 Runbook 背景工作角色。 不過,此背景工作角色不會向自動化帳戶中的任何混合式 Runbook 背景工作角色群組進行註冊。 若要在這些機器上執行 Runbook,您必須將這些機器新增至混合式 Runbook 背景工作角色群組。 遵循安裝 Linux 混合式 Runbook 背景工作角色一節下的步驟 4,將機器新增至群組。
支援的 Linux 強化
不支援下列項目:
- CIS
支援的 Runbook 類型
Linux 混合式 Runbook 背景工作角色支援 Azure 自動化中一組有限的 Runbook 類型,如下表中所述。
Runbook 類型 | 支援 |
---|---|
Python 3 (預覽) | 是,僅這些發行版本必要:SUSE LES 15、RHEL 8 |
Python 2 | 是,適用於不需要 Python 31 的發行版本 |
PowerShell | 是2 |
PowerShell 工作流程 | No |
圖形化 | No |
圖形化 PowerShell 工作流程 | No |
1請參閱支援的 Linux 作業系統。
2PowerShell Runbook 需要在 Linux 機器上安裝 PowerShell Core。 請參閱在 Linux 上安裝 PowerShell Core 以了解其安裝方式。
網路組態
如需混合式 Runbook 背景工作角色的網路需求,請參閱設定網路。
安裝 Linux 混合式 Runbook 背景工作角色
部署混合式 Runbook 背景工作角色有兩種方法。 您可在 Azure 入口網站中從 Runbook 資源庫匯入及執行 Runbook,也可手動執行一系列的 PowerShell 命令。
從 Runbook 資源庫中匯入 Runbook
使用 Azure 入口網站從 GitHub 匯入 Runbook中會詳細說明匯入程序。 要匯入的 Runbook 名稱為 Create Automation Linux HybridWorker。
Runbook 會使用下列參數。
參數 | 狀態 | 描述 |
---|---|---|
Location |
必要 | Log Analytics 工作區的位置。 |
ResourceGroupName |
必要 | 自動化帳戶的資源群組。 |
AccountName |
必要 | 將在其中混合式 Runbook 背景工作角色的自動化帳戶名稱。 |
CreateLA |
必要 | 如果為 true,請使用 WorkspaceName 值來建立 Log Analytics 工作區。 如果為 false,WorkspaceName 的值必須參考現有的工作區。 |
LAlocation |
選擇性 | 將在其中建立 Log Analytics 工作區的位置,或其工作區存在的位置。 |
WorkspaceName |
選擇性 | 要建立或使用的 Log Analytics 工作區名稱。 |
CreateVM |
必要 | 如果為 true,請使用 VMName 的值作為新 VM 的名稱。 如果為 false,請使用 VMName 尋找並登錄現有的 VM。 |
VMName |
選擇性 | 根據 CreateVM 的值,建立或登錄的虛擬機器名稱。 |
VMImage |
選擇性 | 要建立的 VM 映像名稱。 |
VMlocation |
選擇性 | 建立或登錄的 VM 位置。 如果未指定此位置,則會使用 LAlocation 的值。 |
RegisterHW |
必要 | 如果為 true,請登錄 VM 作為混合式背景工作角色。 |
WorkerGroupName |
必要 | 混合式背景工作角色群組的名稱。 |
手動執行 PowerShell 命令
若要新增及設定 Linux 混合式 Runbook 背景工作角色,請執行下列步驟。
請在 Cloud Shell 或 Azure 入口網站中使用較高權限的 PowerShell 命令提示字元來執行下列命令,藉以在 Log Analytics 工作區中啟用 Azure 自動化解決方案:
Set-AzOperationalInsightsIntelligencePack -ResourceGroupName <resourceGroupName> -WorkspaceName <workspaceName> -IntelligencePackName "AzureAutomation" -Enabled $true
將 Log Analytics 代理程式部署至目標機器。
針對 Azure VM,請使用適用於 Linux 的虛擬機器擴充功能,安裝適用於 Linux 的 Log Analytics 代理程式。 擴充功能會在 Azure 虛擬機器上安裝 Log Analytics 代理程式,並且在現有的 Log Analytics 工作區中註冊虛擬機器。 您可使用 Azure Resource Manager 範本、Azure CLI 或 Azure 原則,指派適用於 Linux 或 Windows VM 的部署 Log Analytics 代理程式內建原則定義。 安裝代理程式之後,機器可新增至自動化帳戶中的混合式 Runbook 背景工作角色群組。
對於非 Azure 機器,您可使用已啟用的 Azure Arc 伺服器來安裝 Log Analytics 代理程式。 已啟用 Azure Arc 的伺服器會使用下列方法支援部署 Log Analytics 代理程式:
使用 VM 擴充功能架構。
針對已啟用 Azure Arc 啟用的伺服器,這項功能可讓您將 Log Analytics 代理程式 VM 擴充功能部署至非 Azure Windows 和/或 Linux 伺服器。 您可以在混合式機器,或在已啟用 Azure Arc 的伺服器所管理的伺服器上,使用下列方法來管理 VM 擴充功能:
使用 Azure 原則。
透過此方法,您可以使用 Azure 原則將 Log Analytics 代理程式部署至 Linux 或 Microsoft Azure Arc 機器內建原則定義來稽核 (如果啟用 Arc 的伺服器已安裝 Log Analytics 代理程式的話)。 如果未安裝代理程式,便會使用補救工作自動部署代理程式。 如果您打算使用適用於 VM 的 Azure 監視器來監視機器,請改用啟用 Azure Monitor for VM 方案來安裝及設定 Log Analytics 代理程式。
建議您使用 Azure 原則來安裝適用於 Windows 或 Linux 的 Log Analytics 代理程式。
注意
對於支援混合式 Runbook 背景工作角色的機器,若要使用 Desired State Configuration (DSC) 來管理其設定,您必須將伺服器新增為 DSC 節點。
注意
在 Linux 混合式背景工作角色安裝期間,必須要有具有對應 sudo 權限的 nxautomation 帳戶。 如果您嘗試安裝背景工作角色,但此帳戶不存在或沒有適當的權限時,則安裝會失敗。
確認代理程式正在向工作區報告。
適用於 Linux 的 Log Analytics 代理程式會將機器連線到 Azure 監視器 Log Analytics 工作區。 當您在機器上安裝代理程式並將其連線到工作區時,將會自動下載混合式 Runbook 背景工作角色所需的元件。
幾分鐘後,當代理程式已成功連線到 Log Analytics 工作區時,您可以執行下列查詢,以驗證其是否正在將活動訊號資料傳送至工作區。
Heartbeat | where Category == "Direct Agent" | where TimeGenerated > ago(30m)
在搜尋結果中,您應該會看到機器的活動訊號記錄,其中指出其已連線且正在向服務報告。 根據預設,每個代理程式會將活動訊號記錄轉送至其獲指派的工作區。
執行下列命令,將機器新增至混合式 Runbook 背景工作角色群組,進而指定參數
-w
、-k
、-g
和-e
的值。您可從自動化帳戶中的 [金鑰] 頁面中取得參數
-k
和-e
所需的資訊。 從頁面左側的 [帳戶設定] 區段下,選取 [金鑰]。針對
-e
參數,複製 URL 的值。針對
-k
參數,複製 PRIMARY ACCESS KEY 的值。針對
-g
參數,指定新 Linux 混合式 Runbook 背景工作角色應加入的混合式 Runbook 背景工作角色群組名稱。 如果自動化帳戶中已經有此群組,即會將目前機器新增至其中。 如果此群組不存在,則會使用該名稱建立群組。針對
-w
參數,指定 Log Analytics 工作區識別碼。
sudo python /opt/microsoft/omsconfig/modules/nxOMSAutomationWorker/DSCResources/MSFT_nxOMSAutomationWorkerResource/automationworker/scripts/onboarding.py --register -w <logAnalyticsworkspaceId> -k <automationSharedKey> -g <hybridGroupName> -e <automationEndpoint>
指令碼完成後驗證部署。 從自動化帳戶中 [混合式 Runbook 背景工作角色] 頁面的 [使用者混合式 Runbook 背景工作角色群組] 索引標籤下,將顯示新或現有群組和成員數目。 如果這是現有群組,成員數目就會遞增。 您可以從頁面上的清單中選取群組,從左側功能表中選擇 [混合式背景工作角色]。 在 [混合式背景工作角色] 頁面,您可查看列出群組的每個成員。
注意
如果您針對 Azure VM 使用適用於 Linux 的 Log Analytics 虛擬機器擴充功能,建議將
autoUpgradeMinorVersion
設定為false
,因為自動升級版本可能會導致混合式 Runbook 背景工作角色發生問題。 若要瞭解如何手動升級延伸模組,請參閱 Azure CLI 部署。
關閉簽章驗證
根據預設,Linux 混合式 Runbook 背景工作角色需要簽章驗證。 如果您對背景工作角色執行未簽署的 Runbook,您會看到 Signature validation failed
錯誤。 若要關閉簽章驗證,請以 root 執行下列命令。 以您的 Log Analytics 工作區識別碼來更新第二個參數。
sudo python /opt/microsoft/omsconfig/modules/nxOMSAutomationWorker/DSCResources/MSFT_nxOMSAutomationWorkerResource/automationworker/scripts/require_runbook_signature.py --false <logAnalyticsworkspaceId>
移除混合式 Runbook 背景工作角色
在代理程式型 Linux 混合式背景工作角色上,以 root 身分執行下列命令:
sudo bash rm -r /home/nxautomation
在流程自動化下,選取混合式背景工作角色群組,然後選取混合式背景工作角色群組,以前往混合式背景工作角色群組頁面。
在 [混合式背景工作角色群組] 底下,選取 [混合式背景工作角色]。
在您要從混合式背景工作角色群組刪除的電腦旁,選取核取方塊。
選取 [刪除],以移除代理程式型 Linux 混合式背景工作角色。
注意
- 此指令碼不會從機器移除適用於 Linux 的 Log Analytics 代理程式。 它只會移除混合式 Runbook 背景工作角色的功能和設定。
- 停用自動化帳戶中的 Private Link 之後,可能需要最多 60 分鐘的時間才能移除混合式 Runbook 背景工作角色。
- 移除混合式背景工作角色之後,機器上的混合式背景工作角色驗證憑證有效期為 45 分鐘。
移除混合式背景工作角色群組
若要移除 Linux 機器的混合式 Runbook 背景工作角色,您可使用與 Windows 混合式背景工作角色相同的步驟。 請參閱移除混合式背景工作角色群組。
管理混合式背景工作角色群組和混合式背景工作角色的角色權限
您可建立自動 Azure 自動化角色,並將下列權限授與混合式背景工作角色群組和混合式背景工作角色。 若要深入瞭解如何建立 Azure 自動化自訂角色,請參閱 Azure 自訂角色
動作 | 說明 |
---|---|
Microsoft.Automation/automationAccounts/hybridRunbookWorkerGroups/read | 讀取混合式 Runbook 背景工作角色群組。 |
Microsoft.Automation/automationAccounts/hybridRunbookWorkerGroups/write | 建立混合式 Runbook 背景工作角色群組。 |
Microsoft.Automation/automationAccounts/hybridRunbookWorkerGroups/delete | 刪除混合式 Runbook 背景工作角色群組。 |
Microsoft.Automation/automationAccounts/hybridRunbookWorkerGroups/hybridRunbookWorkers/read | 讀取混合式 Runbbok 背景工作角色。 |
Microsoft.Automation/automationAccounts/hybridRunbookWorkerGroups/hybridRunbookWorkers/delete | 刪除混合式 Runbook 背景工作角色。 |
檢查混合式背景工作角色的版本
若要檢查代理程式型 Linux 混合式 Runbook 背景工作角色的版本,請移至下列路徑:
sudo cat /opt/microsoft/omsconfig/modules/nxOMSAutomationWorker/VERSION
VERSION 檔案有混合式 Runbook 背景工作角色的版本號碼。
下一步
若要了解如何設定您的 Runbook,將您在內部部署資料中心或其他雲端環境中的程序自動化,請參閱在混合式 Runbook 背景工作角色上執行 Runbook。
若要瞭解如何針對混合式 Runbook 背景工作角色進行疑難排解,請參閱針對混合式 Runbook 背景工作角色進行疑難排解 - Linux。