Azure Arc-enabled Open Service Mesh

Open Service Mesh (OSM) è una mesh di servizi cloud semplice ed estendibile che consente agli utenti di gestire, proteggere e ottenere funzionalità di osservabilità predefinite per ambienti di microservizi altamente dinamici.

OSM esegue un piano di controllo basato su Envoy in Kubernetes, può essere configurato con le API SMI e funziona inserendo un proxy Envoy come contenitore sidecar accanto a ogni istanza dell'applicazione. Altre informazioni sugli scenari di mesh di servizi abilitati da Open Service Mesh.

Tutti i componenti di OSM abilitati per Azure Arc vengono distribuiti nelle zone di disponibilità, rendendoli ridondanti per la zona.

Opzioni e requisiti di installazione

Azure Arc-enabled Open Service Mesh può essere distribuito tramite portale di Azure, interfaccia della riga di comando di Azure, un modello di Resource Manager o criteri di Azure predefiniti.

Prerequisiti

  • Assicurarsi di aver soddisfatto tutti i prerequisiti comuni per le estensioni del cluster elencati qui.
  • Usare la versione >dell'estensione dell'interfaccia az k8s-extension della riga di comando = v1.0.4

Limitazioni correnti del supporto

  • È possibile distribuire una sola istanza di Open Service Mesh in un cluster Kubernetes connesso ad Azure Arc.
  • Il supporto è disponibile per le due versioni secondarie rilasciate più di recente di Open Service Mesh abilitate per Arc. Trovare la versione più recente qui. Le versioni di rilascio supportate vengono aggiunte con note. Ignorare i tag associati alle versioni intermedie.
  • Attualmente sono supportate le distribuzioni kubernetes seguenti:
    • Motore del servizio Azure Kubernetes (servizio Azure Kubernetes)
    • Cluster del servizio Azure Kubernetes in Azure Stack HCI
    • Servizio Azure Kubernetes abilitato da Azure Arc
    • Cluster API Azure
    • Motore di Google Kubernetes
    • Distribuzione di Kubernetes canonica
    • Rancher Kubernetes Engine
    • Distribuzione di OpenShift Kubernetes
    • Amazon Elastic Kubernetes Service
    • Griglia Kubernetes di VMware Tanzu
  • L'integrazione di Monitoraggio di Azure con Open Service Mesh abilitata per Azure Arc è disponibile in anteprima con supporto limitato.

Installazione di base con portale di Azure

Per eseguire la distribuzione con portale di Azure, dopo aver creato un cluster connesso ad Arc, passare alla sezione Open Service Mesh del cluster.

Open Service Mesh located under Settings for Arc enabled Kubernetes cluster

Selezionare il pulsante Installa estensione per distribuire la versione più recente dell'estensione.

In alternativa, è possibile usare l'esperienza dell'interfaccia della riga di comando acquisita qui. Per l'onboarding su larga scala, leggere altre informazioni in questo articolo sulla distribuzione con il modello di Resource Manager e sull'uso di Criteri di Azure.

Installazione di base con l'interfaccia della riga di comando di Azure

I passaggi seguenti presuppongono che sia già disponibile un cluster con una distribuzione Kubernetes supportata connessa ad Azure Arc. Assicurarsi che la variabile di ambiente KUBECONFIG punti al kubeconfig del cluster Kubernetes abilitato per Arc.

Impostare le variabili di ambiente:

export CLUSTER_NAME=<arc-cluster-name>
export RESOURCE_GROUP=<resource-group-name>

Se si usa un cluster OpenShift, passare alla procedura di installazione di OpenShift.

Creare l'estensione:

Nota

Per aggiungere una versione specifica di OSM, aggiungere il --version x.y.z flag al create comando . Si noti che verrà impostato il valore per auto-upgrade-minor-version su false.

az k8s-extension create --cluster-name $CLUSTER_NAME --resource-group $RESOURCE_GROUP --cluster-type connectedClusters --extension-type Microsoft.openservicemesh --scope cluster --name osm

L'output dovrebbe essere simile a questo esempio. La distribuzione del grafico helm OSM effettivo nel cluster può richiedere 3-5 minuti. Fino a quando non si verifica questa distribuzione, installState rimarrà Pending.

{
  "autoUpgradeMinorVersion": true,
  "configurationSettings": {},
  "creationTime": "2021-04-29T17:50:11.4116524+00:00",
  "errorInfo": {
    "code": null,
    "message": null
  },
  "extensionType": "microsoft.openservicemesh",
  "id": "/subscriptions/<subscription-id>/resourceGroups/$RESOURCE_GROUP/providers/Microsoft.Kubernetes/connectedClusters/$CLUSTER_NAME/providers/Microsoft.KubernetesConfiguration/extensions/osm",
  "identity": null,
  "installState": "Pending",
  "lastModifiedTime": "2021-04-29T17:50:11.4116525+00:00",
  "lastStatusTime": null,
  "location": null,
  "name": "osm",
  "releaseTrain": "stable",
  "resourceGroup": "$RESOURCE_GROUP",
  "scope": {
    "cluster": {
      "releaseNamespace": "arc-osm-system"
    },
    "namespace": null
  },
  "statuses": [],
  "type": "Microsoft.KubernetesConfiguration/extensions",
  "version": "x.y.z"
}

Convalidare quindi l'installazione.

Installazioni personalizzate

Le sezioni seguenti descrivono alcune installazioni personalizzate di OSM abilitato per Azure Arc. Le installazioni personalizzate richiedono valori di impostazione di OSM in un file JSON e passarli al k8s-extension create comando dell'interfaccia della riga di comando.

Installare OSM in un cluster OpenShift

  1. Copiare e salvare il contenuto seguente in un file JSON. Se è già stato creato un file di impostazioni di configurazione, aggiungere la riga seguente al file esistente per mantenere le modifiche precedenti.

    {
        "osm.osm.enablePrivilegedInitContainer": "true"
    }
    
  2. Installare OSM con valori personalizzati.

  3. Aggiungere il vincolo del contesto di sicurezza con privilegi a ogni account del servizio per le applicazioni nella mesh.

    oc adm policy add-scc-to-user privileged -z <service account name> -n <service account namespace>
    

La distribuzione del grafico helm OSM effettivo nel cluster può richiedere 3-5 minuti. Fino a quando non si verifica questa distribuzione, installState rimarrà Pending.

Per assicurarsi che l'impostazione del contenitore init con privilegi non venga ripristinata per impostazione predefinita, passare l'impostazione "osm.osm.enablePrivilegedInitContainer" : "true" di configurazione a tutti i comandi successivi az k8s-extension create .

Abilitare le funzionalità a disponibilità elevata all'installazione

I componenti del piano di controllo di OSM sono compilati tenendo presente la disponibilità elevata e la tolleranza di errore. Questa sezione descrive come abilitare la scalabilità automatica orizzontale dei pod (HPA) e il budget di interruzione dei pod (PDB) durante l'installazione. Altre informazioni sulle considerazioni sulla progettazione della disponibilità elevata in OSM.

Scalabilità automatica orizzontale dei pod (HPA)

HPA aumenta o riduce automaticamente i pod del piano di controllo in base all'utilizzo medio della CPU di destinazione (%) e all'utilizzo medio della memoria di destinazione (%) definito dall'utente. Per abilitare HPA e impostare i valori applicabili nei pod del piano di controllo OSM durante l'installazione, creare o aggiungere al file di impostazioni JSON esistente, come illustrato di seguito, ripetendo le coppie chiave/valore per ogni pod del piano di controllo (osmController, injector) su cui si vuole abilitare HPA.

{
  "osm.osm.<control_plane_pod>.autoScale.enable" : "true",
  "osm.osm.<control_plane_pod>.autoScale.minReplicas" : "<allowed values: 1-10>",
  "osm.osm.<control_plane_pod>.autoScale.maxReplicas" : "<allowed values: 1-10>",
  "osm.osm.<control_plane_pod>.autoScale.cpu.targetAverageUtilization" : "<allowed values 0-100>",
  "osm.osm.<control_plane_pod>.autoScale.memory.targetAverageUtilization" : "<allowed values 0-100>"
}

Installare ora OSM con valori personalizzati.

Budget di interruzione dei pod (PDB)

Per evitare interruzioni durante le interruzioni pianificate, i osm-controller pod del piano di controllo e osm-injector hanno un PDB che garantisce che ci sia sempre almeno un pod corrispondente a ogni applicazione del piano di controllo.

Per abilitare PDB, creare o aggiungere al file di impostazioni JSON esistente come indicato di seguito per ogni pod del piano di controllo desiderato (osmController, injector):

{
  "osm.osm.<control_plane_pod>.enablePodDisruptionBudget" : "true"
}

Installare ora OSM con valori personalizzati.

Installare OSM con cert-manager per la gestione dei certificati

cert-manager è un provider che può essere usato per rilasciare certificati firmati a OSM senza la necessità di archiviare chiavi private in Kubernetes. Per altre informazioni, vedere la documentazione di cert-manager di OSM e la demo.

Nota

Usare i comandi forniti nella documentazione di GitHub osm con cautela. Assicurarsi di usare lo spazio dei nomi corretto nei comandi o specificare con il flag --osm-namespace arc-osm-system.

Per installare OSM con cert-manager come provider di certificati, creare o aggiungere al file di impostazioni JSON esistente il certificateProvider.kind valore impostato su cert-manager, come illustrato di seguito. Per passare dai valori predefiniti di gestione certificati specificati nella documentazione di OSM, includere e aggiornare anche le righe successive certmanager.issuer .

{
  "osm.osm.certificateProvider.kind" : "cert-manager",
  "osm.osm.certmanager.issuerName" : "<issuer name>",
  "osm.osm.certmanager.issuerKind" : "<issuer kind>",
  "osm.osm.certmanager.issuerGroup" : "<issuer group>"
}

Installare ora OSM con valori personalizzati.

Installare OSM con contorno per l'ingresso

OSM offre più opzioni per esporre i servizi mesh esternamente usando l'ingresso. OSM può usare Contour, che funziona con il controller di ingresso installato all'esterno della mesh ed è stato effettuato il provisioning con un certificato per partecipare alla mesh. Per altre informazioni, vedere la documentazione in ingresso e la demo di OSM.

Nota

Usare i comandi forniti nella documentazione di GitHub osm con cautela. Assicurarsi di usare lo spazio dei nomi corretto nei comandi o specificare con il flag --osm-namespace arc-osm-system. Per impostare i valori necessari per la configurazione di Contour durante l'installazione di OSM, aggiungere quanto segue al file di impostazioni JSON:

{
  "osm.osm.osmNamespace" : "arc-osm-system",
  "osm.contour.enabled" : "true",
  "osm.contour.configInline.tls.envoy-client-certificate.name" : "osm-contour-envoy-client-cert", 
  "osm.contour.configInline.tls.envoy-client-certificate.namespace" : "arc-osm-system"
}

Impostazione dei valori durante l'installazione di OSM

Tutti i valori che devono essere impostati durante l'installazione di OSM devono essere salvati in un singolo file JSON e passati tramite il comando di installazione dell'interfaccia della riga di comando di Azure.

Dopo aver creato un file JSON con valori applicabili, come descritto nelle sezioni di installazione personalizzata, impostare il percorso del file come variabile di ambiente:

export SETTINGS_FILE=<json-file-path>

Eseguire il az k8s-extension create comando per creare l'estensione OSM, passando il file di impostazioni usando il --configuration-settings-file flag :

az k8s-extension create --cluster-name $CLUSTER_NAME --resource-group $RESOURCE_GROUP --cluster-type connectedClusters --extension-type Microsoft.openservicemesh --scope cluster --name osm --configuration-settings-file $SETTINGS_FILE

Installare osm abilitato per Azure Arc usando il modello di Resource Manager

Dopo aver connesso il cluster ad Azure Arc, creare un file JSON con il formato seguente, assicurandosi di aggiornare i <cluster-name> valori e <osm-arc-version> :

{
    "$schema": "https://schema.management.azure.com/schemas/2019-04-01/deploymentTemplate.json#",
    "contentVersion": "1.0.0.0",
    "parameters": {
        "ConnectedClusterName": {
            "defaultValue": "<cluster-name>",
            "type": "String",
            "metadata": {
                "description": "The Connected Cluster name."
            }
        },
        "ExtensionInstanceName": {
            "defaultValue": "osm",
            "type": "String",
            "metadata": {
                "description": "The extension instance name."
            }
        },
        "ExtensionVersion": {
            "defaultValue": "<osm-arc-version>",
            "type": "String",
            "metadata": {
                "description": "The extension type version."
            }
        },
        "ExtensionType": {
            "defaultValue": "Microsoft.openservicemesh",
            "type": "String",
            "metadata": {
                "description": "The extension type."
            }
        },
        "ReleaseTrain": {
            "defaultValue": "Stable",
            "type": "String",
            "metadata": {
                "description": "The release train."
            }
        }
    },
    "functions": [],
    "resources": [
        {
            "type": "Microsoft.KubernetesConfiguration/extensions",
            "apiVersion": "2020-07-01-preview",
            "name": "[parameters('ExtensionInstanceName')]",
            "properties": {
                "extensionType": "[parameters('ExtensionType')]",
                "releaseTrain": "[parameters('ReleaseTrain')]",
                "version": "[parameters('ExtensionVersion')]"
            },
            "scope": "[concat('Microsoft.Kubernetes/connectedClusters/', parameters('ConnectedClusterName'))]"
        }
    ]
}

Impostare le variabili di ambiente:

export TEMPLATE_FILE_NAME=<template-file-path>
export DEPLOYMENT_NAME=<desired-deployment-name>

Eseguire questo comando per installare l'estensione OSM:

az deployment group create --name $DEPLOYMENT_NAME --resource-group $RESOURCE_GROUP --template-file $TEMPLATE_FILE_NAME

Dovrebbe ora essere possibile visualizzare le risorse OSM e usare l'estensione OSM nel cluster.

Installare OSM abilitato per Azure Arc usando i criteri predefiniti

Un criterio predefinito è disponibile in portale di Azure nella categoria Kubernetes: i cluster Kubernetes abilitati per Azure Arc devono avere l'estensione Open Service Mesh installata. Questo criterio può essere assegnato nell'ambito di una sottoscrizione o di un gruppo di risorse.

L'azione predefinita di questo criterio è Distribuisci se non esiste. È tuttavia possibile scegliere di controllare i cluster per le installazioni di estensioni modificando i parametri durante l'assegnazione. Viene richiesto anche di specificare la versione da installare (v1.0.0-1 o successiva) come parametro.

Convalidare l'installazione

Esegui il comando seguente:

az k8s-extension show --cluster-type connectedClusters --cluster-name $CLUSTER_NAME --resource-group $RESOURCE_GROUP --name osm

Verrà visualizzato un output JSON simile al seguente:

{
  "autoUpgradeMinorVersion": true,
  "configurationSettings": {},
  "creationTime": "2021-04-29T19:22:00.7649729+00:00",
  "errorInfo": {
    "code": null,
    "message": null
  },
  "extensionType": "microsoft.openservicemesh",
  "id": "/subscriptions/<subscription-id>/resourceGroups/$RESOURCE_GROUP/providers/Microsoft.Kubernetes/connectedClusters/$CLUSTER_NAME/providers/Microsoft.KubernetesConfiguration/extensions/osm",
  "identity": null,
  "installState": "Installed",
  "lastModifiedTime": "2021-04-29T19:22:00.7649731+00:00",
  "lastStatusTime": "2021-04-29T19:23:27.642+00:00",
  "location": null,
  "name": "osm",
  "releaseTrain": "stable",
  "resourceGroup": "$RESOURCE_GROUP",
  "scope": {
    "cluster": {
      "releaseNamespace": "arc-osm-system"
    },
    "namespace": null
  },
  "statuses": [],
  "type": "Microsoft.KubernetesConfiguration/extensions",
  "version": "x.y.z"
}

Per altri comandi che è possibile usare per convalidare e risolvere i problemi di distribuzione dei componenti dell'estensione Open Service Mesh (OSM) nel cluster, vedere la guida alla risoluzione dei problemi

Configurazione del controller OSM

OSM distribuisce una risorsa osm-mesh-config MeshConfig come parte del piano di controllo nello arc-osm-system spazio dei nomi. Lo scopo di questo MeshConfig è fornire al proprietario o all'operatore mesh la possibilità di aggiornare alcune configurazioni mesh in base alle proprie esigenze. Per visualizzare i valori predefiniti, usare il comando seguente.

kubectl describe meshconfig osm-mesh-config -n arc-osm-system

L'output mostra i valori predefiniti:

  Certificate:
    Cert Key Bit Size:               2048
    Service Cert Validity Duration:  24h
  Feature Flags:
    Enable Async Proxy Service Mapping:  false
    Enable Egress Policy:                true
    Enable Envoy Active Health Checks:   false
    Enable Ingress Backend Policy:       true
    Enable Multicluster Mode:            false
    Enable Retry Policy:                 false
    Enable Snapshot Cache Mode:          false
    Enable WASM Stats:                   true
  Observability:
    Enable Debug Server:  false
    Osm Log Level:        info
    Tracing:
      Enable:  false
  Sidecar:
    Config Resync Interval:            0s
    Enable Privileged Init Container:  false
    Log Level:                         error
    Resources:
  Traffic:
    Enable Egress:                          false
    Enable Permissive Traffic Policy Mode:  true
    Inbound External Authorization:
      Enable:              false
      Failure Mode Allow:  false
      Stat Prefix:         inboundExtAuthz
      Timeout:             1s
    Inbound Port Exclusion List:
    Outbound IP Range Exclusion List:
    Outbound Port Exclusion List:

Per altre informazioni, vedere Le informazioni di riferimento sull'API di configurazione. in cui spec.traffic.enablePermissiveTrafficPolicyMode è impostato su true. Quando OSM è in modalità criteri di traffico permissivi, l'imposizione dei criteri di traffico SMI viene ignorata. In questa modalità, OSM individua automaticamente i servizi che fanno parte delle regole dei criteri di traffico della mesh del servizio e dei programmi in ogni sidecar proxy envoy per poter comunicare con questi servizi.

osm-mesh-configpuò essere visualizzato anche nella portale di Azure selezionando Modifica configurazione nella sezione Open Service Mesh del cluster.

Edit configuration button located on top of the Open Service Mesh section

Apportare modifiche alla configurazione del controller OSM

Nota

I valori in MeshConfig osm-mesh-config vengono mantenuti tra gli aggiornamenti.

È possibile apportare modifiche a osm-mesh-config usando il kubectl patch comando . Nell'esempio seguente la modalità dei criteri di traffico permissiva viene modificata in false.

kubectl patch meshconfig osm-mesh-config -n arc-osm-system -p '{"spec":{"traffic":{"enablePermissiveTrafficPolicyMode":false}}}' --type=merge

Se viene usato un valore non corretto, le convalide in MeshConfig CRD impediscono la modifica con un messaggio di errore che spiega perché il valore non è valido. Ad esempio, questo comando mostra cosa accade se si esegue l'applicazione di patch enableEgress a un valore non booleano:

kubectl patch meshconfig osm-mesh-config -n arc-osm-system -p '{"spec":{"traffic":{"enableEgress":"no"}}}'  --type=merge
# Validations on the CRD will deny this change
The MeshConfig "osm-mesh-config" is invalid: spec.traffic.enableEgress: Invalid value: "string": spec.traffic.enableEgress in body must be of type boolean: "string"

In alternativa, per modificare osm-mesh-config in portale di Azure, selezionare Modifica configurazione nella sezione Open Service Mesh del cluster.

Edit configuration button in the Open Service Mesh section

Uso di OSM abilitato per Azure Arc

Per iniziare a usare le funzionalità di OSM, è prima necessario eseguire l'onboarding degli spazi dei nomi dell'applicazione nella mesh del servizio. Scaricare l'interfaccia della riga di comando di OSM dalla pagina delle versioni di GitHub osm. Dopo aver aggiunto gli spazi dei nomi alla mesh, è possibile configurare i criteri SMI per ottenere la funzionalità OSM desiderata.

Eseguire l'onboarding degli spazi dei nomi nella mesh del servizio

Aggiungere spazi dei nomi alla mesh eseguendo il comando seguente:

osm namespace add <namespace_name>

È possibile eseguire l'onboarding degli spazi dei nomi anche da portale di Azure selezionando +Aggiungi nella sezione Open Service Mesh del cluster.

+Add button located on top of the Open Service Mesh section

Per altre informazioni sui servizi di onboarding, vedere la documentazione di Open Service Mesh.

Configurare OSM con i criteri SMI (Service Mesh Interface)

È possibile iniziare con un'applicazione di esempio o usare l'ambiente di test per provare i criteri SMI.

Nota

Se si usano applicazioni di esempio, assicurarsi che le versioni corrispondano alla versione dell'estensione OSM installata nel cluster. Ad esempio, se si usa la versione 1.0.0 dell'estensione OSM, usare il manifesto bookstore dal ramo release-v1.0 del repository upstream OSM.

Configurazione delle istanze di Jaeger, Prometheus e Grafana

L'estensione OSM non installa componenti aggiuntivi come Jaeger, Prometheus, Grafana e Flagger. È invece possibile integrare OSM con le proprie istanze in esecuzione di tali strumenti. Per l'integrazione con le proprie istanze, vedere la documentazione seguente:

Nota

Usare i comandi forniti nella documentazione di GitHub osm con cautela. Assicurarsi di usare il nome arc-osm-system dello spazio dei nomi corretto quando si apportano modifiche a osm-mesh-config.

Monitoraggio dell'applicazione con Monitoraggio di Azure e Application Insights (anteprima)

Monitoraggio di Azure e app Azure lication Insights consentono di ottimizzare la disponibilità e le prestazioni delle applicazioni e dei servizi offrendo una soluzione completa per la raccolta, l'analisi e l'esecuzione dei dati di telemetria dagli ambienti cloud e locali. Open Service Mesh abilitato per Azure Arc include integrazioni approfondite in entrambi questi servizi di Azure. Questa integrazione offre un'esperienza ottimale di Azure per la visualizzazione e la risposta agli indicatori KPI critici forniti dalle metriche OSM.

Importante

Le funzionalità di anteprima di Kubernetes abilitate per Azure Arc sono disponibili in base al consenso esplicito self-service. Le anteprime vengono fornite "così com'è" e "come disponibili" e vengono escluse dai contratti di servizio e dalla garanzia limitata. Le anteprime di Kubernetes abilitate per Azure Arc sono parzialmente coperte dal supporto tecnico per i clienti in modo ottimale.

Seguire questa procedura per consentire a Monitoraggio di Azure di raschiare gli endpoint Prometheus per raccogliere le metriche dell'applicazione.

  1. Seguire le indicazioni disponibili qui per assicurarsi che gli spazi dei nomi dell'applicazione da monitorare vengano onboarding nella mesh.

  2. Esporre gli endpoint Prometheus per gli spazi dei nomi dell'applicazione.

    osm metrics enable --namespace <namespace1>
    osm metrics enable --namespace <namespace2>
    
  3. Installare l'estensione Monitoraggio di Azure usando le indicazioni disponibili qui.

  4. Creare una mappa di configurazione nello kube-system spazio dei nomi che consente a Monitoraggio di Azure di monitorare gli spazi dei nomi. Ad esempio, creare un container-azm-ms-osmconfig.yaml oggetto con il codice seguente per monitorare <namespace1> e <namespace2>:

    kind: ConfigMap
    apiVersion: v1
    data:
      schema-version: v1
      config-version: ver1
      osm-metric-collection-configuration: |-
        # OSM metric collection settings
        [osm_metric_collection_configuration]
          [osm_metric_collection_configuration.settings]
              # Namespaces to monitor
              monitor_namespaces = ["<namespace1>", "<namespace2>"]
    metadata:
      name: container-azm-ms-osmconfig
      namespace: kube-system
    
  5. Eseguire il comando kubectl seguente

    kubectl apply -f container-azm-ms-osmconfig.yaml
    

La visualizzazione delle metriche in Log Analytics può richiedere fino a 15 minuti. È possibile provare a eseguire query sulla tabella InsightsMetrics.

InsightsMetrics
| where Name contains "envoy"
| extend t=parse_json(Tags)
| where t.app == "namespace1"
  1. Accedere al cluster Kubernetes connesso ad Arc usando questo collegamento.
  2. Passare a Monitoraggio di Azure e passare alla scheda Report per accedere alla cartella di lavoro di OSM.
  3. Selezionare l'intervallo di tempo e lo spazio dei nomi per definire l'ambito dei servizi.

OSM workbook

Scheda Richieste

La scheda Richieste mostra un riepilogo di tutte le richieste HTTP inviate tramite servizio al servizio in OSM.

  • È possibile visualizzare tutti i servizi selezionando il servizio nella griglia.
  • È possibile visualizzare le richieste totali, la frequenza di errore della richiesta e la latenza P90.
  • È possibile eseguire il drill-down alla destinazione e visualizzare le tendenze per codice di errore/esito positivo HTTP, frequenza di esito positivo, utilizzo delle risorse pod e latenze in percentili diversi.

Scheda Connessioni

La scheda Connessione ions mostra un riepilogo di tutte le connessioni tra i servizi in Open Service Mesh.

  • Connessioni in uscita: numero totale di connessioni tra i servizi di origine e di destinazione.
  • Connessioni attive in uscita: ultimo numero di connessioni attive tra origine e destinazione nell'intervallo di tempo selezionato.
  • Connessioni in uscita non riuscite: numero totale di connessioni non riuscite tra il servizio di origine e di destinazione.

Eseguire l'aggiornamento a una versione specifica di OSM

Potrebbero verificarsi tempi di inattività del piano di controllo durante gli aggiornamenti. Il piano dati è interessato solo durante gli aggiornamenti CRD.

Aggiornamenti supportati

L'estensione OSM può essere aggiornata manualmente tra versioni secondarie e principali. Tuttavia, l'aggiornamento automatico (se abilitato) funziona solo nelle versioni secondarie.

Eseguire manualmente l'aggiornamento a una versione specifica di OSM

Il comando seguente aggiorna l'estensione OSM-Arc a una versione specifica:

az k8s-extension update --cluster-name $CLUSTER_NAME --resource-group $RESOURCE_GROUP --cluster-type connectedClusters --release-train stable --name osm --version x.y.z

Abilitare gli aggiornamenti automatici

Se gli aggiornamenti automatici non sono abilitati per impostazione predefinita, è possibile eseguire il comando seguente per abilitarli. Il valore corrente di --auto-upgrade-minor-version può essere verificato eseguendo il az k8s-extension show comando come descritto in dettaglio nel passaggio Convalida installazione .

az k8s-extension update --cluster-name $CLUSTER_NAME --resource-group $RESOURCE_GROUP --cluster-type connectedClusters --release-train stable --name osm --auto-upgrade-minor-version true

Disinstallare OSM abilitato per Azure Arc

Utilizza il seguente comando:

az k8s-extension delete --cluster-type connectedClusters --cluster-name $CLUSTER_NAME --resource-group $RESOURCE_GROUP --name osm -y

Verificare che l'istanza dell'estensione sia stata eliminata:

az k8s-extension list --cluster-type connectedClusters --cluster-name $CLUSTER_NAME --resource-group $RESOURCE_GROUP

Questo output non deve includere OSM. Se nel cluster non sono installate altre estensioni, si tratta solo di una matrice vuota.

Quando si usa il az k8s-extension comando per eliminare l'estensione OSM, lo arc-osm-system spazio dei nomi non viene rimosso e le risorse effettive all'interno dello spazio dei nomi (ad esempio la modifica della configurazione del webhook e il pod osm-controller) richiedono circa 10 minuti per l'eliminazione.

Nota

Usare l'interfaccia della riga di comando az k8s-extension per disinstallare i componenti OSM gestiti da Arc. L'uso dell'interfaccia della riga di comando di OSM per disinstallare non è supportato da Arc e può comportare un comportamento indesiderato.

Passaggi successivi