Estensione Dapr per il servizio Azure Kubernetes 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 Il servizio Azure Kubernetes o arc, 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

Selezionare la modalità di installazione, distribuzione e configurazione dell'estensione Dapr.

Configurare l'estensione dell'interfaccia della riga di comando di Azure per le estensioni del cluster

Installare l’estensione dell'k8s-extensioninterfaccia 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 KubernetesConfiguration provider di risorse

Se le estensioni del cluster non sono state usate in precedenza, potrebbe essere necessario registrare il provider di risorse con la sottoscrizione. È possibile controllare lo stato della registrazione del provider usando il comando [az provider list][az-provider-list], come spiegato 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

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

Configurazione degli aggiornamenti automatici al piano di controllo Dapr

Avviso

È possibile abilitare gli aggiornamenti automatici al piano di controllo Dapr solo in ambienti di sviluppo o test. L'aggiornamento automatico non è adatto per gli ambienti di produzione.

Se si installa Dapr senza specificare una versione, --auto-upgrade-minor-versionviene 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

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.11.2:

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.11.2

Scelta di un training di rilascio

Quando si configura l'estensione, è possibile scegliere di installare Dapr da un particolare training di versione. Specificare uno dei due valori del training della versione:

Valore Descrizione
stable Predefinito.
dev Le versioni precedenti possono contenere funzionalità sperimentali. Non adatto per la produzione.

Ad esempio:

--release-train stable

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, rimuovere semplicemente il modello Bicep.

Passaggi successivi