大規模將混合式機器連線至 Azure

視您的需求而定,有幾個彈性選項可讓您針對環境中的多部 Windows 或 Linux 機器,啟用已啟用 Azure Arc 的伺服器。 使用我們提供的範本指令碼,您可以讓安裝的每個步驟自動化,包括建立與 Azure Arc 的連線。不過,您必須與目標機器和 Azure 中具有提升權限的帳戶,以手動方式執行此指令碼。

若要將機器連線到已啟用 Azure Arc 的伺服器,方法之一是使用 Microsoft Entra 服務主體。 此服務主體方法可以代替特殊權限身分識別,以互動方式來連線機器。 此服務主體是特殊的有限管理身分識別,只具有使用 azcmagent 命令將機器連線至 Azure 所需的最低權限。 此方法比使用較高特殊權限帳戶 (例如租用戶系統管理員) 更安全,而且遵循我們的存取控制安全性最佳做法。 服務主體只在上線期間使用,不作為任何其他用途。

開始連線機器之前,請先檢閱下列需求:

  1. 請確定您在要上線的機器上具有管理員權限。

    需要管理員權限,才能在機器上安裝 Connected Machine 代理程式;在 Linux 上使用 root 帳戶,在 Windows 上以本機 Administrators 群組的成員身分。

  2. 檢閱必要條件,並確認訂用帳戶和資源符合需求。 對於機器的資源群組,您必須具有 Azure Connected Machine 上線角色或參與者角色。 請務必事先在目標訂用帳戶中註冊下列 Azure 資源提供者。

    • Microsoft.HybridCompute
    • Microsoft.GuestConfiguration
    • Microsoft.HybridConnectivity
    • Microsoft.AzureArcData (如果您打算為 SQL Server 執行個體啟用 Arc)

    請參閱這裡的詳細作法: Azure 資源提供者必要條件

    如需支援區域和其他相關考量的相關資訊,請參閱支援的 Azure 區域。 另請檢閱大規模規劃指南,以了解設計和部署準則,以及我們的管理和監視建議。

如果您沒有 Azure 訂用帳戶,請在開始前建立免費帳戶

SQL Server 的自動連線

當您將 Windows 或 Linux 伺服器連線到也已安裝 Microsoft SQL Server 的 Azure Arc 時,SQL Server 實例也會自動連線到 Azure Arc。 Azure Arc 所啟用的 SQL Server 會為您的 SQL Server 實例和資料庫提供詳細的清查和其他管理功能。 在連線過程中,擴充功能會部署到已啟用 Azure Arc 的伺服器,並將 新的角色 套用至您的 SQL Server 和資料庫。 如果您不想自動將 SQL Server 連線到 Azure Arc,您可以在連線到 Azure Arc 時,將標籤新增至 Windows 或 Linux 伺服器,並加上名稱和 ArcSQLServerExtensionDeploymentDisabled ,以退出宣告。

如需詳細資訊,請參閱 管理 Azure Arc 所啟用 SQL Server 的自動連線。

建立服務主體以進行大規模上線

您可以在 Azure 入口網站或使用 Azure PowerShell 來建立服務主體。

注意

若要建立服務主體,您的 Microsoft Entra 租用戶必須允許使用者註冊應用程式。 否則,您的帳戶必須是應用程式管理員雲端應用程式管理員管理角色的成員。 如需租用戶層級需求的詳細資訊,請參閱 在 Microsoft Entra ID 中委派應用程式註冊權限。 若要指派角色給已啟用 Arc 的伺服器,在您要用於上線的訂用帳戶中,您的帳戶必須是擁有者使用者存取管理員角色的成員。

Azure 入口網站

Azure 入口網站中的 Azure Arc 服務提供精簡方式來建立服務主體,可用於將混合式機器連線至 Azure。

  1. 在 Azure 入口網站中,瀏覽至 Azure Arc,然後選取左側功能表中的 [服務主體]
  2. 選取 [新增]。
  3. 輸入服務主體的名稱。
  4. 選擇服務主體是否可以存取整個訂用帳戶,還是只能存取特定資源群組。
  5. 選取服務主體將存取的訂用帳戶 (和資源群組,如果適用)。
  6. 在 [用戶端密碼] 區段中,選取產生的用戶端密碼可持續使用的時間。 您可以選擇在 [描述] 欄位中輸入您選擇的易記名稱。
  7. 在 [角色指派] 區段中,選取 [Azure Connected Machine 上線]
  8. 選取 建立

Azure 入口網站 中 Azure Arc 服務主體建立畫面的螢幕快照。

Azure PowerShell

您可以使用 Azure PowerShell,透過 New-AzADServicePrincipal Cmdlet 建立服務主體。

  1. 檢查 Azure PowerShell 工作階段的內容,以確保您在正確的訂用帳戶中工作。 如果您需要變更訂用帳戶,請使用 Set-AzContext

    Get-AzContext
    
  2. 執行下列命令來建立服務主體,並為其指派所選訂用帳戶的 Azure Connected Machine 上線角色。 建立服務主體之後,它會列印應用程式識別碼和秘密。 秘密有效期限為 1 年,之後您必須產生新的秘密,並使用新的秘密更新任何指令碼。

    $sp = New-AzADServicePrincipal -DisplayName "Arc server onboarding account" -Role "Azure Connected Machine Onboarding"
    $sp | Format-Table AppId, @{ Name = "Secret"; Expression = { $_.PasswordCredentials.SecretText }}
    
    AppId                                Secret
    -----                                ------
    aaaaaaaa-bbbb-cccc-dddd-eeeeeeeeeeee PASSWORD_SHOWN_HERE
    

    下列屬性的值會與傳遞給 azcmagent 的參數搭配使用:

    • AppId 屬性的值是用於 --service-principal-id 參數值
    • Secret 屬性的值用於 --service-principal-secret 參數,而此參數用來連線代理程式。

從 Azure 入口網站產生安裝指令碼

用來自動下載和安裝以及用來與 Azure Arc 建立連線的指令碼,可從 Azure 入口網站取得。 若要完成此程序,請執行下列步驟:

  1. 在瀏覽器中,移至 Azure 入口網站

  2. [機器 - Azure Arc] 頁面上,選取左上方的 [新增/建立],然後從下拉式功能表中選取 [新增機器]

  3. [使用 Azure Arc 新增伺服器] 頁面上,選取 [新增多部伺服器] 圖格,然後選取 [產生指令碼]

  4. 在 [基本] 頁面上,提供下列各項:

    1. 選取 訂用帳戶 及機器的 資源群組
    2. 在 [地區] 下拉式清單中,選取要儲存伺服器中繼資料的 Azure 地區。
    3. 在 [作業系統] 下拉式清單中,選取設定要在其上執行指令碼的作業系統。
    4. 如果機器是透過 Proxy 伺服器進行通訊以連線至網際網路,請指定 Proxy 伺服器 IP 位址或名稱,以及機器用來與 Proxy 伺服器通訊的連接埠號碼。 使用此設定,代理程式會使用 HTTP 通訊協定透過 Proxy 伺服器進行通訊。 請以 http://<proxyURL>:<proxyport> 格式輸入值。
    5. 選取 [下一步]。
    6. [驗證] 區段的 [服務主體] 下拉式清單中,選取 [Arc-for-servers]。 然後選取 [下一步]
  5. 在 [標籤] 頁面上,檢閱建議的預設 [實體位置標籤] 並輸入值,或指定一或多個 [自訂標籤] 以支援您的標準。

  6. 選取 [下一步]。

  7. 在 [下載並執行指令碼] 頁面上檢閱摘要資訊,然後選取 [下載]。 如果您還需要變更,請選取 [上一步]

在 Windows 上會提示您將 OnboardingScript.ps1 儲存到電腦,而在 Linux 上會提示儲存 OnboardingScript.sh

安裝代理程式並連線至 Azure

採用稍早建立的指令碼範本,您可以使用組織慣用的自動化工具,在多個混合式 Linux 和 Windows 機器上安裝和設定 Connected Machine 代理程式。 此指令碼執行從 Azure 入口網站將混合式機器連線至 Azure 一文所述的類似步驟。 差別在於最後一個步驟,您使用服務主體,透過 azcmagent 命令建立 Azure Arc 的連線。

以下是您設定 azcmagent 命令以用於服務主體的設定。

  • service-principal-id:唯一識別碼 (GUID),代表服務主體的應用程式識別碼。
  • service-principal-secret | 服務主體密碼。
  • tenant-id: 代表您 Microsoft Entra ID 專用執行個體的唯一識別碼 (GUID)。
  • subscription-id: 您想要讓機器在其中的 Azure 訂用帳戶之 訂用帳戶識別碼 (GUID)。
  • resource-group: 您想要連線機器隸屬的資源群組名稱。
  • location: 請參閱 支援的 Azure 區域。 此位置可與資源群組的位置相同或不同。
  • resource-name : (選擇性) 用於內部部署機器的 Azure 資源表示法。 如果您未指定此值,將會使用電腦主機名稱。

您可以藉由檢閱 Azcmagent 參考,深入了解 azcmagent 命令列工具。

注意

Windows PowerShell 指令碼僅支援從 Windows PowerShell 64 位元版本執行。

在安裝代理程式並設定為連線至已啟用 Azure Arc 的伺服器之後,請前往 Azure 入口網站來確認伺服器已成功連線。 在 Azure 入口網站中檢視您的機器。

顯示 Azure 入口網站 中成功伺服器連線的螢幕快照。

下一步