Aangepaste locaties maken en beheren in Kubernetes met Azure Arc
De functie aangepaste locaties biedt een manier om uw Kubernetes-clusters met Azure Arc te configureren als doellocaties voor het implementeren van exemplaren van Azure-aanbiedingen. Voorbeelden van Azure-aanbiedingen die kunnen worden geïmplementeerd op aangepaste locaties, zijn databases, zoals SQL Managed Instance ingeschakeld door Azure Arc en PostgreSQL-server met Azure Arc of toepassingsexemplaren, zoals App Services, Functions, Event Grid, Logic Apps en API Management.
Een aangepaste locatie heeft een een-op-een-toewijzing aan een naamruimte binnen het Kubernetes-cluster met Azure Arc. De Azure-resource voor aangepaste locaties in combinatie met op rollen gebaseerd toegangsbeheer van Azure (Azure RBAC) kan worden gebruikt om gedetailleerde machtigingen te verlenen aan toepassingsontwikkelaars of databasebeheerders, zodat ze resources zoals databases of toepassingsexemplaren kunnen implementeren op Kubernetes-clusters met Arc in een omgeving met meerdere tenants.
In dit artikel leert u hoe u aangepaste locaties inschakelt op een Kubernetes-cluster met Arc en hoe u een aangepaste locatie maakt.
Vereisten
Azure CLI installeren of upgraden naar de nieuwste versie.
Installeer de nieuwste versies van de volgende Azure CLI-extensies:
connectedk8s
k8s-extension
customlocation
az extension add --name connectedk8s az extension add --name k8s-extension az extension add --name customlocation
Als u de
connectedk8s
,k8s-extension
encustomlocation
extensies al hebt geïnstalleerd, werkt u bij naar de nieuwste versie met behulp van de volgende opdracht:az extension update --name connectedk8s az extension update --name k8s-extension az extension update --name customlocation
Controleer de voltooide providerregistratie voor
Microsoft.ExtendedLocation
.Voer de volgende opdrachten in:
az provider register --namespace Microsoft.ExtendedLocation
Controleer het registratieproces. Registratie kan tot 10 minuten duren.
az provider show -n Microsoft.ExtendedLocation -o table
Zodra de status is geregistreerd, heeft de
RegistrationState
status deRegistered
waarde.
Controleer of u een bestaand Met Azure Arc verbonden Kubernetes-cluster hebt en werk uw agents bij naar de nieuwste versie. Controleer of de computer waarop u de opdrachten uitvoert die in dit artikel worden beschreven, een
kubeconfig
bestand bevat dat naar dit cluster verwijst.
Aangepaste gebieden inschakelen op uw cluster
Tip
De functie Aangepast gebied is afhankelijk van de functie Clusterverbinding. Beide functies moeten zijn ingeschakeld in het cluster om aangepaste gebieden te laten functioneren. Volg de onderstaande stappen om de functie voor aangepaste locaties in te schakelen:
Als u bent aangemeld bij Azure CLI als Microsoft Entra-gebruiker, gebruikt u de volgende opdracht:
az connectedk8s enable-features -n <clusterName> -g <resourceGroupName> --features cluster-connect custom-locations
Als u de bovenstaande opdracht uitvoert terwijl u bent aangemeld bij Azure CLI met behulp van een service-principal, ziet u mogelijk de volgende waarschuwing:
Unable to fetch oid of 'custom-locations' app. Proceeding without enabling the feature. Insufficient privileges to complete the operation.
Deze waarschuwing treedt op omdat de service-principal niet beschikt over de benodigde machtigingen voor het ophalen van de oid
(object-id) van de aangepaste locatie die wordt gebruikt door de Azure Arc-service. Volg deze stappen om deze fout te voorkomen:
Meld u aan bij Azure CLI met uw gebruikersaccount.
Voer de volgende opdracht uit om de
oid
(object-id) van de aangepaste locatie op te halen, waar--id
vooraf is gedefinieerd en ingesteldbc313c14-388c-4e7d-a58e-70017303ee3b
op:Belangrijk Kopieer en voer de opdracht precies uit zoals hieronder wordt weergegeven. Vervang de waarde die aan de
--id
parameter wordt doorgegeven niet door een andere waarde.az ad sp show --id bc313c14-388c-4e7d-a58e-70017303ee3b --query id -o tsv
Meld u aan bij Azure CLI met behulp van de service-principal. Voer de volgende opdracht uit om de functie voor aangepaste locaties in het cluster in te schakelen met behulp van de
oid
waarde (object-id) uit de vorige stap voor de--custom-locations-oid
parameter:az connectedk8s enable-features -n <cluster-name> -g <resource-group-name> --custom-locations-oid <cl-oid> --features cluster-connect custom-locations
Aangepaste locatie maken
Implementeer de Azure-serviceclusterextensie van het Azure-service-exemplaar dat u wilt installeren op uw cluster:
Gegevensservices met Azure Arc
Notitie
Uitgaande proxy zonder verificatie en uitgaande proxy met basisverificatie worden ondersteund door de clusterextensie voor Gegevensservices met Azure Arc. Uitgaande proxy die verwacht dat vertrouwde certificaten momenteel niet worden ondersteund.
Haal de Azure Resource Manager-id op van het Kubernetes-cluster met Azure Arc, waarnaar in latere stappen wordt verwezen als
connectedClusterId
:az connectedk8s show -n <clusterName> -g <resourceGroupName> --query id -o tsv
Haal de Azure Resource Manager-id op van de clusterextensie die u hebt geïmplementeerd in het Kubernetes-cluster met Azure Arc, waarnaar in latere stappen wordt verwezen als
extensionId
:az k8s-extension show --name <extensionInstanceName> --cluster-type connectedClusters -c <clusterName> -g <resourceGroupName> --query id -o tsv
Maak de aangepaste locatie door te verwijzen naar het Kubernetes-cluster met Azure Arc en de extensie:
az customlocation create -n <customLocationName> -g <resourceGroupName> --namespace <name of namespace> --host-resource-id <connectedClusterId> --cluster-extension-ids <extensionId>
Vereiste parameters:
Parameternaam Beschrijving --name, --n
Naam van de aangepaste locatie. --resource-group, --g
Resourcegroep van de aangepaste locatie. --namespace
Naamruimte in het cluster dat is gebonden aan de aangepaste locatie die wordt gemaakt. --host-resource-id
Azure Resource Manager-id van het Kubernetes-cluster met Azure Arc (verbonden cluster). --cluster-extension-ids
Azure Resource Manager-id van een clusterextensie-exemplaar dat is geïnstalleerd op het verbonden cluster. Voor meerdere extensies geeft u een door spaties gescheiden lijst met clusterextensie-id's op Optionele parameters:
Parameternaam Beschrijving --location, --l
Locatie van de aangepaste locatie van Azure Resource Manager-resource in Azure. Als dit niet is opgegeven, wordt de locatie van het verbonden cluster gebruikt. --tags
Door spaties gescheiden lijst met tags in de indeling key[=value]
. Gebruik '' om bestaande tags te wissen.--kubeconfig
Beheerder kubeconfig
van het cluster.
Details van een aangepaste locatie weergeven
Gebruik de volgende opdracht om de details van een aangepaste locatie weer te geven:
az customlocation show -n <customLocationName> -g <resourceGroupName>
Aangepaste locaties weergeven
Gebruik de volgende opdracht om alle aangepaste locaties in een resourcegroep weer te geven:
az customlocation list -g <resourceGroupName>
Een aangepaste locatie bijwerken
Gebruik de update
opdracht om nieuwe waarden toe te voegen voor --tags
of nieuwe --cluster-extension-ids
te koppelen aan de aangepaste locatie, terwijl bestaande waarden voor tags en gekoppelde clusterextensies behouden blijven.
az customlocation update -n <customLocationName> -g <resourceGroupName> --namespace <name of namespace> --host-resource-id <connectedClusterId> --cluster-extension-ids <extensionIds>
Een aangepaste locatie patchen
Gebruik de patch
opdracht om bestaande waarden voor --cluster-extension-ids
of --tags
. Eerdere waarden worden niet bewaard.
az customlocation patch -n <customLocationName> -g <resourceGroupName> --namespace <name of namespace> --host-resource-id <connectedClusterId> --cluster-extension-ids <extensionIds>
Een aangepaste locatie verwijderen
Gebruik de volgende opdracht om een aangepaste locatie te verwijderen:
az customlocation delete -n <customLocationName> -g <resourceGroupName>
Probleemoplossing
Als het maken van aangepaste locaties mislukt met de fout Unknown proxy error occurred
, wijzigt u uw netwerkbeleid zodat interne communicatie tussen pods binnen de azure-arc
naamruimte mogelijk is. Zorg ervoor dat u de azure-arc
naamruimte ook toevoegt als onderdeel van de uitsluitingslijst zonder proxy voor uw geconfigureerde beleid.
Volgende stappen
- Maak veilig verbinding met het cluster met behulp van Cluster Connect.
- Ga verder met Azure-app Service in Azure Arc voor end-to-end-instructies voor het installeren van extensies, het maken van aangepaste locaties en het maken van de App Service Kubernetes-omgeving.
- Maak een Event Grid-onderwerp en een gebeurtenisabonnement voor Event Grid in Kubernetes.
- Meer informatie over momenteel beschikbare Kubernetes-extensies met Azure Arc.