Canali di rilascio di Cloud Service Mesh gestito

Cloud Service Mesh rilascia spesso aggiornamenti per fornire aggiornamenti della sicurezza, problemi noti e introdurre nuove funzionalità. I canali di rilascio offrono un equilibrio tra la stabilità e il set di funzionalità della versione di Cloud Service Mesh. Cloud Service Mesh i canali di rilascio sono legati Canali di rilascio di Google Kubernetes Engine (GKE). Google gestisce automaticamente la versione e la cadenza degli upgrade per ogni canale di rilascio.

Questo documento illustra il confronto tra i canali di rilascio e spiega come eseguire aggiornamenti da proxy non gestiti.

Canali di rilascio disponibili

Sono disponibili i seguenti canali di rilascio. Ogni canale offre un compromesso tra la disponibilità delle funzionalità e il tasso di abbandono degli aggiornamenti. Le funzionalità di ogni canale hanno un livello di maturità diverso. Le patch di sicurezza critiche vengono distribuite in tutte le release per proteggere i tuoi cluster e l'infrastruttura di Google.

Canale Nuova disponibilità di Cloud Service Mesh gestito Proprietà
Rapida Dopo ogni release di Cloud Service Mesh Ricevi l'ultima release di Cloud Service Mesh il prima possibile e potrai utilizzare le nuove funzionalità non appena vengono incluse in una release. Il tuo viene aggiornato di frequente per mantenere l'ultima patch disponibile e offrire funzionalità più recenti. Il canale Rapido è il più adatto per testare le versioni e le API di Cloud Service Mesh più recenti in ambienti di pre-produzione.
Normale La versione Rapid viene promossa a versione regolare* Accedi alle funzionalità di Cloud Service Mesh e Istio ragionevolmente subito dopo debutterà, ma in una versione che è stata qualificata per un periodo più lungo nel tempo. Offre un buon compromesso tra disponibilità di funzionalità e stabilità di release ed è l'opzione che consigliamo alla maggior parte degli utenti.
Stabile Il livello Normale viene promosso al livello Stabile* Dai priorità alla stabilità rispetto alle nuove funzionalità. Le modifiche e le nuove versioni in questo canale vengono implementate per ultime, dopo il rilascio sui canali Rapido e Regolare, dedicando ancora più tempo alla convalida.
*Il programma della promozione al canale successivo dipende da: tra cui la release open source Istio, il rilascio di Anthos e l'applicazione di patch ed è quindi soggetto a modifiche. Per rimanere al corrente con le informazioni più recenti, aggiungi l'URL delle note di rilascio di Cloud Service Mesh al tuo aggregatore di feed oppure aggiungi direttamente l'URL del feed: https://cloud.google.com/feeds/servicemesh-release-notes.xml

Quando una versione secondaria di Cloud Service Mesh gestito ha un utilizzo sufficiente e stabilità nel canale Rapido, viene promosso al Livello canale. Alla fine, la versione minore viene promossa al canale stabile, che riceve solo aggiornamenti e patch di sicurezza ad alta priorità. Ogni promozione indica un livello crescente di stabilità e idoneità alla produzione, in base alle prestazioni osservate del control plane che esegue la versione.

Tutti i canali si basano su una pubblicazione in disponibilità generale (GA), sebbene le singole funzionalità potrebbero non essere sempre GA, come indicato). Le nuove versioni di Cloud Service Mesh vengono rilasciate inizialmente nel canale Rapido e, nel tempo, vengono promosse ai canali Regolare e Stabile. In questo modo puoi selezionare un canale che soddisfa le tue esigenze aziendali, di stabilità e funzionalità.

Il canale Cloud Service Mesh del cluster è determinato dal relativo GKE il canale del cluster.

Canale GKE Canale Cloud Service Mesh
Rapida Rapida
Normale Normale
Stabile Stabile
(nessun canale) Normale

Versioni di Cloud Service Mesh per canale

Il canale Cloud Service Mesh è determinato dal canale del cluster GKE al momento del provisioning di Cloud Service Mesh gestito. Se in un secondo momento modifichi il canale del cluster GKE, mantieni il canale Cloud Service Mesh originale.

La tabella seguente mostra la mappatura del canale alla versione Cloud Service Mesh corrente:

Canale Versione di Cloud Service Mesh
Rapida 1.19
Normale 1.19
Stabile 1.18

Canale predefinito

In Cloud Service Mesh appena installato in cui è presente un singolo canale gestito installati in un cluster, quel canale sarà il canale predefinito in un cluster Kubernetes.

Se i cluster con un'installazione esistente di Istio o Cloud Service Mesh hanno il tag predefinito configurato, deve essere indicato il valore della revisione gestita. In caso contrario, non è richiesta alcuna azione.

Puoi utilizzare l'etichetta istio-injection=enabled come alias che indirizza l'iniezione alle altre etichette utilizzate per il canale, ad esempio la revisione predefinita. Ovunque la nostra documentazione indichi di utilizzare l'etichetta dello spazio dei nomi istio.io/rev per l'iniezione, è possibile utilizzare l'etichetta istio-injection=enabled.

Etichette di iniezione

Per consentire a Cloud Service Mesh di gestire i carichi di lavoro in un determinato spazio dei nomi, lo spazio dei nomi deve essere etichettato con un'etichetta corrispondente al canale installato. Cloud Service Mesh gestito supporta due tipi di etichette:

  • etichette di revisione standard, ossia asm-managed-stable, asm-managed, asm-managed-rapid, corrispondente ai canali stable, regular e rapid.
  • Etichetta di inserimento predefinita (ad es. istio-injection=enabled), corrispondente al canale predefinito per quel cluster. L'utilizzo dell'etichetta di inserimento predefinita semplifica la migrazione tra revisioni. Ad esempio, quando si esegue la migrazione da Istio OSS o da Cloud Service Mesh non gestito a Cloud Service Mesh gestito, poiché non è necessario rietichettare ogni spazio dei nomi singolarmente. Ovunque venga visualizzata la documentazione di Cloud Service Mesh per utilizzare l'etichetta dello spazio dei nomi istio.io/rev per l'inserimento, è possibile usare l'etichetta istio-injection=enabled.

Altri esempi di etichette di inserimento includono l'etichettatura dei carichi di lavoro con sidecar.istio.io/inject (comunemente utilizzato per i gateway) e istio.io/rev, che funziona sia per gli spazi dei nomi sia per i carichi di lavoro.

Etichette di inserimento predefinite

Per applicare l'etichetta di inserimento predefinita a uno spazio dei nomi:

kubectl label namespace NAMESPACE istio-injection=enabled istio.io/rev- --overwrite

Etichette di revisione

Come le altre etichette Kubernetes, un'etichetta di revisione è una coppia chiave-valore. La chiave in un'etichetta di revisione è sempre istio.io/rev, ma il valore varia. Per selezionare un canale di rilascio, applica uno dei seguenti nomi di revisione ai tuoi spazi dei nomi:

Nome revisione Canale
asm-managed Normale
asm-managed-rapid Rapida
asm-managed-stable Stabile

Ad esempio, per applicare il canale di rilascio regolare a uno spazio dei nomi:

kubectl label namespace NAMESPACE istio.io/rev=asm-managed --overwrite

Ti consigliamo di utilizzare lo stesso canale di rilascio utilizzato dal cluster.

Per vedere quale canale di rilascio utilizza uno spazio dei nomi:

kubectl get namespace NAMESPACE -o jsonpath='{.metadata.labels.istio\.io/rev}{"\n"}'

Aggiorna i proxy non gestiti

Dopo ogni release di Cloud Service Mesh, riavvia i proxy non gestiti per e gateway VPN ad alta disponibilità. Anche se il mesh di servizi funziona correttamente quando il piano di controllo e i proxy sono in versioni diverse, ti consigliamo di aggiornare i proxy in modo che siano configurati con la nuova versione di Cloud Service Mesh.

  1. Controlla il piano di controllo e versione proxy.

  2. Se la versione del piano di controllo è più recente di quella del proxy, riavvia i proxy non gestiti per i servizi e i gateway.

    kubectl rollout restart deployment -n NAMESPACE