Lezen in het Engels Bewerken

Delen via


Fouten oplossen bij het in- of uitschakelen van Azure Arc op uw AKS-workloadclusters in AKS ingeschakeld door Arc

Van toepassing op: AKS in Azure Local, AKS op Windows Server

In dit artikel worden fouten beschreven die kunnen optreden (en hun tijdelijke oplossingen) tijdens het verbinden of verbreken van uw AKS-workloadclusters met Azure Arc met behulp van de PowerShell-cmdlets Enable-AksHciArcConnection en Disable-AksHciArcConnection in AKS Arc. Zie Problemen met Kubernetes met Arc oplossen voor problemen die niet worden behandeld in dit artikel.

U kunt ook een ondersteuningsprobleem openen als geen van de vermelde tijdelijke oplossingen op u van toepassing is.

Fout: 'Er is geen workloadcluster met de naam 'my-aks-cluster' gevonden'

Deze fout betekent dat u het workloadcluster niet hebt gemaakt of dat u de naam van het workloadcluster onjuist hebt gespeld.

Voer Get-AksHciCluster uit om ervoor te zorgen dat u de juiste naam hebt of dat het cluster dat u wilt verbinden met Arc bestaat.

Fout: "System.Management.Automation.RemoteException Starting onboarding process Cluster "azure-arc-onboarding" set..."

De volgende fout kan optreden wanneer u Windows Admin Center gebruikt om een workloadcluster te maken en dit te verbinden met Kubernetes met Arc:

System.Management.Automation.RemoteException Starting onboarding process Cluster "azure-arc-onboarding" set. User "azure-arc-onboarding" set. Context "azure-arc-onboarding" created. Switched to context "azure-arc-onboarding". Azure login az login: error: argument --password/-p: expected one argument usage: az login [-h] [--verbose] [--debug] [--only-show-errors] [--output {json,jsonc,yaml,yamlc,table,tsv,none}] [--query JMESPATH] [--username USERNAME] [--password PASSWORD] [--service-principal] [--tenant TENANT] [--allow-no-subscriptions] [-i] [--use-device-code] [--use-cert-sn-issuer] : Job Failed Condition]

Bekijk de onderstaande opties om dit probleem op te lossen:

Enable-AksHciArcConnection mislukt als Connect-AzAccount wordt gebruikt om u aan te melden bij Azure

Wanneer u Connect-AzAccount zich aanmeldt bij Azure, kunt u een ander abonnement instellen als uw standaardcontext dan het abonnement dat u als invoer Set-AksHciRegistrationhebt opgegeven. Wanneer u vervolgens uitvoert Enable-AksHciArcConnection, verwacht de opdracht het abonnement dat wordt gebruikt in Set-AksHciRegistration. Haalt Enable-AksHciArcConnection echter de standaardabonnementenset op met behulp van de Connect-AzAccount, en kan daarom een fout veroorzaken.

Volg een van de onderstaande opties om deze fout te voorkomen:

  • Optie 1: Voer uit Set-AksHciRegistration om u aan te melden bij Azure met dezelfde parameters (abonnement en resourcegroep) die u hebt gebruikt toen u de opdracht voor het eerst uitvoerde om uw AKS-host te verbinden met Azure voor facturering. U kunt vervolgens met standaardwaarden gebruikmaken Enable-AksHciArcConnection -Name <ClusterName> en uw cluster wordt verbonden met Arc onder het AKS-hostfactureringsabonnement en de resourcegroep.

  • Optie 2: Voer Enable-AksHciArcRegistration uit met alle parameters, subscription, resource group, location, tenanten secret, om uw cluster te verbinden met Azure Arc onder een ander abonnement en een andere resourcegroep dan de AKS-host. U moet ook worden uitgevoerd Enable-AksHciArcRegistration als u niet over voldoende machtigingen beschikt om uw cluster te verbinden met Azure Arc met behulp van uw Azure-account (bijvoorbeeld als u niet de eigenaar van het abonnement bent).

Fout: 'Er is een time-out opgetreden bij het wachten op de voorwaarde'

Deze fout verwijst meestal naar een van de volgende problemen:

  • De clusters zijn gemaakt in een virtuele Azure-machine in een gevirtualiseerde omgeving of u hebt AKS geïmplementeerd op Azure Local op meerdere niveaus van virtualisatie.
  • Een traag internet heeft de time-out veroorzaakt.

Als een van de bovenstaande scenario's van toepassing is op u, voert u Disable-AksHciArcConnection uit en probeert u opnieuw verbinding te maken. Als het bovenstaande scenario niet van toepassing is op u, opent u een ondersteuningsprobleem voor AKS in Azure Local.

Fout: 'Geheimen 'sh.helm.release.v1.azure-arc.v1' niet gevonden'

Deze fout geeft aan dat uw Kubernetes API-server niet kan worden bereikt.

Voer de Disable-AksHciArcConnection opdracht opnieuw uit en ga vervolgens naar Azure Portal om te bevestigen dat uw connectedCluster resource daadwerkelijk is verwijderd. U kunt ook uitvoeren kubectl get ns -A om te bevestigen dat de naamruimte, azure-arcniet bestaat in uw cluster.

Fout: 'Verbinding met Azure is mislukt. Voer Set-AksHciRegistration uit en probeer het opnieuw'

Deze fout betekent dat uw aanmeldingsreferenties voor Azure zijn verlopen.

Gebruik Set-AksHciRegistration deze opdracht om u aan te melden bij Azure voordat u de Enable-AksHciArcConnection opdracht opnieuw uitvoert. Zorg ervoor dat u bij het opnieuw uitvoeren Set-AksHciRegistrationdezelfde abonnements- en resourcegroepgegevens gebruikt die u hebt gebruikt toen u de AKS-host voor het eerst bij Azure registreerde voor facturering. Als u de opdracht opnieuw uitvoert met een ander abonnement of een andere resourcegroep, worden deze niet geregistreerd. Zodra het abonnement en de resourcegroep zijn ingesteld Set-AksHciRegistration, kunnen ze niet meer worden gewijzigd zonder AKS Arc te verwijderen.

Fout: 'Mijn cluster' is geen geldige clusternaam. Namen moeten kleine letters zijn en overeenkomen met het reguliere expressiepatroon: ^[a-z0-9][a-z0-9-]*[a-z0-9]$'

Deze fout geeft aan dat het workloadcluster niet voldoet aan de Kubernetes-naamconventie.

Zoals de fout al aangeeft, moet u ervoor zorgen dat de clusternaam kleine letters bevat en overeenkomt met het reguliere expressiepatroon: ^[a-z0-9][a-z0-9-]*[a-z0-9]$'.

Fout: 'addons.msft.microsoft 'demo-arc-onboarding' bestaat al'

Deze fout betekent meestal dat u uw AKS-cluster al hebt verbonden met Kubernetes met Arc. Als u wilt bevestigen dat de verbinding is gemaakt, gaat u naar Azure Portal en controleert u onder het abonnement en de resourcegroep die u hebt opgegeven tijdens het uitvoeren Set-AksHciRegistration (als u de standaardwaarden hebt gebruikt) of Enable-AksHciArcConnection (als u geen standaardwaarden hebt gebruikt). U kunt ook controleren of uw AKS in het lokale Azure-cluster is verbonden met Azure door de az connectedk8s show Azure CLI-opdracht uit te voeren. Als u uw workloadcluster niet ziet, voert u het uit Disable-AksHciArcConnection en probeert u het opnieuw.

Fout: 'autorest/azure: Service heeft een fout geretourneerd. Status=404 Code="ResourceNotFound"..."

Deze fout betekent dat Azure de connectedCluster Azure Resource Manager-resource die aan uw cluster is gekoppeld, niet kan vinden:

'autorest/azure: Service heeft een fout geretourneerd. Status=404 Code="ResourceNotFound" Message="The Resource 'Microsoft.Kubernetes/connectedClusters/my-workload-cluster' under resource group 'AKS-HCI2' is niet gevonden. Ga naar https://aka.ms/ARMResourceNotFoundFix"]" voor meer informatie

Deze fout kan optreden als:

  • U hebt een onjuiste resourcegroep of een onjuist abonnement opgegeven tijdens het uitvoeren van de Disable-AksHciArcConnection cmdlet.
  • U hebt de resource handmatig verwijderd in Azure Portal.
  • Azure Resource Manager kan uw Azure-resource niet vinden.

Zie Resource niet gevonden fouten oplossen om deze fout op te lossen, zoals aangegeven in het foutbericht.

Fout: "Cluster addons arc uninstall Error: namespaces "azure-arc" not found"

Deze fout betekent meestal dat u Arc-agents al hebt verwijderd uit uw workloadcluster of dat u de azure-arc naamruimte handmatig hebt verwijderd met behulp van de kubectl opdracht.

Ga naar Azure Portal om te bevestigen dat u geen gelekte resources hebt. Controleer bijvoorbeeld of u geen connectedCluster resource in het abonnement en de resourcegroep ziet.

Fout: 'Azure-abonnement is niet juist geconfigureerd'

Dit probleem kan optreden als u uw Azure-abonnement niet hebt geconfigureerd met de Kubernetes-resourceproviders met Arc. We controleren momenteel of Microsoft.Kubernetes en Microsoft.KubernetesConfiguration geconfigureerd zijn.

Zie Providers registreren voor Kubernetes met Arc voor meer informatie over het inschakelen van deze resourceproviders.

Fout: 'Kan ConfigMap 'azure-clusterconfig' niet lezen in de naamruimte 'azure-arc'

Dit probleem kan optreden bij het opnieuw inschakelen van de Arc-verbinding op een AKS-cluster nadat u een bestaande verbinding hebt uitgeschakeld. De fout wordt veroorzaakt door een wijziging in de naamruimte waarin Azure Arc-geheimen worden opgeslagen.

De stappen die leiden tot de fout zijn:

  1. Een workloadcluster verbinden met Azure Arc met Enable-AksHciArcConnection -name $clusterName.
  2. Koppel het cluster los van Azure Arc: Disable-AksHciArcConnection -name $clusterName.
  3. Verbind het workloadcluster opnieuw met Azure Arc met deze opdracht: Enable-AksHciArcConnection -name $clusterName

De fout is:

returned a non zero exit code 1 [Error: Job azure-arc-onboarding terminated with Failed to run CLI command: Error from server (NotFound): namespaces "azure-arc"
not found
System.Management.Automation.RemoteException
ERROR: Unable to read ConfigMap 'azure-clusterconfig' in 'azure-arc' namespace:
Error Response: {"kind":"Status","apiVersion":"v1","metadata":{},"status":"Failure","message":"configmaps \"azure-clusterconfig\" not
found","reason":"NotFound","details":{"name":"azure-clusterconfig","kind":"configmaps"},"code":404}
System.Management.Automation.RemoteException
System.Management.Automation.RemoteException
: Job Failed Condition

Enable-AksHciArcConnection mislukt altijd en nadat u deze hebt uitgevoerd Disable-AksHciArcConnection, is er een resterend geheim in de naamruimte azure-arc-release. Als u wilt controleren of het geheim bestaat, kunt u de volgende opdracht uitvoeren en controleren of er geen geheim wordt vermeld:

kubectl get secret -nazure-arc-release sh.helm.release.v1.azure-arc.v1

U kunt dit probleem omzeilen door de naamruimte azure-arc-release te verwijderen nadat u deze hebt uitgevoerd Disable-AksHciArcConnection:

$clusterName = "<name of cluster>"
Get-AksHciCredential -name $clusterName
kubectl delete namespace azure-arc-release
Disable-AksHciArcConnection -name $clusterName
Enable-AksHciArcConnection -name $clusterName