Problemen met implementatievalidatie in Azure Portal oplossen voor Azure Local
Van toepassing op: Azure Local 2405 en hoger
Dit artikel bevat richtlijnen voor het oplossen van implementatievalidatieproblemen die zijn opgetreden tijdens de implementatie van Azure Local via Azure Portal.
Fout - validatiefout bij implementatie
Wanneer u Azure Local implementeert via Azure Portal, kan er een implementatievalidatiefout optreden. De validatietaak 'Lokaal Azure-netwerk : netwerkvereisten controleren' mislukt met de volgende fout:
Could not complete the operation. 400: Resource creation validation failed. Details:
[{"Code":"AnswerFileValidationFailed","Message":"Errors in Value Validation:\r\nPhysicalNodesValidator
found error at deploymentdata.physicalnodes[0].ipv4address: The specified for
\u0027deploymentdata.physicalnodes[0].ipv4address\u0027 is not a valid IPv4 address.
Example: 192.168.0.1 or 192.168.0.1","Target":null,"Details":null}].
Als u naar het tabblad Netwerken in azure Portal-implementatie gaat, ziet u in de configuratie van de netwerkintentie de volgende fout:
The selected physical network adapter is not binded to the management virtual switch.
Oorzaak
Dit probleem treedt op bij implementaties die na 6 augustus zijn geactiveerd. Het probleem treedt op als de implementatievalidatie is geactiveerd op het systeem en het validatieresultaat een fout was, met daaropvolgende validatie nieuwe pogingen.
Het probleem treedt op om de volgende reden:
- Validatie op het apparaat maakt een VM-switch voor netwerkgerelateerde tests en wordt na afloop van de tests verwijderd.
-
DeviceManagementExtension
de extensie detecteert het verwijderen van de VM-switch niet.
Aanbevolen oplossing
Het oplossingsproces met meerdere stappen omvat de volgende stappen:
- De vergrendeling van het seed-knooppunt verwijderen
- De validatiefout verwijderen
- De Azure-resource van het Edge-apparaat opschonen met onjuiste informatie over de VM-switch
- De cloudgegevens vernieuwen
- De implementatie opnieuw starten via Azure Portal
- Herstel de vergrendeling op de zaadknooppuntbron
Notitie
Alle stappen in dit artikel moeten uitgevoerd worden op het seed-knooppunt.
De vergrendeling van het seed-knooppunt verwijderen
Volg deze stappen om de vergrendeling van het seed-knooppunt te verwijderen:
- Als u de vergrendeling wilt verwijderen, gaat u in Azure Portal naar het object via de resourcegroep of in Machines - Azure Arc.
- Ga in het linkerdeelvenster naar Instellingen> Vergrendelingen. U ziet nu een vergrendeling met de naam DoNotDelete. Dit is de automatische vergrendeling van middelen die wordt gemaakt wanneer het knooppunt wordt aangesloten.
- Selecteer Verwijderen tegen de vergrendeling.
Als u de stappen in de volgende sectie probeert uit te voeren zonder de vergrendeling te verwijderen, mislukt de opdracht Verwijderen met de volgende fout:
Some resources failed to be deleted (run with `--verbose` for more information):
/subscriptions/<subid>/resourceGroups/<rgname>/providers/Microsoft.HybridCompute/machines/<Machine Name>/providers/Microsoft.AzureStackHCI/edgeDevices/default
Hier volgt de voorbeelduitvoer wanneer deze wordt uitgevoerd met de --verbose
switch:
(ScopeLocked) The scope '/subscriptions/<Subscription ID>/resourceGroups/<Resource Group Name>/providers/Microsoft.HybridCompute/machines/<Machine Name>/providers/Microsoft.AzureStackHCI/edgeDevices/default' cannot perform delete operation because following scope(s) are locked: '/subscriptions/<subid>/resourceGroups/<rgname>/providers/Microsoft.HybridCompute/machines/<Machine Name>'. Please remove the lock and try again.
Code: ScopeLocked
Message: The scope '/subscriptions/<subid>/resourceGroups/<rgname>/providers/Microsoft.HybridCompute/machines/<Machine Name>/providers/Microsoft.AzureStackHCI/edgeDevices/default' cannot perform delete operation because following scope(s) are locked: '/subscriptions/<subid>/resourceGroups/<rgname>/providers/Microsoft.HybridCompute/machines/<Machine Name>'. Please remove the lock and try again.
De validatiefout verwijderen
Nadat de vergrendeling is verwijderd, volgt u deze stappen om de validatiefout op te lossen.
Maak verbinding met het zaadknooppunt. Voer de volgende PowerShell-opdracht uit:
Get-VMSwitch
Controleer de uitvoer van de
Get-VMSwitch
opdracht op onverwachte VM-switches, bijvoorbeeld de switch die wordt gemaakt tijdens de stap Netwerkvalidatie en heeft een naam die vergelijkbaar is met:"ConvergedSwitch(compute_management)"
. De exacte naam van de switch is afhankelijk van de gekozen netwerkintentieconfiguratie.Als er een VM-switch bestaat die u niet opzettelijk hebt gemaakt, verwijdert u de switch. Voer de volgende PowerShell-opdracht uit:
Remove-VMSwitch -Name "<VM Switch Name>" -Force
Zorg ervoor dat u de naam van de VM-switch gebruikt vanuit de
Get-VMSwitch
opdracht. Als u niet opzettelijk een VM-switch hebt gemaakt, heeft deGet-VMSwitch
opdracht geen resultaten. De fout treedt op omdat de netwerkvalidatiestap de VM-switch heeft opgeschoond, maar deDeviceManagementExtension
opschoonbewerking niet is gedetecteerd.
Ga door met de opschoonstappen.
De Azure-resource van het Edge-apparaat opschonen met onjuiste informatie over de VM-switch
Nadat de VM-switch op het apparaat is verwijderd, schoont u de ARM-resource van het Edge-apparaat op met de onjuiste informatie over de VM-switch via de Azure CLI.
Op een client met toegang tot Azure, controleert u of de AZ CLI is geïnstalleerd of voert u de installatie uit: Azure CLI installeren voor Windows
- U kunt de installatie controleren door het volgende uit te voeren:
az
- Als dit is geïnstalleerd, wordt er een
"Welcome to Azure CLI!"
bericht met beschikbare opdrachten uitgevoerd.
- U kunt de installatie controleren door het volgende uit te voeren:
Meld u aan bij Azure met Azure CLI. Voer de volgende opdracht uit:
az login --tenant <tenant ID> --use-device-code
Voer de volgende opdracht uit om een specifiek abonnement in te stellen:
az account set --subscription "<Subscription ID>"
Vervang de waarde in de bovenstaande voorbeeldopdracht door de juiste waarde voor
<Subscription ID>
.Voer de gegevens uit die zijn opgeslagen in de
edgeDevices
resource met de onjuist opgeslagen VM-switchgegevens. Voer de volgende opdracht uit:az resource show --ids "/subscriptions/<Subscription ID>/resourceGroups/<Resource Group Name>/providers/Microsoft.HybridCompute/machines/<Machine Name>/providers/Microsoft.AzureStackHCI/edgeDevices/default"
Vervang de waarden in de bovenstaande voorbeeldopdracht door de juiste waarden voor:
<Subscription ID>
,<Resource Group Name>
en<Machine Name>
.Hier is een voorbeelduitvoer:
az resource show --ids "/subscriptions/<Subscription ID>/resourceGroups/<Resource Group Name>/providers/Microsoft.HybridCompute/machines/ASRR1N26R15U33/providers/Microsoft.AzureStackHCI/edgeDevices/default"
De uitvoer van deze opdracht toont nogal wat details over de <computernaam> die in de opdracht wordt gebruikt. Onder aan de uitvoer ziet u een sectie voor
"switchDetails"
, die naar alle waarschijnlijkheid het volgende weergeeft (de validatie-VM-switch die is gemaakt en opgeschoond op het apparaat, maar niet is gedetecteerd door DeviceManagementExtension en bijgewerkt aan de kant van de cloud):"switchName": "ConvergedSwitch(managementcompute)",
"switchType": "External"
Nadat u hebt bevestigd dat de
show
opdracht heeft gewerkt door deedgeDevices
gegevens weer te geven en waarschijnlijk de"switchDetails"
ook te hebben bevestigd, is het tijd om de resource uit ARM tedelete
zodat deze op de juiste manier vanuit het seed-knooppunt kan worden vernieuwd.Notitie
Het verwijderen van de
edgeDevices
gegevens is een veilige actie die moet worden uitgevoerd, maar moet alleen worden uitgevoerd wanneer deze expliciet wordt vermeld. Voer deze actie niet uit, tenzij u wordt geadviseerd dit te doen.Verwijder de
edgeDevices
resource met de onjuist opgeslagen informatie over de VM-switch. Voer de volgende opdracht uit:az resource delete --ids "/subscriptions/<Subscription ID>/resourceGroups/<Resource Group Name>/providers/Microsoft.HybridCompute/machines/<Machine Name>/providers/Microsoft.AzureStackHCI/edgeDevices/default"
Vervang de waarden (vergeet niet om de <> tekens ook te verwijderen) door de juiste waarden voor:
<subGUID>
<resourceGROUPNAME>
<Machine Name>
Dit is dezelfde resource
--ids
uit deshow
, zodat u gewoon dezelfde tekenreeks kunt gebruiken. In feite kunt u gewoon op 'pijl-omhoog' drukken in de console enshow
vervangen doordelete
.Hier volgt een voorbeeld van output:
`az resource delete --ids "/subscriptions/<Subscription ID>/resourceGroups/<Resource Group Name>/providers/Microsoft.HybridCompute/machines/<Machine Name>/providers/Microsoft.AzureStackHCI/edgeDevices/default"
Wanneer deze opdracht wordt uitgevoerd, is er geen uitvoer daarvan. De opdracht werkt en retourneert de opdrachtprompt of geeft een fout weer. Er zou geen fout moeten optreden, maar als dat wel gebeurt, is er meer onderzoek nodig.
Controleer de verwijdering van de resource door de
show
opdracht opnieuw uit te voeren. Hier is een voorbeeld van de uitvoer:(ResourceNotFound) The resource 'Microsoft.HybridCompute/machines/<Machine Name>/providers/Microsoft.AzureStackHCI/edgeDevices/default' could not be found. Code: ResourceNotFound Message: The resource 'Microsoft.HybridCompute/machines/<Machine Name>/providers/Microsoft.AzureStackHCI/edgeDevices/default' could not be found.
De cloudgegevens edgeDevices
vernieuwen
Wanneer de ARM-resource en alle onbedoelde VM-switches zijn verwijderd, vernieuwt u de gegevens aan de cloudzijde edgeDevices
opnieuw.
Volg deze stappen om de cloudgegevens te vernieuwen:
Start het
DeviceManagementService
seed-knooppunt opnieuw op. Voer de volgende PowerShell-opdracht uit:Restart-Service DeviceManagementService
Wacht enkele minuten en controleer vervolgens of de cloudgegevens
edgeDevices
zijn bijgewerkt en de huidige status weerspiegelen. Voer deshow
opdracht opnieuw uit en controleer de uitvoer. Zorg ervoor dat de uitvoer geen onverwachte VM-switches meer bevat, namelijk:"switchName": "ConvergedSwitch(managementcompute)",
"switchType": "External"
De implementatie opnieuw starten via Azure Portal
Nu apparaat- en cloudgegevens weer gesynchroniseerd zijn, kunt u naar Azure Portal gaan en de implementatie-invoer opgeven. In de vorige stap voorkomt u dat gegevens in de cache worden opgeslagen uit eerdere pogingen.
Volg deze stappen in Azure Portal:
Op het tabblad Basisinformatie voert u uw gegevens opnieuw in door uit de vervolgkeuzelijsten bovenaan te selecteren.
Vink de knooppunten onderaan de pagina uit.
Hervalideer de herverkozen knooppunten.
Bevestig de informatie op de volgende pagina's. U zou de volgende wijzigingen moeten zien:
- Op de pagina Netwerken ziet u de fout die eerder mogelijk was gezien, nu niet meer.
- Aan het einde op de Validatie-pagina, als u het oorspronkelijke probleem hebt opgelost, wordt de
deploymentdata.physicalnodes[0].ipv4address is not a valid IPv4 address
fout niet weergegeven.
Als er geen andere validatieproblemen optreden, start u de implementatie.
Maak de vergrendeling van de seed-knooppuntresource opnieuw
Nadat de mitigatie is voltooid, adviseren wij sterk om de vergrendeling voor de resource opnieuw te maken.
Volg deze stappen om de vergrendeling opnieuw te maken:
- Ga in Azure Portal naar het object via de resourcegroep of in Machines - Azure Arc.
- Ga naar Instellingen > Vergrendelingen.
- Selecteer + Toevoegen boven aan de pagina.
- Voor vergrendelnaam, voer DoNotDelete in.
- Voor type vergrendeling selecteer Verwijderen in de vervolgkeuzelijst.
- Selecteer OK om de vergrendeling op te slaan.