Aangepaste locaties maken en beheren in Kubernetes met Azure Arc
De functie aangepaste locaties biedt een manier voor tenant- of clusterbeheerders om hun 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 met Azure Arc en PostgreSQL Hyperscale 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 aangepaste Azure-resource 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 op een multitenant-manier kunnen implementeren.
Een conceptueel overzicht van deze functie is beschikbaar op aangepaste locaties: Kubernetes met Azure Arc.
In dit artikel leert u het volgende:
- Schakel aangepaste locaties in op uw Kubernetes-cluster met Azure Arc.
- Maak een aangepaste locatie.
Vereisten
Azure CLI installeren of upgraden naar versie >= 2.16.0.
Installeer de volgende Azure CLI-extensies:
connectedk8s(versie 1.2.0 of hoger)k8s-extension(versie 1.0.0 of hoger)customlocation(versie 0.1.3 of hoger)az extension add --name connectedk8s az extension add --name k8s-extension az extension add --name customlocationAls u de
connectedk8sk8s-extension, encustomlocationextensies 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.ExtendedLocationControleer het registratieproces. Registratie kan tot 10 minuten duren.
az provider show -n Microsoft.ExtendedLocation -o tableZodra de status is geregistreerd, heeft de
RegistrationStatestatus deRegisteredwaarde.
Controleer of u een bestaand met Kubernetes verbonden Kubernetes-cluster met Azure Arc hebt.
- Werk uw agents bij naar versie 1.5.3 of hoger.
Aangepaste locaties inschakelen in uw cluster
Als u bent aangemeld bij Azure CLI als een Azure Active Directory-gebruiker (Azure AD), voert u de volgende opdracht uit om deze functie in te schakelen op uw cluster:
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.
Dit komt doordat een service-principal geen machtigingen heeft voor het ophalen van informatie over de toepassing die wordt gebruikt door de Azure Arc-service. Voer de volgende stappen uit om deze fout te voorkomen:
Meld u aan bij Azure CLI met uw gebruikersaccount. Haal de
objectIdofidde Azure AD toepassing op die wordt gebruikt door de Azure Arc-service. De opdracht die u gebruikt, is afhankelijk van uw versie van Azure CLI.Als u een Azure CLI-versie gebruikt die lager is dan 2.37.0, gebruikt u de volgende opdracht:
az ad sp show --id bc313c14-388c-4e7d-a58e-70017303ee3b --query objectId -o tsvAls u Azure CLI versie 2.37.0 of hoger gebruikt, gebruikt u in plaats daarvan de volgende opdracht:
az ad sp show --id bc313c14-388c-4e7d-a58e-70017303ee3b --query id -o tsvMeld u aan bij Azure CLI met behulp van de service-principal. Gebruik de
<objectId>ofidwaarde uit de vorige stap om aangepaste locaties in het cluster in te schakelen:az connectedk8s enable-features -n <cluster-name> -g <resource-group-name> --custom-locations-oid <objectId/id> --features cluster-connect custom-locations
Notitie
De functie aangepaste locaties is afhankelijk van de functie Clusterverbinding . Beide functies moeten zijn ingeschakeld om aangepaste locaties te laten werken.
az connectedk8s enable-features moet worden uitgevoerd op een computer waarop het kubeconfig bestand verwijst naar het cluster waarop de functies moeten worden ingeschakeld.
Aangepaste locatie maken
Implementeer de Azure-serviceclusterextensie van het Azure-service-exemplaar dat u wilt installeren op uw cluster:
-
Notitie
Uitgaande proxy zonder verificatie en uitgaande proxy met basisverificatie worden ondersteund door de Data Services-clusterextensie 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 tsvHaal de Azure Resource Manager-id op van de clusterextensie die is geïmplementeerd op 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 tsvMaak 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 <extensionIds>Vereiste parameters:
Parameternaam Beschrijving --name, --nNaam van de aangepaste locatie --resource-group, --gResourcegroep van de aangepaste locatie --namespaceNaamruimte in het cluster dat is gebonden aan de aangepaste locatie die wordt gemaakt --host-resource-idAzure Resource Manager-id van het Kubernetes-cluster met Azure Arc (verbonden cluster) --cluster-extension-idsAzure Resource Manager-id's van de clusterextensie-exemplaren die zijn geïnstalleerd op het verbonden cluster. Een door spaties gescheiden lijst met de clusterextensie-id's opgeven Optionele parameters:
Parameternaam Beschrijving --location, --lLocatie van de aangepaste locatie van Azure Resource Manager-resource in Azure. Standaard wordt deze ingesteld op de locatie van het verbonden cluster --tagsDoor spaties gescheiden lijst met tags: key[=value] [key[=value] ...]. Gebruik '' om bestaande tags te wissen --kubeconfigkubeconfigBeheer 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>
Vereiste parameters:
| Parameternaam | Beschrijving |
|---|---|
--name, --n |
Naam van de aangepaste locatie |
--resource-group, --g |
Resourcegroep van de aangepaste locatie |
Aangepaste locaties weergeven
Gebruik de volgende opdracht om alle aangepaste locaties in een resourcegroep weer te geven:
az customlocation show -g <resourceGroupName>
Vereiste parameters:
| Parameternaam | Beschrijving |
|---|---|
--resource-group, --g |
Resourcegroep van de aangepaste locatie |
Een aangepaste locatie bijwerken
Gebruik de update opdracht om nieuwe tags toe te voegen of nieuwe clusterextensie-id's aan de aangepaste locatie te koppelen terwijl bestaande tags en bijbehorende clusterextensies behouden blijven. --cluster-extension-ids, --tagsassign-identity kan worden bijgewerkt.
az customlocation update -n <customLocationName> -g <resourceGroupName> --namespace <name of namespace> --host-resource-id <connectedClusterId> --cluster-extension-ids <extensionIds>
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) |
Optionele parameters:
| Parameternaam | Beschrijving |
|---|---|
--cluster-extension-ids |
Koppel nieuwe clusterextensies aan deze aangepaste locatie door Azure Resource Manager id's op te geven van de clusterextensie-exemplaren die zijn geïnstalleerd op het verbonden cluster. Een door spaties gescheiden lijst met de clusterextensie-id's opgeven |
--tags |
Voeg naast bestaande tags nieuwe tags toe. Door spaties gescheiden lijst met tags: key[=value] [key[=value] ...]. |
Een aangepaste locatie patchen
Gebruik de patch opdracht om bestaande tags, clusterextensie-id's te vervangen door nieuwe tags en clusterextensie-id's. --cluster-extension-ids, assign-identity--tags kan worden gepatcht.
az customlocation patch -n <customLocationName> -g <resourceGroupName> --namespace <name of namespace> --host-resource-id <connectedClusterId> --cluster-extension-ids <extensionIds>
Vereiste parameters:
| Parameternaam | Beschrijving |
|---|---|
--name, --n |
Naam van de aangepaste locatie |
--resource-group, --g |
Resourcegroep van de aangepaste locatie |
Optionele parameters:
| Parameternaam | Beschrijving |
|---|---|
--cluster-extension-ids |
Koppel nieuwe clusterextensies aan deze aangepaste locatie door Azure Resource Manager id's op te geven van de clusterextensie-exemplaren die zijn geïnstalleerd op het verbonden cluster. Een door spaties gescheiden lijst met de clusterextensie-id's opgeven |
--tags |
Voeg naast bestaande tags nieuwe tags toe. Door spaties gescheiden lijst met tags: key[=value] [key[=value] ...]. |
Een aangepaste locatie verwijderen
Gebruik de volgende opdracht om een aangepaste locatie te verwijderen:
az customlocation delete -n <customLocationName> -g <resourceGroupName> --namespace <name of namespace> --host-resource-id <connectedClusterId> --cluster-extension-ids <extensionIds>
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.