Piano dati gestito
Questa pagina descrive come gestire il piano dati per Cloud Service Mesh gestito.
Se utilizzi Cloud Service Mesh gestito, Google gestisce completamente gli upgrade dei proxy.
Con la funzionalità del data plane gestito abilitata, i proxy sidecar e i gateway inseriti vengono aggiornati attivamente e automaticamente insieme al control plane gestito riavviando i workload per inserire nuovamente le nuove versioni del proxy. Inizia dopo l'upgrade del control plane e di solito viene completato entro due settimane dall'inizio.
Tieni presente che il piano dati gestito si basa sul canale di rilascio di GKE. Se modifichi il canale di rilascio di GKE mentre il piano dati gestito è abilitato, Cloud Service Mesh gestito aggiornerà i proxy di tutti i workload esistenti come un rollout del piano dati gestito.
Se è disattivata, la gestione dei proxy viene eseguita passivamente, in base al ciclo di vita naturale dei pod nel cluster e deve essere attivata manualmente dall'utente per controllare la velocità di aggiornamento.
L'upgrade del data plane gestito esegue l'upgrade dei proxy eliminando i pod che eseguono versioni precedenti del proxy. Le espulsioni vengono eseguite gradualmente, rispettando il budget di interruzione dei pod e controllando il tasso di modifica.
Quando vengono implementate nuove versioni del data plane Cloud Service Mesh
| Managed Data Plane | Eventi che attivano un nuovo deployment del data plane Cloud Service Mesh | ||
| Aggiornamenti attivi di Cloud Service Mesh
Attivamente, quando sono disponibili nuove versioni.1 |
Creazione di nuovi pod
Quando tu o la scalabilità automatica orizzontale dei pod eseguite il deployment di nuovi workload |
Periodi di manutenzione di GKE
Quando i nodi vengono sostituiti durante un periodo di manutenzione di GKE |
|
| Abilitato | |||
| Disabilitato | |||
1 Gli aggiornamenti attivi di Cloud Service Mesh sostituiscono automaticamente Pods
nei carichi di lavoro, ad eccezione di StatefulSets, Jobs, DaemonSets e Pods inseriti manualmente. Gli aggiornamenti attivi di Cloud Service Mesh rispettano i budget di interruzione Pod.
- Gli aggiornamenti attivi a bassa priorità coincidono con le finestre di manutenzione di GKE.
- Gli aggiornamenti attivi ad alta priorità possono essere eseguiti non appena Cloud Service Mesh li rende disponibili per il cluster, indipendentemente dai periodi di manutenzione di GKE. Gli aggiornamenti attivi ad alta priorità in genere hanno almeno una CVE associata.
Attiva il data plane gestito se non vuoi gestire autonomamente il ciclo di vita del data plane Cloud Service Mesh e i tuoi carichi di lavoro possono tollerare la sostituzione dei pod in qualsiasi momento.
Disattiva il piano dati gestito se vuoi avere il controllo completo sull'ora di tutti gli aggiornamenti del piano dati di Cloud Service Mesh.
Le notifiche relative alla manutenzione non vengono inviate per impostazione predefinita. Per saperne di più, in questo documento, consulta Attivare le notifiche di manutenzione per il data plane gestito.
Limitazioni
Il piano dati gestito non gestisce quanto segue:
- Pod non iniettati
- Pod inseriti manualmente
- Job
- StatefulSet
- DaemonSet
Se hai eseguito il provisioning di Cloud Service Mesh gestito su un cluster precedente, puoi attivare la gestione del piano dati per l'intero cluster:
kubectl annotate --overwrite controlplanerevision -n istio-system \
REVISION_LABEL \
mesh.cloud.google.com/proxy='{"managed":"true"}'
In alternativa, puoi abilitare il piano dati gestito in modo selettivo per uno spazio dei nomi o un pod specifico annotandolo con la stessa annotazione. Se controlli i singoli componenti in modo selettivo, l'ordine di precedenza è revisione del control plane, spazio dei nomi e poi pod.
Potrebbero essere necessari fino a dieci minuti prima che il servizio sia pronto per gestire i proxy nel cluster. Esegui il comando seguente per controllare lo stato:
gcloud container fleet mesh describe --project FLEET_PROJECT_ID
Output previsto:
membershipStates:
projects/PROJECT_NUMBER/locations/global/memberships/CLUSTER_NAME:
servicemesh:
dataPlaneManagement:
details:
- code: OK
details: Service is running.
state: ACTIVE
state:
code: OK
description: 'Revision(s) ready for use: asm-managed-rapid.'
Se il servizio non diventa pronto entro dieci minuti, consulta Stato del piano di gestione dei dati per i passaggi successivi.
(Facoltativo) Disattiva il piano dati gestito
Se esegui il provisioning di Cloud Service Mesh gestito su un nuovo cluster, puoi disattivare completamente il piano dati gestito o per singoli spazi dei nomi o pod. Il piano dati gestito continuerà a essere disattivato per i cluster esistenti in cui è stato disattivato per impostazione predefinita o manualmente.
Per disattivare il data plane gestito a livello di cluster e ripristinare la gestione autonoma dei proxy sidecar, trova ogni revisione del control plane e modifica ogni annotazione.
Trova tutte le revisioni del control plane:
kubectl get controlplanerevisions -n istio-systemModifica l'annotazione:
kubectl annotate --overwrite controlplanerevision CONTROL_PLANE_REVISION_NAME -n istio-system mesh.cloud.google.com/proxy='{"managed":"false"}'Ripeti questo passaggio per ogni revisione del control plane.
Sostituisci CONTROL_PLANE_REVISION_NAME con l'output del comando precedente.
Per disattivare il data plane gestito per uno spazio dei nomi:
kubectl annotate --overwrite namespace NAMESPACE \ mesh.cloud.google.com/proxy='{"managed":"false"}'Per disattivare il piano dati gestito per un pod:
kubectl annotate --overwrite pod POD_NAME \ mesh.cloud.google.com/proxy='{"managed":"false"}'
Abilita i periodi di manutenzione per il piano dati gestito
Se hai configurato un periodo di manutenzione di GKE, gli upgrade attivi inizieranno all'inizio del successivo periodo di manutenzione disponibile e continueranno senza interruzioni finché tutti i pod gestiti non saranno stati aggiornati (di solito 12 ore). Il periodo di manutenzione non viene rispettato per i rollout correlati alle CVE.
Cloud Service Mesh utilizza il periodo di manutenzione di GKE per allinearsi a GKE.
Attiva le notifiche di manutenzione per il piano dati gestito
Puoi richiedere di ricevere una notifica relativa alla manutenzione del piano dati gestito imminente pianificata in un periodo di manutenzione fino a una settimana prima della manutenzione pianificata. Le notifiche relative alla manutenzione non vengono inviate per impostazione predefinita. Prima di poter ricevere notifiche, devi anche configurare un periodo di manutenzione GKE. Se abilitate, le notifiche vengono inviate almeno due giorni prima dell'operazione di upgrade.
Per attivare le notifiche di manutenzione del piano dati gestito:
Vai alla pagina Comunicazione.
Nella riga Upgrade di Cloud Service Mesh, nella colonna Email, seleziona il pulsante di opzione per attivare le notifiche di manutenzione ON.
Ogni utente che vuole ricevere le notifiche deve attivare l'opzione separatamente. Se vuoi impostare un filtro email per queste notifiche, l'oggetto è:
Upcoming upgrade for your Cloud Service Mesh cluster "CLUSTER_LOCATION/CLUSTER_NAME".
L'esempio seguente mostra una tipica notifica di manutenzione del piano dati gestito:
Oggetto: Prossimo upgrade per il cluster Cloud Service Mesh "
<location/cluster-name>"Gentile utente Cloud Service Mesh,
L'upgrade dei componenti Cloud Service Mesh nel cluster ${instance_id} (https://console.cloud.google.com/kubernetes/clusters/details/${instance_id}/details?project=${project_id}) è pianificato per il giorno ${scheduled_date_human_readable} alle ore ${scheduled_time_human_readable}.
Per informazioni sul nuovo aggiornamento, consulta le note di rilascio (https://cloud.google.com/service-mesh/docs/release-notes).
Se questo intervento di manutenzione verrà annullato, riceverai un'altra email.
Cordiali saluti,
Il team di Cloud Service Mesh
(c) 2023 Google LLC 1600 Amphitheater Parkway, Mountain View, CA 94043, USA Ti abbiamo inviato questo annuncio per informarti di importanti cambiamenti che riguardano Google Cloud Platform o il tuo account. Puoi disattivare le notifiche relative al periodo di manutenzione modificando le tue preferenze utente: https://console.cloud.google.com/user-preferences/communication?project=${project_id}