共用方式為


Azure Connected Machine 代理程式概觀

Azure Connected Machine 代理程式可讓您在公司網路或其他雲端提供者上管理裝載於 Azure 外部的 Windows 和 Linux 機器。

警告

產品群組僅正式支援過去 1 年內的 Connected Machine 代理程式版本。 客戶應該在此視窗中更新為代理程式版本。

代理程式元件

Azure 連線機器代理程式架構概觀的圖形。

Azure Connected Machine 代理程式套件包含數個互為配套的邏輯元件:

  • Hybrid Instance Metadata Service (HIMDS) 會管理 Azure 的連線,以及連線機器的 Azure 身分識別。

  • 來賓設定代理程式提供多項功能,例如評定機器是否符合必要原則,以及強制執行合規性。

    對於已中斷連線的機器,請注意 Azure 原則客體設定的下列行為:

    • 目標為已中斷連線機器的 Azure 原則指派,均不會受到影響。
    • 來賓指派會儲存在本機 14 天。 在 14 天內,如果連線的電腦代理程式重新連線至服務,則會重新套用原則指派。
    • 指派會在 14 天後刪除,且不會在 14 天期間之後再重新指派給機器。
  • 延伸模組代理程式會管理 VM 延伸模組,包括安裝、解除安裝和升級。 Azure 會下載延伸模組,並將其複製到 Windows 上的 %SystemDrive%\%ProgramFiles%\AzureConnectedMachineAgent\ExtensionService\downloads 資料夾,以及複製到 Linux 上的 /opt/GC_Ext/downloads。 在 Windows 上,延伸模組會安裝到下列路徑 %SystemDrive%\Packages\Plugins\<extension>,而在 Linux 上,延伸模組會安裝到 /var/lib/waagent/<extension>

注意

Azure 監視器代理程式 (AMA) 是會收集監視資料的個別代理程式,並不會取代 Connected Machine 代理程式;AMA 只會取代 Log Analytics 代理程式、診斷延伸模組,以及 Windows 和 Linux 機器的 Telegraf 代理程式。

Azure Arc Proxy

Azure Arc Proxy 服務負責彙總來自 Azure Connected Machine 代理程式服務和您已安裝的任何延伸模組的網路流量,並決定將該資料路由傳送到何處。 如果您使用 Azure Arc 閘道 (有限預覽) 來簡化網路端點,則 Azure Arc Proxy 服務是透過 Azure Arc 閘道 (而不是預設路由) 來轉送網路要求的本機元件。 Azure Arc Proxy 在 Windows 上會以網路服務的形式執行,而在 Linux 上會以標準使用者帳戶 (arcproxy) 執行。 在您將代理程式設定為使用 Azure Arc 閘道 (有限預覽) 之前,它預設為停用狀態。

代理程式資源

下列資訊說明 Azure Connected Machine 代理程式所使用的目錄和使用者帳戶。

Windows 代理程式安裝詳細資料

Windows 代理程式會以 Windows Installer 套件 (MSI) 的形式散發。 請從 Microsoft 下載中心下載 Windows 代理程式。 安裝適用於 Windows 的 Connected Machine 代理程式,會套用下列全系統設定變更:

  • 安裝程序會在安裝期間建立下列資料夾。

    Directory 描述
    %ProgramFiles%\AzureConnectedMachineAgent azcmagent CLI 和 Instance Metadata Service 可執行檔。
    %ProgramFiles%\AzureConnectedMachineAgent\ExtensionService2\GC 延伸模組服務可執行檔。
    %ProgramFiles%\AzureConnectedMachineAgent\GCArcService2\GC 來賓設定 (原則) 服務可執行檔。
    %ProgramData%\AzureConnectedMachineAgent azcmagent CLI 和 Instance Metadata Service 的組態、記錄和身分識別權杖檔案。
    %ProgramData%\GuestConfig 延伸模組套件下載、來賓設定 (原則) 定義下載,以及延伸模組和客體設定服務的記錄。
    %SYSTEMDRIVE%\packages 延伸模組套件可執行檔
  • 安裝代理程式會在目標電腦上建立下列 Windows 服務。

    Service name Display name 程序名稱 描述
    himds Azure 混合式 Instance Metadata Service himds.exe 使用 Azure 同步處理中繼資料,並託管本機 REST API,讓延伸模組和應用程式存取中繼資料並要求 Microsoft Entra 受控識別權杖
    GCArcService 來賓設定 Arc 服務 gc_arc_service.exe (1.36 版之前的 gc_service.exe) 在機器上稽核並強制執行 Azure 來賓設定原則。
    ExtensionService 來賓設定延伸模組服務 gc_extension_service.exe (1.36 版之前的 gc_service.exe) 在機器上安裝、更新及管理延伸模組。
  • 代理程式安裝會建立下列虛擬服務帳戶。

    虛擬帳戶 描述
    NT SERVICE\himds 無特殊權限的帳戶,可用來執行 Hybrid Instance Metadata Service。

    提示

    此帳戶需要「以服務方式登入」權限。 此權限會在代理程式安裝期間自動授與,但如果您的組織使用群組原則設定使用者權限指派,您可能需要調整群組原則物件,以授與 "NT SERVICE\himds" 或 "NT SERVICE\ALL SERVICES" 權限,進而允許代理程序運作。

  • 代理程式安裝會建立下列本機安全性群組。

    安全性群組名稱 描述
    混合式代理程式延伸模組應用程式 此安全性群組的成員可以針對系統指派的受控識別要求 Microsoft Entra 權杖
  • 代理程式安裝會建立下列環境變數

    名稱 Default value 說明
    IDENTITY_ENDPOINT http://localhost:40342/metadata/identity/oauth2/token
    IMDS_ENDPOINT http://localhost:40342
  • 有數個記錄檔可用於疑難排解,如下表中所述。

    Log 描述
    %ProgramData%\AzureConnectedMachineAgent\Log\himds.log 記錄活動訊號和身分識別代理程式元件的詳細資料。
    %ProgramData%\AzureConnectedMachineAgent\Log\azcmagent.log 包含 azcmagent 工具命令的輸出。
    %ProgramData%\GuestConfig\arc_policy_logs\gc_agent.log 記錄來賓設定 (原則) 代理程式元件的詳細資料。
    %ProgramData%\GuestConfig\ext_mgr_logs\gc_ext.log 記錄延伸模組管理員活動的詳細資料 (延伸模組安裝、解除安裝和升級事件)。
    %ProgramData%\GuestConfig\extension_logs 包含個別延伸模組記錄的目錄。
  • 過程中會建立本機安全性群組混合式代理程式延伸模組應用程式

  • 解除安裝代理程序之後,會保留下列成品。

    • %ProgramData%\AzureConnectedMachineAgent\Log
    • %ProgramData%\AzureConnectedMachineAgent
    • %ProgramData%\GuestConfig
    • %SystemDrive%\packages

Linux 代理程式安裝詳細資料

發行版本 (裝載於 Microsoft 套件存放庫) 慣用的套件格式 (.rpm.deb) 會提供適用於 Linux 的 Connected Machine 代理程式。 殼層指令碼組合 Install_linux_azcmagent.sh 會安裝並設定代理程式。

在伺服器重新啟動之後,不需要安裝、升級及移除 Connected Machine 代理程式。

安裝適用於 Linux 的 Connected Machine 代理程式,會套用下列全系統設定變更。

  • 安裝程式會建立下列安裝資料夾。

    Directory 描述
    /opt/azcmagent/ azcmagent CLI 和 Instance Metadata Service 可執行檔。
    /opt/GC_Ext/ 延伸模組服務可執行檔。
    /opt/GC_Service/ 來賓設定 (原則) 服務可執行檔。
    /var/opt/azcmagent/ azcmagent CLI 和 Instance Metadata Service 的組態、記錄和身分識別權杖檔案。
    /var/lib/GuestConfig/ 延伸模組套件下載、來賓設定 (原則) 定義下載,以及延伸模組和客體設定服務的記錄。
  • 安裝代理程式會建立下列精靈。

    Service name Display name 程序名稱 描述
    himdsd.service Azure Connected Machine 代理程式服務 himds 此服務會實作 Hybrid Instance Metadata Service (IMDS),以管理與 Azure 的連線和已連線機器的 Azure 身分識別。
    gcad.service GC Arc 服務 gc_linux_service 在機器上稽核並強制執行 Azure 來賓設定原則。
    extd.service 延伸模組服務 gc_linux_service 在機器上安裝、更新及管理延伸模組。
  • 有數個記錄檔可用於疑難排解,如下表中所述。

    Log 描述
    /var/opt/azcmagent/log/himds.log 記錄活動訊號和身分識別代理程式元件的詳細資料。
    /var/opt/azcmagent/log/azcmagent.log 包含 azcmagent 工具命令的輸出。
    /var/lib/GuestConfig/arc_policy_logs 記錄來賓設定 (原則) 代理程式元件的詳細資料。
    /var/lib/GuestConfig/ext_mgr_logs 記錄延伸模組管理員活動的詳細資料 (延伸模組安裝、解除安裝和升級事件)。
    /var/lib/GuestConfig/extension_logs 包含個別延伸模組記錄的目錄。
  • 代理程式安裝會建立下列在 /lib/systemd/system.conf.d/azcmagent.conf 中設定的環境變數。

    名稱 Default value 說明
    IDENTITY_ENDPOINT http://localhost:40342/metadata/identity/oauth2/token
    IMDS_ENDPOINT http://localhost:40342
  • 解除安裝代理程序之後,會保留下列成品。

    • /var/opt/azcmagent
    • /var/lib/GuestConfig

代理程式資源治理

Azure Connected Machine 代理程式的用途是要管理代理程式和系統資源使用量。 在下列情況下,代理程式會執行資源治理:

  • 機器設定 (先前稱為來賓設定) 服務最多可以使用 5% 的 CPU 來評估原則。

  • 延伸模組服務可在 Windows 電腦上最多使用 5% 的 CPU,以及在 Linux 電腦上最多使用 30% 的 CPU,以安裝、升級、執行和刪除延伸模組。 某些延伸模組可能會在安裝後套用更嚴格的 CPU 限制。 下列情況則例外:

    擴充功能類型 作業系統 CPU 限制
    AzureMonitorLinuxAgent Linux 60%
    AzureMonitorWindowsAgent Windows 100%
    LinuxOsUpdateExtension Linux 60%
    MDE.Linux Linux 60%
    MicrosoftDnsAgent Windows 100%
    MicrosoftMonitoringAgent Windows 60%
    OmsAgentForLinux Linux 60%

在正常作業期間 (定義為 Azure Connected Machine 代理程式連線到 Azure,且不會主動修改延伸模組或評估原則),您可以預期代理程式取用下列系統資源:

Windows Linux
CPU 使用量 (標準化為 1 核心) 0.07% 0.02%
記憶體使用量 57 MB 42 MB

上述效能資料是在 2023 年 4 月於執行 Windows Server 2022 和 Ubuntu 20.04 的虛擬機器上收集的。 實際的代理程式效能和資源耗用量會根據您伺服器的硬體和軟體設定而有所不同。

自訂資源限制

預設資源治理限制是大部分伺服器的最佳選擇。 不過,管理延伸模組或評估原則時,CPU 資源有限的小型虛擬機器和伺服器可能會遇到逾時,因為沒有足夠的 CPU 資源,無法完成工作。 從代理程式 1.39 版開始,您可以自訂在延伸模組管理員和機器設定服務套用的 CPU 限制,以協助代理程式更快速地完成這些工作。

若要查看延伸模組管理員和機器設定服務的目前資源限制,請執行下列命令。

azcmagent config list

您會在輸出中看到兩個欄位 (guestconfiguration.agent.cpulimitextensions.agent.cpulimit),並將目前資源限制指定為百分比。 在全新安裝代理程式時,兩者都會顯示 5,因為預設限制是 CPU 的 5%。

若要將延伸模組管理員的資源限制變更為 80%,請執行下列命令:

azcmagent config set extensions.agent.cpulimit 80

執行個體中繼資料

Connected Machine 代理程式向已啟用 Azure Arc 的伺服器註冊之後,會收集與連線的機器相關的中繼資料資訊。 具體而言:

  • 作業系統名稱、版本、類型和版本
  • 電腦名稱
  • 電腦製造商和型號
  • 電腦完整網域名稱 (FQDN)
  • 網域名稱 (若已加入 Active Directory 網域)
  • Active Directory 和 DNS 完整網域名稱 (FQDN)
  • UUID (BIOS 識別碼)
  • Connected Machine 代理程式活動訊號
  • Connected Machine 代理程式版本
  • 受控識別的公開金鑰
  • 原則合規性狀態和詳細資料 (如果使用客體設定原則)
  • 已安裝 SQL Server (布林值)
  • 叢集資源識別碼 (適用於 Azure 本機電腦)
  • 硬體製造商
  • 硬體型號
  • CPU 系列、通訊端、實體核心和邏輯核心計數
  • 實體記憶體總計
  • 序號
  • SMBIOS 資產標籤
  • 網路介面資訊
    • IP 位址
    • 子網路
  • Windows 授權資訊
    • OS 授權狀態
    • OS 授權通道
    • 延伸安全性更新資格
    • 延伸安全性更新授權狀態
    • 延伸安全性更新授權通道
  • 雲端提供者
  • Amazon Web Services (AWS) 中繼資料 (在 AWS 中執行時):
    • 帳戶識別碼
    • Instance ID
    • 區域
  • Google Cloud Platform (GCP) 中繼資料 (在 GCP 中執行時):
    • Instance ID
    • 映像
    • 電腦類型
    • 專案識別碼
    • 專案編號
    • 服務帳戶
    • 區域
  • 在 OCI 中執行時,Oracle 雲端基礎結構中繼資料:
    • Display name

代理程式會向 Azure 要求下列中繼資料資訊:

  • 資源位置 (區域)
  • 虛擬機器識別碼
  • 標籤
  • Microsoft Entra 受控識別憑證
  • 客體設定原則指派
  • 延伸模組要求 - 安裝、更新和刪除。

注意

已啟用 Azure Arc 的伺服器不會在客戶部署服務執行個體所在區域以外的位置儲存/處理客戶資料。

部署選項和需求

代理程式部署和電腦連線需要某些必要條件。 此外還需注意網路需求

我們提供了數個代理程式部署選項。 如需詳細資訊,請參閱規劃部署部署選項

複製指導方針

您可以將 azcmagent 套件安全地安裝到黃金映射中,但一旦您使用 azcmagent connect 命令連接計算機,該計算機就會接收特定的資源資訊。 如果您要藉由從黃金映射複製機器來建置機器,您必須先將每部機器特製化,再使用 azcmagent connect 命令將其連線到 Azure。 在您建立並特製化每部機器之前,請勿將原始黃金映像機器連線至 Azure。

如果您的連線伺服器收到 429 錯誤訊息,則可能是將伺服器連線到 Azure,然後使用該伺服器作為複製的黃金映像。 由於資源資訊已記錄到映像中,因此從該映像建立的複製機器會嘗試將活動訊號訊息傳送至相同的資源。

若要解決現有機器的 429 個錯誤訊息,請在每部複製的電腦上執行 azcmagent disconnect --force-local-only ,然後使用適當的認證重新執行 azcmagent connect ,以使用唯一的資源名稱將機器連線到雲端。

災害復原

對於已啟用 Arc 的伺服器,沒有客戶啟用的災害復原選項。 如果某個 Azure 區域發生中斷情況,系統會容錯移轉到同一個 Azure 地理位置 (如果存在) 的另一個區域。 雖然此容錯移轉程序是自動的,但需要一些時間。 Connected Machine 代理程式將會在此期間中斷連線,並顯示「已中斷連線」的狀態,直到容錯移轉完成為止。 一旦中斷還原,系統就會容錯回復到其原始區域。

Azure Arc 的中斷不會影響客戶工作負載本身;只有透過 Arc 對適用伺服器的管理才會受到損害。

下一步