Installare l'estensione Dapr per il servizio Azure Kubernetes (AKS) e Kubernetes abilitato per Arc
Dapr semplifica la creazione di applicazioni resilienti, senza stato e con stato eseguite nel cloud e edge e adottano la diversità di linguaggi e framework di sviluppo. Grazie all'architettura sidecar di Dapr, è possibile mantenere indipendente la piattaforma del codice e affrontare le sfide relative alla creazione di microservizi, ad esempio:
- Chiamata di altri servizi in modo affidabile e sicuro
- Creazione di app basate su eventi con pub/sub
- Compilazione di applicazioni portabili tra più servizi cloud e host (ad esempio, Kubernetes e una macchina virtuale)
Nota
Se si prevede di installare Dapr in un ambiente di produzione Kubernetes, vedere la pagina della documentazione relativa alle linee guida per l'utilizzo della produzione.
Funzionamento
L'estensione Dapr usa l'interfaccia della riga di comando di Azure o un modello Bicep per effettuare il provisioning del piano di controllo Dapr nel cluster Kubernetes abilitato per Arc o del servizio Azure Kubernetes, creando i servizi Dapr seguenti:
Servizio Dapr | Descrizione |
---|---|
dapr-operator |
Gestisce gli aggiornamenti dei componenti e gli endpoint dei servizi Kubernetes per Dapr (archivi di stato, pub/sub e così via) |
dapr-sidecar-injector |
Inserisce Dapr in pod di distribuzione con annotazioni e aggiunge le variabili DAPR_HTTP_PORT di ambiente e DAPR_GRPC_PORT per consentire alle applicazioni definite dall'utente di comunicare facilmente con Dapr senza valori di porta Dapr hardcoded. |
dapr-placement |
Usato solo per gli attori. Crea tabelle di mapping che eseguono il mapping delle istanze dell'attore ai pod. |
dapr-sentry |
Gestisce mTLS tra i servizi e funge da autorità di certificazione. Per altre informazioni, vedere la panoramica della sicurezza. |
Dopo aver installato Dapr nel cluster, è possibile iniziare a sviluppare usando le API del blocco predefinito Dapr aggiungendo alcune annotazioni alle distribuzioni. Per una panoramica più approfondita delle API dei blocchi predefiniti e su come usarle al meglio, vedere la panoramica dei blocchi predefiniti dapr.
Avviso
Se si installa Dapr tramite l'estensione Kubernetes abilitato per Arc o il servizio Azure Kubernetes, è consigliabile continuare a usare l'estensione per la gestione futura di Dapr anziché l'interfaccia della riga di comando di Dapr. La combinazione dei due strumenti può causare conflitti e comportare comportamenti indesiderati.
Prerequisiti
- Una sottoscrizione di Azure. Non se ne ha una? Crea un account gratuito.
- L'ultima versione dell'interfaccia della riga di comando di Azure.
- Un cluster del servizio Azure Kubernetes esistente o un cluster Kubernetes abilitato per Arc connesso.
- Un ruolo di amministratore del controllo degli accessi in base al ruolo del servizio Azure Kubernetes
Selezionare la modalità di installazione, distribuzione e configurazione dell'estensione Dapr.
Operazioni preliminari
Aggiungere l'estensione dell'interfaccia della riga di comando di Azure per le estensioni del cluster
Installare l’estensione dell'k8s-extension
interfaccia della riga di comando di Azure eseguendo questi comandi:
az extension add --name k8s-extension
Se l'estensione k8s-extension
è già installata, è possibile aggiornarla alla versione più recente usando il comando seguente:
az extension update --name k8s-extension
Registrare il provider di risorse KubernetesConfiguration
Se non si usano già estensioni del cluster, può essere necessario registrare il provider di risorse con la sottoscrizione. È possibile controllare lo stato di registrazione del provider usando il comando az provider list, come illustrato nell'esempio seguente:
az provider list --query "[?contains(namespace,'Microsoft.KubernetesConfiguration')]" -o table
Il provider Microsoft.KubernetesConfiguration deve essere contrassegnato come Registrato, come spiegato nell'output di esempio seguente:
Namespace RegistrationState RegistrationPolicy
--------------------------------- ------------------- --------------------
Microsoft.KubernetesConfiguration Registered RegistrationRequired
Se il provider viene visualizzato come NotRegistered, registrare il provider usando az provider register come illustrato nell'esempio seguente:
az provider register --namespace Microsoft.KubernetesConfiguration
Registrare la funzionalità ExtenstionTypes
nella sottoscrizione di Azure
La funzionalità ExtensionTypes
deve essere registrata nella sottoscrizione di Azure. Nel terminale verificare di essere nella sottoscrizione corretta:
az account set --subscription <YOUR-AZURE-SUBSCRIPTION-ID>
Registrare la funzionalità ExtenstionTypes
.
az feature registration create --namespace Microsoft.KubernetesConfiguration --name ExtensionTypes
La registrazione della funzionalità può richiedere del tempo. Dopo alcuni minuti, controllare lo stato della registrazione usando il comando seguente:
az feature show --namespace Microsoft.KubernetesConfiguration --name ExtensionTypes
Creare l'estensione e installare Dapr nel cluster Kubernetes abilitato per Arc o del servizio Azure Kubernetes
Quando si installa l'estensione Dapr, usare il valore del flag corrispondente al tipo di cluster:
- Cluster del servizio Azure Kubernetes:
--cluster-type managedClusters
. - Cluster Kubernetes con abilitazione di Arc:
--cluster-type connectedClusters
.
Nota
Se si usa dapr OSS nel cluster del servizio Azure Kubernetes e si vuole installare l'estensione Dapr per il servizio Azure Kubernetes, leggere altre informazioni su come eseguire correttamente la migrazione all'estensione Dapr.
Creare l'estensione Dapr, che installa Dapr nel cluster Kubernetes abilitato per Il servizio Azure Kubernetes o per Arc.
Ad esempio, installare la versione più recente di Dapr tramite l'estensione Dapr nel cluster del servizio Azure Kubernetes:
az k8s-extension create --cluster-type managedClusters \
--cluster-name <myAKSCluster> \
--resource-group <myResourceGroup> \
--name dapr \
--extension-type Microsoft.Dapr \
--auto-upgrade-minor-version false
Mantenere aggiornato il cluster del servizio Azure Kubernetes gestito all'ultima versione
In base all'ambiente (sviluppo, test o produzione), è possibile restare aggiornati alle ultime versioni di Dapr stabili.
Scelta di un training di rilascio
Quando si configura l'estensione, è possibile scegliere di installare Dapr da un particolare treno di rilasci. Specificare uno dei due valori del training della versione:
Valore | Descrizione |
---|---|
stable |
Predefinito. |
dev |
Le versioni preliminari possono contenere funzionalità sperimentali. Non adatto per la produzione. |
Ad esempio:
--release-train stable
Configurazione degli aggiornamenti automatici al piano di controllo Dapr
Avviso
L'aggiornamento automatico non è adatto per gli ambienti di produzione. È possibile abilitare gli aggiornamenti automatici al piano di controllo Dapr solo in ambienti di sviluppo o test. Informazioni su come eseguire manualmente l'aggiornamento all'ultima versione di Dapr per gli ambienti di produzione.
Se si installa Dapr senza specificare una versione, --auto-upgrade-minor-version
viene abilitato automaticamente, configurando il piano di controllo Dapr per aggiornare automaticamente la versione secondaria nelle nuove versioni.
È possibile disabilitare l'aggiornamento automatico specificando il parametro --auto-upgrade-minor-version
e impostando il valore su false
.
Il controllo delle versioni di Dapr è in MAJOR.MINOR.PATCH
formato, il che significa che da 1.11.0
a 1.12.0
è un aggiornamento della versione secondaria.
--auto-upgrade-minor-version true
Visualizzazione delle ultime versioni stabili di Dapr disponibili
Per eseguire l'aggiornamento all'ultima versione di Dapr in un ambiente di produzione, è necessario procedere manualmente. Per iniziare, visualizzare un elenco delle versioni di Dapr stabili disponibili per il cluster del servizio Azure Kubernetes gestito. Esegui questo comando:
az k8s-extension extension-types list-versions-by-cluster --resource-group <myResourceGroup> --cluster-name <myCluster> --cluster-type managedClusters --extension-type microsoft.dapr --release-train stable
Per visualizzare l'ultima versione stabile di Dapr disponibile per il cluster del servizio Azure Kubernetes gestito, eseguire il comando seguente:
az k8s-extension extension-types list-versions-by-cluster --resource-group <myResourceGroup> --cluster-name <myCluster> --cluster-type managedClusters --extension-type microsoft.dapr --release-train stable --show-latest
Per visualizzare un elenco delle versioni di Dapr stabili disponibili in base alla posizione:
- Assicurarsi di aver registrato la funzionalità
ExtenstionTypes
nella sottoscrizione di Azure. - Esegui il comando seguente:
az k8s-extension extension-types list-versions-by-location --location westus --extension-type microsoft.dapr
Aggiornare quindi manualmente Dapr all'ultima versione stabile.
Destinazione di una versione Dapr specifica
Nota
Dapr è supportato con una finestra in sequenza, incluse solo le versioni correnti e precedenti. È responsabilità operativa rimanere aggiornati con queste versioni supportate. Se si dispone di una versione precedente di Dapr, potrebbe essere necessario eseguire aggiornamenti intermedi per ottenere una versione supportata.
Lo stesso argomento della riga di comando viene usato per installare una versione specifica di Dapr o eseguire il rollback a una versione precedente. Impostare --auto-upgrade-minor-version
su false
e --version
sulla versione di Dapr da installare. Se il parametro version
viene omesso, l'estensione installa la versione più recente di Dapr. Ad esempio, per usare Dapr 1.13.5:
az k8s-extension create --cluster-type managedClusters \
--cluster-name <myAKSCluster> \
--resource-group <myResourceGroup> \
--name dapr \
--extension-type Microsoft.Dapr \
--auto-upgrade-minor-version false \
--version 1.13.5
Risoluzione degli errori delle estensioni
Se l'estensione non riesce a creare o aggiornare, provare suggerimenti e soluzioni nella guida alla risoluzione dei problemi dell'estensione Dapr.
Risoluzione dei problemi relativi a Dapr
Risolvere gli errori Dapr tramite la Guida comune ai problemi e alle soluzioni dDapr.
Eliminare l'estensione
Se è necessario eliminare l'estensione e rimuovere Dapr dal cluster del servizio Azure Kubernetes, è possibile usare il comando seguente:
az k8s-extension delete --resource-group <myResourceGroup> --cluster-name <myAKSCluster> --cluster-type managedClusters --name dapr
In alternativa, è possibile rimuovere il modello Bicep.
Passaggi successivi
Azure Kubernetes Service