Componente aggiuntivo Open Service Mesh (OSM) nel servizio Azure Kubernetes (AKS)

Open Service Mesh (OSM) è una mesh di servizi cloud semplice, estendibile e nativa del cloud che consente di gestire, proteggere e ottenere in modo uniforme funzionalità di osservabilità predefinite per ambienti di microservizi altamente dinamici.

OSM esegue un piano di controllo basato su Envoy in Kubernetes e può essere configurato con le API SMI. OSM funziona inserendo un proxy Envoy come contenitore sidecar con ogni istanza dell'applicazione. Il proxy Envoy contiene ed esegue regole relative ai criteri di controllo di accesso, implementa la configurazione del routing e acquisisce le metriche. Il piano di controllo configura continuamente i proxy Envoy per garantire che i criteri e le regole di routing siano aggiornati e che i proxy siano integri.

Microsoft ha avviato il progetto OSM, ma esso viene ora gestito dalla Cloud Native Computing Foundation (CNCF).

Nota

Con il ritiro di Open Service Mesh (OSM) dalla Cloud Native Computing Foundation (CNF), è consigliabile identificare le configurazioni OSM e eseguirne la migrazione a una configurazione Istio equivalente. Per informazioni sulla migrazione da OSM a Istio, vedere Indicazioni sulla migrazione per le configurazioni open service mesh (OSM) a Istio.

Abilitare il componente aggiuntivo OSM

È possibile aggiungere OSM al cluster del servizio Azure Kubernetes abilitando il componente aggiuntivo OSM usando l'interfaccia della riga di comando di Azure o un modello Bicep. Il componente aggiuntivo OSM offre un'installazione completamente supportata di OSM integrata con il servizio Azure Kubernetes.

Importante

In base alla versione di Kubernetes in esecuzione, il componente aggiuntivo OSM installa una versione diversa di OSM.

Versione di Kubernetes Versione di OSM installata
1.24.0 o versione successiva 1.2.5
Tra 1.23.5 e 1.24.0 1.1.3
Inferiore a 1.23.5 1.0.0

Le versioni precedenti di OSM potrebbero non essere disponibili per l'installazione o essere supportate attivamente se la versione del servizio Azure Kubernetes corrispondente ha raggiunto la fine del ciclo di vita. È possibile controllare il calendario della versione del servizio Azure Kubernetes per informazioni sulle finestre di supporto della versione del servizio Azure Kubernetes.

Funzionalità e caratteristiche

OSM offre le funzionalità e le funzionalità seguenti:

  • Proteggere la comunicazione da servizio a servizio abilitando TLS reciproco (mTLS).
  • Eseguire l'onboarding delle applicazioni nella mesh OSM usando l'inserimento automatico sidecar del proxy Envoy.
  • Configurare in modo trasparente lo spostamento del traffico nelle distribuzioni.
  • Definire ed eseguire criteri di controllo di accesso con granularità fine per i servizi.
  • Monitorare ed eseguire il debug dei servizi usando l'osservabilità e le informazioni dettagliate sulle metriche dell'applicazione.
  • Crittografare le comunicazioni tra gli endpoint di servizio distribuiti nel cluster.
  • Abilitare l'autorizzazione del traffico sia del traffico HTTP/HTTPS che del traffico TCP.
  • Configurare controlli del traffico ponderati tra due o più servizi per le distribuzioni di test A/B o canary.
  • Raccogliere e visualizzare gli indicatori KPI dal traffico dell'applicazione.
  • Eseguire l'integrazione con la gestione dei certificati esterni.
  • Eseguire l'integrazione con soluzioni di ingresso esistenti, ad esempio NGINX, Contour e routing delle applicazioni.

Per altre informazioni sull'ingresso e su OSM, vedere Uso dell'ingresso per gestire l'accesso esterno ai servizi all'interno del cluster e Integrare OSM con Contour for ingress. Per un esempio di come integrare OSM con controller di ingresso usando l'API di networking.k8s.io/v1, vedere ingresso con il controller di ingresso Nginx Kubernetes. Per altre informazioni sull'uso del routing delle applicazioni, che si integra automaticamente con OSM, vedere Application Routing.

Limiti

Il componente aggiuntivo OSM del servizio Azure Kubernetes presenta le limitazioni seguenti:

  • Dopo l'installazione, è necessario abilitare il reindirizzamento Iptables per l'esclusione dell'indirizzo IP della porta e dell'intervallo di porte usando kubectl patch. Per altre informazioni, vedere reindirizzamento iptables.
  • Tutti i pod che necessitano dell'accesso a IMDS, DNS di Azure o al server API Kubernetes devono aggiungere i propri indirizzi IP all'elenco globale degli intervalli IP in uscita esclusi usando Esclusioni dell'intervallo IP in uscita globale.
  • OSM non supporta i contenitori Windows Server.

Passaggi successivi

Dopo aver abilitato il componente aggiuntivo OSM usando l'interfaccia della riga di comando di Azure o un modello Bicep, è possibile: