Rozwiązywanie problemów z zarządzaniem maszynami wirtualnymi usługi Azure Arc
Dotyczy: Azure Stack HCI, wersja 23H2
Ten artykuł zawiera wskazówki dotyczące zbierania dzienników i rozwiązywania problemów z maszynami wirtualnymi usługi Azure Arc w klastrze azure Stack HCI. Zawiera również listę ograniczeń i znanych problemów, które obecnie istnieją w przypadku zarządzania maszynami wirtualnymi usługi Azure Arc.
Zbieranie dzienników
Dzienniki można zbierać w celu identyfikowania i rozwiązywania problemów z maszynami wirtualnymi usługi Arc w systemie Azure Stack HCI. Użyj tych dzienników, aby zebrać kluczowe informacje przed skontaktowanie się z pomocą techniczną firmy Microsoft w celu uzyskania dodatkowej pomocy.
Upewnij się, że masz najnowszy moduł programu PowerShell na potrzeby zbierania dzienników. Aby zaktualizować moduł programu PowerShell, uruchom następujące polecenie:
#Update the PowerShell module
Install-Module -Name ArcHci -Force -Confirm:$false -SkipPublisherCheck -AcceptLicense
Aby zebrać dzienniki maszyn wirtualnych usługi Arc w klastrze usługi Azure Stack HCI, uruchom następujące polecenie:
$csv_path="<input-from-admin>"
$VMIP_1="<input-from-admin>"
az login --use-device-code
Get-ArcHCILogs -workDirectory $csv_path\ResourceBridge -kvaTokenPath $csv_path\ResourceBridge\kvatoken.tok -ip $VMIP_1
Gdzie:
$csv_path to pełna ścieżka udostępnionego woluminu klastra udostępnionego do tworzenia mostka zasobów usługi Arc.
$VMIP_1 to adres IP maszyny wirtualnej mostka zasobów usługi Arc.
Opcjonalnie ustaw
-logDir
parametr , aby określić ścieżkę do katalogu, w którym są przechowywane wygenerowane dzienniki. Jeśli nie określisz ścieżki lub parametru, domyślnie dzienniki są przechowywane w bieżącym katalogu roboczym.
Rozwiązywanie problemów z maszynami wirtualnymi usługi Azure Arc
W tej sekcji opisano błędy związane z zarządzaniem maszynami wirtualnymi usługi Azure Arc i ich zalecanymi rozwiązaniami.
Niepowodzenie podczas próby włączenia zarządzania gościem
Podczas próby uruchomienia polecenia w celu włączenia zarządzania gościem zostanie wyświetlony następujący błąd:
Błąd: Deployment failed. Correlation ID: 5d0c4921-78e0-4493-af16-dffee5cbf9d8. VM Spec validation failed for guest agent provisioning: Invalid managed identity. A system-assigned managed identity must be enabled in parent resource: Invalid Configuration
Powyższy błąd jest spowodowany tym, że tożsamość zarządzana nie została utworzona dla tej maszyny wirtualnej. Tożsamość zarządzana przypisana przez system jest wymagana do włączenia zarządzania gościem.
Rozwiązanie:
Wykonaj następujące kroki, aby sprawdzić, czy tożsamość zarządzana nie została utworzona dla tej maszyny wirtualnej, a następnie włączyć tożsamość zarządzaną przypisaną przez system.
W witrynie Azure Portal przejdź do maszyny wirtualnej. Przejdź do strony Przegląd . Na karcie Właściwości w obszarze Konfiguracja zarządzanie gościem powinno być wyświetlane jako Wyłączone. Wybierz widok JSON w prawym górnym rogu.
W obszarze
Identity
parametru wartość powinna być wyświetlanatype
jakoNone
.Aby utworzyć tożsamość zarządzaną, połącz się z serwerem Azure Stack HCI za pośrednictwem protokołu RDP. Uruchom następujące polecenie:
az extension add --name connectedmachine
Sprawdź, czy rozszerzenie interfejsu wiersza polecenia połączonej maszyny jest zainstalowane w klastrze. Oto przykładowe dane wyjściowe z pomyślnie zainstalowanym rozszerzeniem. Wskazuje
connectedmachine
, że jest zainstalowana wersja 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> ```
Uruchom następujące polecenie, aby przypisać tożsamość zarządzaną systemu do maszyny wirtualnej.
az connectedmachine update --ids "<Resource Manager ID for the VM>" --set identity.type="SystemAssigned"
Przejdź do witryny Azure Portal i przejdź do strony Przegląd . Widok JSON powinien wskazywać, że tożsamość zarządzana systemu jest teraz przypisana do maszyny wirtualnej.
Niepowodzenie wdrażania maszyny wirtualnej usługi Arc
Podczas próby wdrożenia maszyny wirtualnej usługi Arc w klastrze azure Stack HCI jest wyświetlany następujący błąd:
Błąd: {"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."}
Powyższy błąd jest spowodowany tym, że SystemAssigned
obiekt tożsamości zarządzanej nie znajduje się pod typem Microsoft.HybridCompute/machines
zasobu.
Rozwiązanie:
Sprawdź w szablonie wdrożenia, że:
Obiekt tożsamości zarządzanej SystemAssigned
jest w obszarze Microsoft.HybridCompute/machines
typu zasobu, a nie w obszarze Microsoft.AzureStackHCI/VirtualMachineInstances
typu zasobu.
Szablon wdrożenia powinien być zgodny z podanym przykładowym szablonem. Aby uzyskać więcej informacji, zobacz przykładowy szablon w artykule Create Arc virtual machines on Azure Stack HCI (Tworzenie maszyn wirtualnych usługi Arc w usłudze Azure Stack HCI).
Niepowodzenie usuwania ścieżki magazynu
Podczas próby usunięcia ścieżki magazynu w klastrze usługi Azure Stack HCI może zostać wyświetlony błąd podobny do poniższego komunikatu. Numery zasobów i wersje mogą się różnić w danym scenariuszu.
Błąd: "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,
Rozwiązanie:
Obrazy wymienione w komunikacie o błędzie różnią się od typowych obciążeń, które są reprezentowane jako obiekty usługi Azure Resource Manager (ARM) w witrynie Azure Portal i interfejsie wiersza polecenia. Ten błąd występuje, ponieważ te obrazy są pobierane bezpośrednio do systemu plików, którego platforma Azure nie mogła rozpoznać.
Przed podjęciem próby usunięcia ścieżki magazynu wykonaj następujące kroki:
- Usuń skojarzone obciążenia i obrazy obecne na ścieżce magazynu, którą chcesz usunąć. Poszukaj następujących prefiksów na nazwach obrazów:
linux-cblmariner
, ,windows-windows2022
windows-windows2019
,windows_k8s
,aks-image-merged
linux-K8s
. - Utwórz bilet pomocy technicznej w witrynie Azure Portal.
Instalacja interfejsu wiersza polecenia platformy Azure nie jest rozpoznawana
Jeśli środowisko nie rozpoznaje interfejsu wiersza polecenia platformy Azure po jego zainstalowaniu, uruchom następujący blok kodu, aby dodać ścieżkę instalacji interfejsu wiersza polecenia platformy Azure do ścieżki środowiska.
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"
}