Condividi tramite


Estensione Dapr per il servizio Azure Kubernetes e Kubernetes abilitato per Arc

Distributed Application Runtime (Dapr) offre API che consentono di scrivere e implementare microservizi semplici, portabili, resilienti e protetti. Le API Dapr vengono eseguite come processo collaterale in combinazione con le applicazioni e astraggono le complessità comuni che possono verificarsi durante la compilazione di applicazioni distribuite, ad esempio:

  • Individuazione dei servizi
  • Integrazione di Message Broker
  • Crittografia
  • Osservabilità
  • Gestione dei segreti

Dapr è adottabile in modo incrementale. È possibile usare uno dei blocchi predefiniti dell'API in base alle esigenze. Informazioni sul livello di supporto offerto da Microsoft per l'estensione Dapr.

Funzionalità e caratteristiche

L'uso dell'estensione Dapr per effettuare il provisioning di Dapr nel cluster Kubernetes abilitato per Arc o del servizio Azure Kubernetes elimina il sovraccarico di:

  • Download degli strumenti dapr
  • Installazione e gestione manuale del runtime Dapr nel cluster del servizio Azure Kubernetes

È possibile installare, distribuire e configurare l’estensione Dapr nel cluster usando l’interfaccia della riga di comando di Azure o un modello Bicep.

Inoltre, l'estensione offre supporto per tutte le funzionalità di configurazione dapr native tramite semplici argomenti della riga di comando.

Dapr offre il set di funzionalità seguente per facilitare lo sviluppo di microservizi nel servizio Azure Kubernetes:

  • Provisioning semplice di Dapr nel servizio Azure Kubernetes tramite le estensioni del cluster
  • Portabilità abilitata tramite LE API HTTP e gRPC che astraggono le scelte delle tecnologie sottostanti
  • Chiamate da servizio a servizio affidabili, sicure e resilienti tramite API HTTP e gRPC
  • Messaggistica con pubblicazione e sottoscrizione semplificata con supporto per il filtro CloudEvent e semantica "almeno una volta" per il recapito dei messaggi
  • Osservabilità e monitoraggio collegabili tramite l'agente di raccolta API Open Telemetry
  • Indipendentemente dal linguaggio, offrendo anche sdk (Software Development Kit) specifici del linguaggio
  • Integrazione con Visual Studio Code tramite l’estensione Dapr
  • Altre API per risolvere i problemi delle applicazioni distribuite

Gestione dei problemi

Microsoft classifica i problemi emersi rispetto all’estensione Dapr in due parti:

  • Operazioni di estensione
  • Runtime Dapr (inclusi API e componenti)

La tabella seguente suddivide i livelli di priorità del supporto per ognuna di queste categorie.

Descrizione Rischi per la sicurezza/Regressioni Problemi funzionali
Operazioni di estensione Problemi riscontrati durante le operazioni di estensione, ad esempio l’installazione/disinstallazione o l’aggiornamento dell’estensione Dapr. Microsoft assegna priorità per una risoluzione immediata. Microsoft analizza e affronta i problemi in base alle esigenze.
Runtime Dapr Problemi riscontrati quando si usa il runtime dapr, le API e i componenti tramite l'estensione, ad esempio la scadenza del certificato e il comportamento imprevisto del componente. Usare il progetto open source Dapr per risolvere un hotfix o una versione open source futura di Dapr. Una volta rilasciate le correzioni in Dapr open source, queste vengono poi rese disponibili nell’estensione Dapr. I rischi e le regressioni per la sicurezza open source noti non verranno esaminati da Microsoft in questo momento. Discutere i problemi relativi al progetto open source Dapr da risolvere in un hotfix o in una versione open source futura di Dapr. I problemi funzionali open source noti non verranno esaminati da Microsoft in questo momento.

Cloud/aree

Il cloud di Azure globale è supportato con il supporto del servizio Azure Kubernetes e Arc nelle aree seguenti:

Paese Supporto del servizio Azure Kubernetes Supporto di Arc per Kubernetes
australiaeast ✔️ ✔️
australiasoutheast ✔️
brazilsouth ✔️
canadacentral ✔️ ✔️
canadaeast ✔️ ✔️
centralindia ✔️ ✔️
centralus ✔️ ✔️
eastasia ✔️ ✔️
eastus ✔️ ✔️
eastus2 ✔️ ✔️
eastus2euap ✔️
francecentral ✔️ ✔️
francesouth ✔️
germanywestcentral ✔️ ✔️
japaneast ✔️ ✔️
japanwest ✔️
koreacentral ✔️ ✔️
koreasouth ✔️
northcentralus ✔️ ✔️
northeurope ✔️ ✔️
norwayeast ✔️
southafricanorth ✔️
southcentralus ✔️ ✔️
southeastasia ✔️ ✔️
southindia ✔️
swedencentral ✔️ ✔️
switzerlandnorth ✔️ ✔️
uaenorth ✔️
uksouth ✔️ ✔️
ukwest ✔️
westcentralus ✔️ ✔️
westeurope ✔️ ✔️
westus ✔️ ✔️
westus2 ✔️ ✔️
westus3 ✔️ ✔️

Domande frequenti

Com'è possibile confrontare le mesh Dapr e di servizio?

Anche se le mesh dapr e dei servizi offrono alcune funzionalità sovrapposte, una mesh di servizi è incentrata sulle problematiche di rete, mentre Dapr si concentra sulla fornitura di blocchi predefiniti che semplificano la creazione di applicazioni come microservizi. Dapr è incentrato sugli sviluppatori, mentre le mesh di servizi sono incentrate sulle infrastrutture.

Alcune funzionalità comuni condivise da Dapr con mesh di servizi includono:

  • Proteggere la comunicazione da servizio a servizio con la crittografia mTLS
  • Raccolta di metriche da servizio a servizio
  • Traccia distribuita da servizio a servizio
  • Resilienza tramite tentativi

Dapr offre altri blocchi predefiniti a livello di applicazione per la gestione dello stato, la messaggistica pub/sub, gli attori e altro ancora. Tuttavia, Dapr non offre funzionalità per il comportamento del traffico, ad esempio il routing o la suddivisione del traffico. Se la soluzione trae vantaggio dalla suddivisione del traffico fornita da una mesh di servizi, è consigliabile usare Open Service Mesh.

Per altre informazioni sulle mesh di dapr e di servizio e su come possono essere usate insieme, vedere la documentazione di Dapr.

In che modo l'API dei segreti Dapr viene confrontata con il driver CSI dell'archivio segreti?

Sia l'API dei segreti Dapr che il driver CSI dell'archivio segreti gestiti consentono l'integrazione dei segreti contenuti in un archivio esterno, astraendo la tecnologia dell'archivio segreti dal codice dell'applicazione.

Il driver CSI dell'archivio segreti monta i segreti contenuti in Azure Key Vault come volume CSI per l'utilizzo da parte di un'applicazione.

Dapr espone i segreti tramite un’API RESTful che può essere:

  • Chiamata dal codice dell’applicazione
  • Configurata con archivi dei segreti vari

La tabella seguente elenca le funzionalità di ogni offerta:

API dei segreti dapr Driver CSI dell'archivio segreti
Archivi segreti supportati Variabili di ambiente locali (per Sviluppo); File locale (per sviluppo); Segreti kubernetes; AWS Secrets Manager; Archivio segreti di Azure Key Vault; Azure Key Vault con identità gestite in Kubernetes; GCP Secret Manager; HashiCorp Vault Archivio segreto di Azure Key Vault
Accesso ai segreti nel codice dell'applicazione Chiamare l'API dei segreti Dapr Accedere al volume montato o sincronizzare il contenuto montato come segreto Kubernetes e impostare una variabile di ambiente
Rotazione dei segreti Le nuove chiamate API ottengono i segreti aggiornati Esegue il polling dei segreti e aggiorna il montaggio a un intervallo configurabile
Registrazione e metriche Il sidecar Dapr genera i log, che possono essere configurati con agenti di raccolta, ad esempio Monitoraggio di Azure, genera metriche tramite Prometheus ed espone un endpoint HTTP per i controlli di integrità Genera metriche del driver e del provider di Azure Key Vault tramite Prometheus

Per altre informazioni sulla gestione dei segreti in Dapr, vedere panoramica della gestione dei segreti.

Per altre informazioni sul driver CSI dell'archivio segreti e sul provider di Azure Key Vault, vedere la panoramica del driver CSI dell'archivio dei segreti.

In che modo l'estensione del cluster Dapr gestito viene confrontata con l'offerta dapr open source?

L'estensione del cluster Dapr gestita è il metodo più semplice per effettuare il provisioning di Dapr in un cluster del servizio Azure Kubernetes. Con l'estensione, è possibile eseguire l'offload della gestione della versione del runtime Dapr optando per gli aggiornamenti automatici. Inoltre, l'estensione installa Dapr con impostazioni predefinite intelligenti, ad esempio il provisioning del piano di controllo Dapr in modalità a disponibilità elevata.

Quando si installa Dapr open source tramite helm o l’interfaccia della riga di comando di Dapr, gli sviluppatori e i gestori del cluster sono anche responsabili delle versioni di runtime e delle opzioni di configurazione.

Infine, l'estensione Dapr è un'estensione del servizio Azure Kubernetes, pertanto è possibile prevedere gli stessi criteri di supporto di altre funzionalità del servizio Azure Kubernetes.

Altre informazioni sulla migrazione da Dapr open source all’estensione Dapr per il servizio Azure Kubernetes.

Come è possibile autenticare i componenti Dapr con l'ID Microsoft Entra usando identità gestite?

Come è possibile passare all'uso dell'estensione Dapr se è già stato installato Dapr tramite un metodo, ad esempio Helm?

Le indicazioni consigliate sono la disinstallazione completa di Dapr dal cluster del servizio Azure Kubernetes e la reinstallazione tramite l'estensione del cluster. È anche possibile verificare la presenza dell'installazione dapr esistente ed eseguirne la migrazione al servizio Azure Kubernetes.

Se si installa Dapr tramite l'estensione del 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.

Passaggi successivi