Creare e gestire percorsi personalizzati in Kubernetes abilitato per Azure Arc
La funzionalità percorsi personalizzati consente di configurare i cluster Kubernetes abilitati per Azure Arc come percorsi di destinazione per la distribuzione di istanze delle offerte di Azure. Esempi di offerte di Azure che possono essere distribuite in posizioni personalizzate includono database, ad esempio Istanza gestita di SQL abilitati da Azure Arc e dal server PostgreSQL abilitato per Azure Arc o istanze di applicazioni, ad esempio servizio app, Funzioni, Griglia di eventi, App per la logica e Gestione API.
Una posizione personalizzata ha un mapping uno-a-uno a uno di uno spazio dei nomi all'interno del cluster Kubernetes abilitato per Azure Arc. La risorsa di Azure per la posizione personalizzata combinata con il controllo degli accessi in base al ruolo di Azure può essere usata per concedere autorizzazioni granulari agli sviluppatori di applicazioni o agli amministratori di database, consentendo loro di distribuire risorse come database o istanze dell'applicazione nei cluster Kubernetes abilitati per Arc in un ambiente multi-tenant.
Questo articolo illustra come abilitare percorsi personalizzati in un cluster Kubernetes abilitato per Arc e come creare una posizione personalizzata.
Prerequisiti
Installare o aggiornare l'interfaccia della riga di comando di Azure alla versione più recente.
Installare le versioni più recenti delle estensioni dell'interfaccia della riga di comando di Azure seguenti:
connectedk8s
k8s-extension
customlocation
az extension add --name connectedk8s az extension add --name k8s-extension az extension add --name customlocation
Se sono già state installate le
connectedk8s
estensioni ,k8s-extension
ecustomlocation
, eseguire l'aggiornamento alla versione più recente usando il comando seguente:az extension update --name connectedk8s az extension update --name k8s-extension az extension update --name customlocation
Verificare la registrazione del provider completata per
Microsoft.ExtendedLocation
.Immettere i comandi seguenti:
az provider register --namespace Microsoft.ExtendedLocation
Monitorare il processo di registrazione. La registrazione può richiedere fino a 10 minuti.
az provider show -n Microsoft.ExtendedLocation -o table
Dopo la registrazione, lo
RegistrationState
stato avrà ilRegistered
valore .
Verificare di disporre di un cluster kubernetes abilitato per Azure Arc esistente e di aggiornare gli agenti alla versione più recente. Verificare che nel computer in cui verranno eseguiti i comandi descritti in questo articolo sia presente un
kubeconfig
file che punta a questo cluster.
Abilitare percorsi personalizzati nel cluster
Suggerimento
La funzionalità percorsi personalizzati dipende dalla funzionalità di connessione del cluster. Entrambe le funzionalità devono essere abilitate nel cluster per il funzionamento di posizioni personalizzate.
Se si è connessi all'interfaccia della riga di comando di Azure come utente di Microsoft Entra, usare il comando seguente:
az connectedk8s enable-features -n <clusterName> -g <resourceGroupName> --features cluster-connect custom-locations
Se si esegue il comando precedente durante l'accesso all'interfaccia della riga di comando di Azure usando un'entità servizio, è possibile osservare l'avviso seguente:
Unable to fetch oid of 'custom-locations' app. Proceeding without enabling the feature. Insufficient privileges to complete the operation.
Ciò è dovuto al fatto che un'entità servizio non dispone delle autorizzazioni necessarie per ottenere informazioni sull'applicazione usata dal servizio Azure Arc. Per evitare questo errore, completare la procedura seguente:
Accedere all'interfaccia della riga di comando di Azure usando l'account utente. Recuperare l'oggetto
objectId
oid
dell'applicazione Microsoft Entra usata dal servizio Azure Arc usando il comando seguente:az ad sp show --id bc313c14-388c-4e7d-a58e-70017303ee3b --query id -o tsv
Accedere all'interfaccia della riga di comando di Azure con l'entità servizio. Usare il
<objectId>
valore oid
del passaggio precedente per abilitare percorsi personalizzati nel cluster:az connectedk8s enable-features -n <cluster-name> -g <resource-group-name> --custom-locations-oid <objectId/id> --features cluster-connect custom-locations
Creare un percorso personalizzato
Distribuire l'estensione per il cluster del servizio di Azure dell'istanza del servizio di Azure che si vuole installare nel cluster:
Servizi dati abilitati per Azure Arc
Nota
Il proxy in uscita senza autenticazione e proxy in uscita con l'autenticazione di base è supportato dall'estensione cluster dei servizi dati abilitata per Azure Arc. Il proxy in uscita che prevede certificati attendibili non è attualmente supportato.
Ottenere l'identificatore di Azure Resource Manager del cluster Kubernetes abilitato per Azure Arc, a cui nei passaggi successivi si fa riferimento come
connectedClusterId
:az connectedk8s show -n <clusterName> -g <resourceGroupName> --query id -o tsv
Ottenere l'identificatore di Azure Resource Manager dell'estensione cluster distribuita nel cluster Kubernetes abilitato per Azure Arc, a cui si fa riferimento nei passaggi successivi come
extensionId
:az k8s-extension show --name <extensionInstanceName> --cluster-type connectedClusters -c <clusterName> -g <resourceGroupName> --query id -o tsv
Creare la posizione personalizzata facendo riferimento al cluster Kubernetes abilitato per Azure Arc e all'estensione :
az customlocation create -n <customLocationName> -g <resourceGroupName> --namespace <name of namespace> --host-resource-id <connectedClusterId> --cluster-extension-ids <extensionId>
Parametri obbligatori:
Nome parametro Descrizione --name, --n
Nome della posizione personalizzata. --resource-group, --g
Gruppo di risorse della posizione personalizzata. --namespace
Spazio dei nomi nel cluster associato alla posizione personalizzata in fase di creazione. --host-resource-id
Identificatore di Azure Resource Manager del cluster Kubernetes abilitato per Azure Arc (cluster connesso). --cluster-extension-ids
Identificatore di Azure Resource Manager di un'istanza dell'estensione del cluster installata nel cluster connesso. Per più estensioni, specificare un elenco separato da spazi di ID estensione del cluster Parametri facoltativi:
Nome parametro Descrizione --location, --l
Posizione della risorsa di Azure Resource Manager della posizione personalizzata in Azure. Se non specificato, viene usata la posizione del cluster connesso. --tags
Elenco delimitato da spazi di tag nel formato key[=value]
. Usare '' per cancellare tag esistenti.--kubeconfig
kubeconfig
Amministrazione del cluster.
Mostra i dettagli di una posizione personalizzata
Per visualizzare i dettagli di una posizione personalizzata, usare il comando seguente:
az customlocation show -n <customLocationName> -g <resourceGroupName>
Elencare i percorsi personalizzati
Per elencare tutte le posizioni personalizzate in un gruppo di risorse, usare il comando seguente:
az customlocation list -g <resourceGroupName>
Aggiornare un percorso personalizzato
Usare il update
comando per aggiungere nuovi valori per --tags
o associare nuovi --cluster-extension-ids
valori alla posizione personalizzata, mantenendo i valori esistenti per i tag e le estensioni del cluster associate.
az customlocation update -n <customLocationName> -g <resourceGroupName> --namespace <name of namespace> --host-resource-id <connectedClusterId> --cluster-extension-ids <extensionIds>
Applicare patch a una posizione personalizzata
Usare il patch
comando per sostituire i valori esistenti per --cluster-extension-ids
o --tags
. I valori precedenti non vengono mantenuti.
az customlocation patch -n <customLocationName> -g <resourceGroupName> --namespace <name of namespace> --host-resource-id <connectedClusterId> --cluster-extension-ids <extensionIds>
Eliminare una posizione personalizzata
Per eliminare un percorso personalizzato, usare il comando seguente:
az customlocation delete -n <customLocationName> -g <resourceGroupName>
Risoluzione dei problemi
Se la creazione di percorsi personalizzati ha esito negativo con l'errore Unknown proxy error occurred
, modificare i criteri di rete per consentire la comunicazione interna da pod a pod all'interno dello spazio dei azure-arc
nomi. Assicurarsi di aggiungere anche lo azure-arc
spazio dei nomi come parte dell'elenco di esclusione no-proxy per i criteri configurati.
Passaggi successivi
- Connettersi in modo sicuro al cluster usando cluster Connessione.
- Continuare con app Azure Servizio in Azure Arc per istruzioni end-to-end sull'installazione delle estensioni, sulla creazione di percorsi personalizzati e sulla creazione dell'ambiente Kubernetes servizio app.
- Creare un argomento di Griglia di eventi e una sottoscrizione di eventi per Griglia di eventi in Kubernetes.
- Altre informazioni sulle estensioni Kubernetes abilitate per Azure Arc attualmente disponibili.