你可以為環(huán)境中的多個 Windows 或 Linux 計算機(jī)啟用啟用了 Azure Arc 的服務(wù)器,其中包含幾個靈活的選項,具體取決于你的要求。 使用我們提供的模板腳本,可以自動完成每個安裝步驟,包括與 Azure Arc 建立連接。但是,必須使用在目標(biāo)計算機(jī)和 Azure 中擁有提升權(quán)限的帳戶以交互方式執(zhí)行此腳本。 若要將計算機(jī)連接到啟用了 Azure Arc 的服務(wù)器,可以使用 Azure Active Directory 服務(wù)主體 ,而不是使用特權(quán)標(biāo)識以 交互方式連接計算機(jī)。 服務(wù)主體是一種特殊的受限管理標(biāo)識,它只被授予了使用 azcmagent 命令將計算機(jī)連接到 Azure 所需的最低權(quán)限。 這比使用較高特權(quán)的帳戶(例如租戶管理員)更安全,并且可以遵循我們的訪問控制安全性最佳做法。 服務(wù)主體只會在加入期間使用,不會用于任何其他目的。
安裝和配置 Connected Machine 代理的安裝方法要求你在計算機(jī)上擁有管理員權(quán)限。 在 Linux 上,需使用 root 帳戶;在 Windows 上,需要以“本地管理員組”的成員身份使用這些方法。
在開始之前,請務(wù)必查看先決條件,并驗證你的訂閱和資源是否符合要求。 有關(guān)支持的區(qū)域和其他相關(guān)注意事項的信息,請參閱 支持的 Azure 區(qū)域。
如果你還沒有 Azure 訂閱,可以在開始前創(chuàng)建一個免費帳戶。
在此過程結(jié)束時,你將成功地將混合計算機(jī)連接到啟用了 Azure Arc 的服務(wù)器。
創(chuàng)建服務(wù)主體以用于大規(guī)模加入
可以在 Azure PowerShell 中使用 New-AzADServicePrincipal cmdlet 創(chuàng)建服務(wù)主體。 或者,可以按照使用 Azure 門戶創(chuàng)建服務(wù)主體中列出的步驟完成此任務(wù)。
備注
創(chuàng)建服務(wù)主體時,你的帳戶必須是要用于加入的訂閱中的“所有者”或“用戶訪問管理員”。 如果你沒有足夠的權(quán)限創(chuàng)建角色分配,則可能會創(chuàng)建服務(wù)主體,但它將無法加入計算機(jī)。
若要使用 PowerShell 創(chuàng)建服務(wù)主體,請執(zhí)行以下操作。
運行以下命令。 必須在變量中存儲 New-AzADServicePrincipal cmdlet 的輸出,否則無法檢索需要在后續(xù)步驟中使用的密碼。
Azure PowerShell
$sp = New-AzADServicePrincipal -DisplayName "Arc-for-servers" -Role "Azure Connected Machine Onboarding"
$sp
輸出
Secret : System.Security.SecureString
ServicePrincipalNames : {ad9bcd79-be9c-45ab-abd8-80ca1654a7d1, https://Arc-for-servers}
ApplicationId : ad9bcd79-be9c-45ab-abd8-80ca1654a7d1
ObjectType : ServicePrincipal
DisplayName : Hybrid-RP
Id : 5be92c87-01c4-42f5-bade-c1c10af87758
Type :
若要檢索 $sp 變量中存儲的密碼,請運行以下命令:
Azure PowerShell
$credential = New-Object pscredential -ArgumentList "temp", $sp.Secret
$credential.GetNetworkCredential().password
在輸出中,找到并復(fù)制 password 字段下的密碼值。 另外,還請找到并復(fù)制 ApplicationId 字段下的值。 請在安全的位置保存這些值,供稍后使用。 如果忘記或丟失了服務(wù)主體密碼,可以使用 New-AzADSpCredential cmdlet 重置它。
以下屬性中的值將與傳遞給 azcmagent 的參數(shù)配合使用:
ApplicationId 屬性中的值用作 --service-principal-id 參數(shù)值
password 屬性中的值用作連接代理時所用的 --service-principal-secret 參數(shù)。
備注
請確保使用服務(wù)主體 ApplicationId 屬性,而不是 Id 屬性。
“Azure Connected Machine 加入”角色只包含加入計算機(jī)時所需的權(quán)限。 可以分配服務(wù)主體權(quán)限,以允許其范圍包含資源組或訂閱。 若要添加角色分配,請參閱 使用 Azure 門戶添加或刪除 azure 角色分配 或 使用 Azure CLI 添加或刪除 azure 角色分配。
安裝代理并連接到 Azure
以下步驟使用腳本模板在混合計算機(jī)上安裝并配置 Connected Machine 代理,該模板執(zhí)行的步驟與從 Azure 門戶將混合計算機(jī)連接到 Azure 一文中所述的步驟類似。 不同之處在于,最后一步是通過 azcmagent 命令使用服務(wù)主體與 Azure Arc 建立連接。
下面是配置用于服務(wù)主體的 azcmagent 命令時需要指定的設(shè)置。
tenant-id:表示 Azure AD 專用實例的唯一標(biāo)識符 (GUID)。
subscription-id:計算機(jī)要屬于的 Azure 訂閱的訂閱 ID (GUID)。
resource-group:連接的計算機(jī)要屬于的資源組的名稱。
location:請參閱支持的 Azure 區(qū)域。 此位置可以與資源組的位置相同或不同。
resource-name:(可選)用于本地計算機(jī)的 Azure 資源表示。 如果未指定此值,將使用計算機(jī)主機(jī)名。
若要詳細(xì)了解 azcmagent 命令行工具,請查看 Azcmagent 參考。
Windows 安裝腳本
下面是適用于 Windows 的 Connected Machine 代理安裝腳本示例,該腳本已修改為使用服務(wù)主體來支持完全自動化的非交互式代理安裝。
# Download the package
function download() {$ProgressPreference="SilentlyContinue"; Invoke-WebRequest -Uri https://aka.ms/AzureConnectedMachineAgent -OutFile AzureConnectedMachineAgent.msi}
download
# Install the package
msiexec /i AzureConnectedMachineAgent.msi /l*v installationlog.txt /qn | Out-String
# Run connect command
& "$env:ProgramFiles\AzureConnectedMachineAgent\azcmagent.exe" connect `
--service-principal-id "{serviceprincipalAppID}" `
--service-principal-secret "{serviceprincipalPassword}" `
--resource-group "{ResourceGroupName}" `
--tenant-id "{tenantID}" `
--location "{resourceLocation}" `
--subscription-id "{subscriptionID}"
備注
此腳本僅支持在64位版本的 Windows PowerShell 中運行。
Linux 安裝腳本
下面是適用于 Linux 的 Connected Machine 代理安裝腳本示例,該腳本已修改為使用服務(wù)主體來支持完全自動化的非交互式代理安裝。
# Download the installation package
wget https://aka.ms/azcmagent -O ~/install_linux_azcmagent.sh
# Install the hybrid agent
bash ~/install_linux_azcmagent.sh
# Run connect command
azcmagent connect \
--service-principal-id "{serviceprincipalAppID}" \
--service-principal-secret "{serviceprincipalPassword}" \
--resource-group "{ResourceGroupName}" \
--tenant-id "{tenantID}" \
--location "{resourceLocation}" \
--subscription-id "{subscriptionID}"
備注
若要運行azcmagent,必須具有 Linux 計算機(jī)上的根訪問權(quán)限。
安裝代理并將其配置為連接到啟用了 Azure Arc 的服務(wù)器后,請轉(zhuǎn)到 Azure 門戶,驗證是否已成功連接服務(wù)器。 在 Azure 門戶中查看計算機(jī)。
服務(wù)器連接成功
后續(xù)步驟
有關(guān)疑難解答信息,請參閱 連接計算機(jī)代理疑難解答指南。
了解如何使用 Azure Policy 管理計算機(jī),例如,進(jìn)行 VM 來賓配置,驗證計算機(jī)是否向預(yù)期的 Log Analytics 工作區(qū)報告,使用用于 VM 的 Azure Monitor 啟用監(jiān)視等。
詳細(xì)了解 Log Analytics 代理。 需要收集操作系統(tǒng)和工作負(fù)荷監(jiān)視數(shù)據(jù)、使用自動化 runbook 或功能(如更新管理)管理該數(shù)據(jù),或使用 Azure 安全中心之類的其他 azure 服務(wù)時,需要使用適用于 Windows 和 Linux 的 Log Analytics 代理。