Управление расширениями Azure Arc в локальной среде Azure
Статья
Область применения: Azure Local 2311.2 и более поздних версий
В этой статье описывается установка, обновление и управление расширениями Azure Arc в локальной среде Azure.
Расширения Azure Arc, управляемые клиентом, в локальной среде Azure
Вы можете установить, удалить и обновить расширения Azure Arc в локальной среде Azure. Azure Arc позволяет запускать гибридные службы, такие как мониторинг и Центр администрирования Windows в портал Azure.
Ниже приведены отдельные расширения, которые можно установить и управлять ими.
Управляемые Azure расширения в локальной среде Azure
После успешной регистрации нового локального экземпляра Azure в Azure в системе автоматически устанавливаются управляемые Azure расширения. Эти расширения важны для функциональных возможностей и качества системы и не могут быть удалены. Вы можете управлять поведением этих расширений в портал Azure, перейдя на страницу расширений и выбрав меню "Параметры".
Если у вас есть существующий локальный экземпляр Azure, зарегистрированный в Azure без этих расширений, баннер отображается на странице "Обзор" или "Расширения" в портал Azure. Сведения в баннере можно использовать для установки этих расширений.
Расширения можно установить на вкладке "Возможности" для серверов с поддержкой Azure Local Arc, как показано на снимке экрана. Вы можете использовать вкладку возможностей для установки большинства расширений.
При установке расширения в портал Azure это операция с поддержкой кластера. Расширение устанавливается на всех узлах системы. При добавлении дополнительных узлов в систему все расширения, установленные в вашей системе, автоматически добавляются на новые серверы.
Azure CLI доступна для установки в средах Windows, macOS и Linux. Его также можно запустить в Azure Cloud Shell. Дополнительные сведения см . в кратком руководстве по Azure Cloud Shell.
Запустите Azure Cloud Shell и используйте Bash для установки расширения, выполнив следующие действия.
Настройка параметров из подписки, группы ресурсов и кластеров
subscription="00000000-0000-0000-0000-000000000000" # Replace with your subscription ID
resourceGroup="hcicluster-rg" # Replace with your resource group name
az account set --subscription "${subscription}"
clusters=($(az graph query -q "resources | where type == 'microsoft.azurestackhci/clusters'| where resourceGroup =~ '${resourceGroup}' | project name" | jq -r '.data[].name'))
Чтобы установить расширение Windows Admin Center во всех системах в группе ресурсов, выполните следующую команду:
extensionName="AdminCenter"
extensionType="AdminCenter"
extensionPublisher="Microsoft.AdminCenter"
settingsConfig="{'port':'6516'}"
connectivityProps="{enabled:true}"
for cluster in ${clusters}; do
echo "Enabling Connectivity for cluster $currentCluster"
az stack-hci arc-setting update \
--resource-group ${resourceGroup} \
--cluster-name ${cluster} \
--name "default" \
--connectivity-properties ${connectivityProps}
echo "Installing extension: ${extensionName} on cluster: ${cluster}"
az stack-hci extension create \
--arc-setting-name "default" \
--cluster-name "${cluster}" \
--resource-group "${resourceGroup}" \
--name "${extensionName}" \
--auto-upgrade "true" \
--publisher "${extensionPublisher}" \
--type "${extensionType}" \
--settings "${settingsConfig}"
done
Чтобы установить расширение агента Azure Monitor во всех системах в группе ресурсов, выполните следующую команду:
extensionName="AzureMonitorWindowsAgent"
extensionType="AzureMonitorWindowsAgent"
extensionPublisher="Microsoft.Azure.Monitor"
for cluster in ${clusters}; do
echo "Installing extension: ${extensionName} on cluster: ${cluster}"
az stack-hci extension create \
--arc-setting-name "default" \
--cluster-name "${cluster}" \
--resource-group "${resourceGroup}" \
--name "${extensionName}" \
--auto-upgrade "true" \
--publisher "${extensionPublisher}" \
--type "${extensionType}"
done
Чтобы установить расширение Azure Site Recovery во всех системах в группе ресурсов, выполните следующую команду:
asrSubscription="00000000-0000-0000-0000-000000000000" # Replace with your ASR subscription ID
asrResourceGroup="asr-rg" # Replace with your ASR resource group
asrVaultName="asr-vault" # Replace with your ASR vault name
asrLocation="East US" # Replace with your ASR Location
asrSiteId="00000000-0000-0000-0000-000000000000" # Replace with your ASR Site ID
asrSiteName="asr-site" # Replace with your Site Name
asrSitePolicyId="/subscriptions/${asrSubscription}/resourceGroups/${asrResourceGroup}/providers/Microsoft.RecoveryServices/vaults/${asrVaultName}/replicationPolicies/s-cluster-policy" # Replace with your Site Policy name
extensionName="ASRExtension"
extensionType="Windows"
extensionPublisher="Microsoft.SiteRecovery.Dra"
jsonFile="./tmp-asr.json" #Temp JSON file
echo "{\"SubscriptionId\": \"${asrSubscription}\", \"Environment\": \"AzureCloud\",\"ResourceGroup\": \"${asrResourceGroup}\",\"Location\": \"${asrLocation}\",\"SiteId\": \"${asrSiteId}\", \"SiteName\": \"${asrSiteName}\", \"PolicyId\": \"${asrSitePolicyId}\", \"PrivateEndpointStateForSiteRecovery\": \"None\" }" > ${jsonFile}
for cluster in ${clusters}; do
echo "Installing extension: ${extensionName} on cluster: ${cluster}"
az stack-hci extension create \
--arc-setting-name "default" \
--cluster-name "${cluster}" \
--resource-group "${resourceGroup}" \
--name "${extensionName}" \
--auto-upgrade "true" \
--publisher "${extensionPublisher}" \
--type "${extensionType}" \
--settings "${jsonFile}"
done
Azure PowerShell можно запустить в Azure Cloud Shell. В этом документе описано, как использовать PowerShell в Azure Cloud Shell. Дополнительные сведения см . в кратком руководстве по Azure Cloud Shell.
Настройте параметры из подписки, группы ресурсов и кластеров:
$subscription = "00000000-0000-0000-0000-000000000000" # Replace with your subscription ID
$resourceGroup = "hcicluster-rg" # Replace with your resource group name
Set-AzContext -Subscription "${subscription}"
$clusters = Get-AzResource -ResourceType "Microsoft.AzureStackHCI/clusters" -ResourceGroupName ${resourceGroup} | Select-Object -Property Name
Чтобы установить расширение Windows Admin Center во всех системах в группе ресурсов, выполните следующую команду:
Чтобы установить расширение Azure Site Recovery во всех системах в группе ресурсов, создайте файл параметров JSON и выполните следующую команду:
$settings = @{
SubscriptionId = "<Replace with your Subscription Id>"
Environment = "<Replace with the cloud environment type. For example: AzureCloud>"
ResourceGroup = "<Replace with your Site Recovery Vault resource group>"
ResourceName = "<Replace with your Site Recovery Vault Name>"
Location = "<Replace with your Site Recovery Azure Region>"
SiteId = "<Replace with the ID of your recovery site>"
SiteName = "<Replace with your recovery site name>"
PolicyId = "<Replace with resource ID of your recovery site policy>"
PrivateEndpointStateForSiteRecovery = "None"
}
$extensionName = "ASRExtension"
$extensionType = "Windows"
$extensionPublisher = "Microsoft.SiteRecovery.Dra"
foreach ($cluster in $clusters) {
$clusterName = ${cluster}.Name
Write-Output ("Installing Extension '${extensionType}/${extensionPublisher}' on cluster ${clusterName}")
New-AzStackHciExtension `
-ClusterName "${clusterName}" `
-ResourceGroupName "${resourceGroup}" `
-ArcSettingName "default" `
-Name "${extensionName}" `
-ExtensionParameterPublisher "${extensionPublisher}" `
-ExtensionParameterType "${extensionType}" `
-ExtensionParameterSetting ${settings} `
-NoWait
}
Вы можете проверить состояние расширения на каждом сервере со страницы расширений, просмотрев столбец состояния сетки.
Azure CLI доступна для установки в средах Windows, macOS и Linux. Его также можно запустить в Azure Cloud Shell. Дополнительные сведения см . в кратком руководстве по Azure Cloud Shell.
Запустите Azure Cloud Shell и используйте Bash, чтобы проверить состояние расширения, выполнив следующие действия.
Настройка параметров из подписки, группы ресурсов, имени кластера и имени расширения
subscription="00000000-0000-0000-0000-000000000000" # Replace with your subscription ID
resourceGroup="hcicluster-rg" # Replace with your resource group name
clusterName="HCICluster" # Replace with your cluster name
extensionName="AzureMonitorWindowsAgent" # Replace with the extension name
az account set --subscription "${subscription}"
Чтобы получить список всех расширений в системе, выполните следующую команду:
az stack-hci extension list \
--arc-setting-name "default" \
--cluster-name "${clusterName}" \
--resource-group "${resourceGroup}" \
-o table
Чтобы отфильтровать определенное расширение, выполните AzureMonitorWindowsAgentследующую команду:
Azure PowerShell можно запустить в Azure Cloud Shell. В этом документе описано, как использовать PowerShell в Azure Cloud Shell. Дополнительные сведения см . в кратком руководстве по Azure Cloud Shell.
Настройка параметров из подписки, группы ресурсов и имени кластера
$subscription = "00000000-0000-0000-0000-000000000000" # Replace with your subscription ID
$resourceGroup = "hcicluster-rg" # Replace with your resource group name
Set-AzContext -Subscription "${subscription}"
$clusters = Get-AzResource -ResourceType "Microsoft.AzureStackHCI/clusters" -ResourceGroupName ${resourceGroup} | Select-Object -Property Name
Чтобы получить список всех расширений в системе, выполните следующую команду:
При публикации командой издателя расширений процесс обновления расширения заменяет существующую версию расширения только что поддерживаемой. По умолчанию функция автоматического обновления расширений включена для всех расширений, развернутых в кластерах с поддержкой Локальной Arc Azure, если вы явно не отключаете автоматические обновления.
В настоящее время автоматическое обновление расширений поддерживается только в расширении Windows Admin Center, но в будущем будут добавлены дополнительные расширения.
Примечание.
По умолчанию все расширения настраиваются для включения автоматического обновления, но этот параметр работает только в том случае, если издатель поддерживает его. Если расширение не настроено для включения автоматического обновления, обновление происходит во время процесса обновления решения. Со временем обновления расширений, выполняемые вручную, будут переходить на автоматические обновления.
Для некоторых расширений можно включить автоматическое обновление с помощью управления расширениями.
Чтобы включить автоматическое обновление, перейдите на страницу расширений и выполните следующие действия:
Выберите расширение, для которого нужно включить автоматическое обновление.
Выберите "Включить автоматическое обновление " в верхнем меню
При появлении запроса на подтверждение намерения нажмите кнопку "ОК".
Чтобы установить и включить автоматическое обновление для определенного расширения, например AzureMonitorWindowsAgent выполните следующую команду:
clusterName="HCICluster" # Replace with your cluster name
resourceGroup="hcicluster-rg" # Replace with your resource group name
extensionName="AzureMonitorWindowsAgent"
extensionPublisher="Microsoft.Azure.Monitor"
extensionType="AzureMonitorWindowsAgent"
az stack-hci extension create \
--name "${extensionName}" \
--arc-setting-name "default" \
--cluster-name "${clusterName}" \
--resource-group "${resourceGroup}" \
--publisher ${extensionPublisher} \
--type ${extensionType} \
--auto-upgrade "true"
Чтобы установить и включить автоматическое обновление для определенного расширения, например AzureMonitorWindowsAgent выполните следующую команду:
$clusterName = "HCICluster" # Replace with your cluster name
$resourceGroup = "hcicluster-rg" # Replace with your resource group name
$extensionName = "AzureMonitorWindowsAgent"
$extensionType = "AzureMonitorWindowsAgent"
$extensionPublisher = "Microsoft.Azure.Monitor"
New-AzStackHciExtension `
-ClusterName "${clusterName}" `
-ResourceGroupName "${resourceGroup}" `
-ArcSettingName "default" `
-Name "${extensionName}" `
-ExtensionParameterPublisher "${extensionPublisher}" `
-ExtensionParameterType "${extensionType}" `
-ExtensionParameterEnableAutomaticUpgrade
Обновление расширения вручную с помощью портал Azure
Обновление расширения вручную работает как автоматическое обновление расширения. В кластере с поддержкой Azure Local Arc при обновлении расширения Azure сохраняет выбранную версию. Затем Azure пытается обновить расширение на всех узлах кластера до этой версии.
На некоторых серверах, если обновление расширения завершается ошибкой, платформа пытается обновиться до выбранной версии во время следующей синхронизации локального облака Azure.
Используйте рабочий процесс вручную в следующих сценариях:
Доступна новая версия расширения, и ее необходимо обновить вручную.
Параметр автоматического обновления расширения отключен и имеется несоответствие версий на разных узлах локальной среды Azure.
Чтобы вручную обновить расширение, выполните следующие действия.
Перейдите на страницу расширений .
Выберите расширение, которое вы хотите обновить, и выберите "Параметры " в верхнем меню.
Выберите последнюю версию и нажмите кнопку "Сохранить".
Отключение автоматического обновления расширения
Вы можете отключить автоматическое обновление для определенных расширений в портал Azure. Чтобы отключить автоматическое обновление, перейдите на страницу расширений и выполните следующие действия:
Выберите расширение, для которого нужно отключить автоматическое обновление.
Выберите "Отключить автоматическое обновление " в верхнем меню.
При появлении запроса на подтверждение намерения нажмите кнопку "ОК".
Проверка журнала обновления расширения
Вы можете просмотреть вкладку "Журнал действий" на отдельных серверах с поддержкой Azure Arc, группах ресурсов и подписках, чтобы проверить журнал автоматического обновления расширений для отдельных узлов. Дополнительные сведения см. в статье "Проверка журнала автоматического обновления расширений".
Обновления для доступности
Для группы кластеров с поддержкой Azure Local Arc, проходящих обновление, платформа Azure использовала модель автоматического обновления расширений для оркестрации обновлений.
Время автоматического обновления расширений
При публикации новой версии поддерживаемого расширения она становится доступной для установки и ручного обновления на серверах с поддержкой Azure Arc. Обновления выпускаются в пакетах между регионами и подписками Azure, поэтому вы можете увидеть обновление расширения на некоторых серверах, прежде чем другие. Дополнительные сведения см. в разделе "Время автоматического обновления расширений".
Если обновление расширения завершается сбоем, Azure выполняет действия, связанные с автоматическим откатом и повторите попытку восстановления расширения.
Если при обновлении расширения по-прежнему возникают проблемы, можно отключить автоматическое обновление расширения. При отключении автоматического обновления система предотвращает повторные попытки системы во время устранения проблемы. Вы можете снова включить автоматическое обновление расширений, когда вы будете готовы.
Обновления с несколькими расширениями
Если для узла доступно несколько обновлений расширений, они могут быть пакетированы вместе. Однако каждое обновление расширения применяется отдельно на узле. Дополнительные сведения см. в разделе "Обновления расширений" с несколькими расширениями.
При необходимости можно удалить некоторые расширения из локальной среды Azure в портал Azure. Чтобы удалить расширение, выполните следующие действия.
Перейдите на страницу расширений.
Выберите расширение, которое нужно удалить. Кнопка удаления недоступна для расширений, управляемых Azure.
Выберите "Удалить " в верхнем меню.
Подтвердите намерение и нажмите кнопку "Да".
Чтобы удалить определенное расширение, например AzureMonitorWindowsAgent выполните следующую команду:
extensionName="AzureMonitorWindowsAgent" # Replace with the extension name
resourceGroup="hcicluster-rg" # Replace with your resource group name
clusterName="HCICluster" # Replace with your cluster name
az stack-hci extension delete \
--arc-setting-name "default" \
--name "${extensionName}" \
--cluster-name "${clusterName}" \
--resource-group "${resourceGroup}"
Чтобы удалить определенное расширение, например AzureMonitorWindowsAgent выполните следующую команду:
$clusterName = "HCICluster" # Replace with your cluster name
$resourceGroup = "hcicluster-rg" # Replace with your resource group name
$extensionName = "AzureMonitorWindowsAgent"
Remove-AzStackHciExtension `
-ClusterName "${clusterName}" `
-ResourceGroupName "${resourceGroup}" `
-ArcSettingName "default" `
-Name "${extensionName}"
Устранение ошибок расширения
Состояние расширения: сбой
Рекомендация. Для расширения с состоянием сбоя выберите ссылку "Сбой" (Просмотр сведений). Просмотрите все сведения о сбое и примените советы по устранению неполадок.