Поделиться через


Устранение неполадок управления виртуальными машинами Azure Arc

Область применения: Azure Stack HCI версии 23H2

В этой статье содержатся рекомендации по сбору журналов и устранению неполадок с виртуальными машинами Azure Arc в кластере Azure Stack HCI. В нем также перечислены ограничения и известные проблемы, которые в настоящее время существуют при управлении виртуальными машинами Azure Arc.

Устранение неполадок виртуальных машин Azure Arc

В этом разделе описываются ошибки, связанные с управлением виртуальными машинами Azure Arc и их рекомендуемыми разрешениями.

Сбой при попытке включить управление гостевыми клиентами

При попытке выполнить команду для включения гостевого управления вы увидите следующую ошибку:

Ошибка: Deployment failed. Correlation ID: aaaa0000-bb11-2222-33cc-444444dddddd. VM Spec validation failed for guest agent provisioning: Invalid managed identity. A system-assigned managed identity must be enabled in parent resource: Invalid Configuration

Эта ошибка связана с тем, что управляемое удостоверение не было создано для этой виртуальной машины. Управляемое удостоверение, назначаемое системой, требуется для включения гостевого управления.

Решение.

Выполните следующие действия, чтобы убедиться, что управляемое удостоверение не создано для этой виртуальной машины, а затем включите управляемое удостоверение, назначаемое системой.

  1. В портал Azure перейдите на виртуальную машину. Перейдите на страницу обзора . На вкладке "Свойства" в разделе "Конфигурация" управление гостевыми клиентами должно отображаться как "Отключено". Выберите представление JSON в правом верхнем углу.

    Снимок экрана: получение представления JSON.

  2. Под Identity параметром type должно отображаться как None.

    Снимок экрана: представление JSON, указывающее, что управляемое удостоверение отсутствует.

  3. Чтобы создать управляемое удостоверение, подключитесь к серверу Azure Stack HCI через RDP. Выполните следующую команду:

    az extension add --name connectedmachine
    
  4. Убедитесь, что в кластере установлено расширение CLI подключенного компьютера. Ниже приведен пример выходных данных с успешно установленным расширением. Указывает connectedmachine , что установлена версия 0.7.0.

    [v-hostl]: PS C:\Clusterstorage\lnfrastructure_l\ArcHci> az version
    {
    "azure-cli": "2.53.0",
    "azure-cli-core": "2.53.0",
    "azure-cli-telemetry": "1.1.0",
    "extensions": {
        "akshybrid": "0.1.1",
        "arcappliance"^ "1.0.2",
        "connectedk8s": "1.5.4",
        "connectedmachine": "0.7.0",
        "customlocation": "0.1.3",
        "hybridaks": "0.2.4",
        "k8s-extension": "1.4.5",
        "stack-hci-vm": "0.1.8"
        }
    }
    [v-hostl]: PS C:\ClusterStorage\Infrastructure_l\ArcHci>
        ```
    
  5. Выполните следующую команду, чтобы назначить управляемое системой удостоверение виртуальной машине.

    az connectedmachine update --ids "<Resource Manager ID for the VM>" --set identity.type="SystemAssigned"
    
  6. Перейдите к портал Azure и перейдите на страницу обзора. Представление JSON должно указывать, что системное управляемое удостоверение теперь назначается виртуальной машине.

    Снимок экрана: представление JSON при включенном управляемом удостоверении.

Сбой при развертывании образа виртуальной машины из учетной записи хранения

При попытке развернуть образ виртуальной машины из учетной записи хранения в кластере Azure Stack HCI возникает следующая ошибка:

Ошибка: {"code":"moc-operator galleryimage serviceClient returned an error while reconciling: rpc error: code = Unknown desc = ===== RESPONSE ERROR (ErrorCode=AuthorizationPermissionMismatch) =====\nDescription=, Details: (none)\n","message":"moc-operator galleryimage serviceClient returned an error while reconciling: rpc error: code = Unknown desc = ===== RESPONSE ERROR (ErrorCode=AuthorizationPermissionMismatch) =====\nDescription=, Details: (none)\n"}

Вы увидите следующее сообщение об ошибке:

Ошибка: {"code":"moc-operator galleryimage serviceClient returned an error while reconciling: rpc error: code = Unknown desc = ===== RESPONSE ERROR (ErrorCode=NoAuthenticationInformation) =====\nDescription=, Details: (none)\n","message":"moc-operator galleryimage serviceClient returned an error while reconciling: rpc error: code = Unknown desc = ===== RESPONSE ERROR (ErrorCode=NoAuthenticationInformation) =====\nDescription=, Details: (none)\n"}

Сбой возникает, так как пользователь, создающий образ, не имеет необходимых разрешений для доступа к образу из учетной записи хранения. Пользователь должен иметь роль участника данных BLOB-объектов хранилища в учетной записи хранения, используемой для образа. Дополнительные сведения см. в статье "Назначение ролей Azure для доступа к данным BLOB-объектов".

Решение.

Добавьте роль участника данных BLOB-объектов хранилища пользователю, который должен создать образ из этой учетной записи хранения. После добавления роли повторите развертывание образа.

При попытке развернуть образ виртуальной машины из учетной записи хранения также может появиться следующая ошибка:

Ошибка: {"code":"moc-operator galleryimage serviceClient returned an error while reconciling: rpc error: code = Unknown desc = ===== RESPONSE ERROR (ErrorCode=InvalidBlobType) =====\nDescription=The blob type is invalid for this operation.\nRequestId:5e74055f-e01e-0033-66eb-ff9734000000\nTime:2024-09-05T23:32:56.3001852Z, Details: (none)\n","message":"moc-operator galleryimage serviceClient returned an error while reconciling: rpc error: code = Unknown desc = ===== RESPONSE ERROR (ErrorCode=InvalidBlobType) =====\nDescription=The blob type is invalid for this operation.\nRequestId:5e74055f-e01e-0033-66eb-ff9734000000\nTime:2024-09-05T23:32:56.3001852Z, Details: (none)\n","additionalInfo":[{"type":"ErrorInfo","info":{"category":"Uncategorized","recommendedAction":"","troubleshootingURL":""}}]}

Эта ошибка связана с тем, что тип БОЛЬШОго двоичного объекта не является правильным в учетной записи хранения. Изображение должно иметь page blob тип.

Решение.

Отправьте образ в page blob format учетную запись хранения и повторите развертывание образа.

Убедитесь, что у пользователя есть правильные разрешения, и большой двоичный объект находится в правильном формате. Дополнительные сведения см. в статье "Добавление образа виртуальной машины из учетной записи служба хранилища Azure".

Сбой при развертывании виртуальной машины Arc

При попытке развернуть виртуальную машину Arc в кластере Azure Stack HCI возникает следующая ошибка:

Ошибка: {"code":"ConflictingOperation","message":"Unable to process request 'Microsoft.AzureStackHCI/virtualMachineInstances'. There is already a previous running operation for resource '/subscriptions/<subscription ID>/resourceGroups/<Resource group name>/providers/Microsoft.HybridCompute/machines/<VM name>/providers/Microsoft.AzureStackHCI/virtualMachineInstances/default'. Please wait for the previous operation to complete."}

Эта ошибка связана с тем, что SystemAssigned объект управляемого удостоверения не находится в типе Microsoft.HybridCompute/machines ресурса.

Решение.

Проверьте в шаблоне развертывания следующее:

Объект SystemAssigned управляемого удостоверения находится под Microsoft.HybridCompute/machines типом ресурса, а не под Microsoft.AzureStackHCI/VirtualMachineInstances типом ресурса.

Шаблон развертывания должен соответствовать предоставленному образцу шаблона. Дополнительные сведения см. в примере шаблона в статье "Создание виртуальных машин Arc" в Azure Stack HCI.

Сбой удаления пути к хранилищу

При попытке удалить путь к хранилищу в кластере Azure Stack HCI может появиться ошибка, аналогичная приведенному ниже сообщению. Номера ресурсов и версии могут отличаться в вашем сценарии.

Ошибка: "errorMessage" serviceClient returned an error during deletion: The storage container service returned an error during deletion: rpc error: code = Unknown desc = Container is in ACTIVE use by Resources [6:
- linux-cblmariner-0.2.0.10503
- windows-windows2019-0.2.0.10503
- windows-windows2022-0.2.0.10503
].
Remove all the Resources from this container, before trying to delete: In Use: Failed,

Решение.

Изображения, перечисленные в сообщении об ошибке, отличаются от типичных рабочих нагрузок, которые представлены как объекты Azure Resource Manager (ARM) в портал Azure и CLI. Эта ошибка возникает, так как эти образы загружаются непосредственно в файловую систему, которую Azure не распознает.

Выполните следующие действия, прежде чем попытаться удалить путь к хранилищу:

  1. Удалите связанные рабочие нагрузки и изображения, присутствующих в пути к хранилищу, который требуется удалить. Найдите следующие префиксы на именах изображений: linux-cblmariner, windows-windows2019, windows-windows2022, windows_k8s, , aks-image-merged. linux-K8s
  2. Отправьте запрос в службу поддержки в портал Azure.

Установка Azure CLI не распознана

Если после установки среды не удается распознать Azure CLI, выполните следующий блок кода, чтобы добавить путь установки Azure CLI в путь к среде.

        if ( -not( $env:PATH -like '*C:\Program Files (x86)\Microsoft SDKs\Azure\CLI2\wbin*') ) {
            $env:PATH += "C:\Program Files (x86)\Microsoft SDKs\Azure\CLI2\wbin;"
            Write-Host "Updated path $env:PATH"
        }

Следующие шаги