Assistenza

L'obiettivo principale dell'assistenza di Google è risolvere gli incidenti di produzione il più rapidamente possibile. Comprendere la tua configurazione, analizzare log e metriche e collaborare con i partner ci aiuta a risolvere rapidamente gli incidenti.

Google Cloud offre vari pacchetti di assistenza per soddisfare le tue esigenze. Tutti i pacchetti di assistenza Google Cloud includono il supporto per la versione Enterprise di Google Kubernetes Engine (GKE) e Google Distributed Cloud. Se hai già un Google Cloud pacchetto di assistenza, hai già l'assistenza per GKE Enterprise e Google Distributed Cloud.

Per saperne di più, consulta la documentazione dell'assistenza clienti Google Cloud.

Requisiti per l'assistenza di Google Distributed Cloud

Per risolvere efficacemente gli incidenti critici per l'attività:

Strumenti di assistenza

Per risolvere un incidente di Google Distributed Cloud,l'assistenza Google Cloud si basa su tre informazioni:

Configurazione dell'ambiente

Quando apri una richiesta di assistenza, l'esecuzione dei seguenti comandi fornisce informazioni chiave sulla configurazione del cluster:

  • Per tutti i tipi di cluster, esegui il comando bmctl check cluster --snapshot per acquisire informazioni su Kubernetes e sui tuoi nodi. Allega il file tar risultante alla richiesta di assistenza.

  • Per i cluster di amministrazione, ibrida e autonomi, esegui il comando bmctl check cluster per controllare lo stato di integrità del cluster e dei nodi. Allega i log risultanti alla richiesta di assistenza. Devono essere presenti nella directory bmctl-workspace/[CLUSTER_NAME]/log/check-cluster-[TIMESTAMP].

  • Per i cluster utente, crea prima un file YAML di controllo di integrità dell'integrità con il nome e lo spazio dei nomi del cluster, quindi applica il file al cluster di amministrazione appropriato:

    1. Crea un file YAML con le seguenti proprietà healthcheck. Ecco alcuni contenuti di esempio per un cluster denominato user1 nello spazio dei nomi cluster-user1:

      apiVersion: baremetal.cluster.gke.io/v1
      kind: HealthCheck
      metadata:
        generateName: healthcheck-
        namespace: cluster-user1
      spec:
        clusterName: user1
      
    2. Dopo aver creato il file YAML, applica la risorsa personalizzata nel cluster amministrativo che gestisce il cluster utente con il comando kubectl. Ecco un comando di esempio che utilizza il file YAML creato nel passaggio precedente. Nel campione, la variabile ADMIN_KUBECONFIG specifica il percorso del file kubeconfig del cluster di amministrazione:

      kubectl --kubeconfig ADMIN_KUBECONFIG create -f healthcheck-user1.yaml
      

      Il comando restituisce la seguente risposta:

      healthcheck.baremetal.cluster.gke.io/healthcheck-7c4qf created
      
    3. Attendi il completamento del job di controllo di integrità dell'integrità verificando se la controllo di integrità del job è stata completata. Nell'esempio precedente, il nome del job di controllo di integrità è healthcheck.baremetal.cluster.gke.io/healthcheck-7c4qf. Ecco un test di esempio con il comando kubectl che attende 30 minuti per il completamento del job di controllo di integrità'integrità:

      kubectl --kubeconfig ADMIN_KUBECONFIG wait healthcheck healthcheck-7c4qf \
          -n cluster-user1 --for=condition=Reconciling=False --timeout=30m
      

      Al termine, questo comando restituisce:

      healthcheck.baremetal.cluster.gke.io/healthcheck-7c4qf condition met
      

      Puoi visualizzare i risultati del job di controllo di integrità#39;integrità con il seguente comando:

      kubectl --kubeconfig ADMIN_KUBECONFIG get healthcheck healthcheck-7c4qf \
          -n cluster-user1
      

      Il comando restituisce il seguente risultato:

      NAME                PASS   AGE
      healthcheck-7c4qf   true   17m
      
    4. Raccogliere tutti i log del pod del job di controllo di integrità in un file locale con il comando kubectl. Ecco un esempio che utilizza il job di controllo dello stato di salute di esempio precedente:

      kubectl --kubeconfig ADMIN_KUBECONFIG logs -n cluster-user1 \
          -l baremetal.cluster.gke.io/check-name=healthcheck-7c4qf --tail=-1 > \
          healthcheck-7c4qf.log
      

Log del cluster

Quando crei un nuovo cluster Google Distributed Cloud, gli agenti Cloud Logging sono abilitati per impostazione predefinita e limitati solo ai componenti a livello di sistema. In questo modo, i log a livello di sistema vengono replicati nel progetto Google Cloud associato al cluster. I log a livello di sistema provengono dai pod Kubernetes nei seguenti spazi dei nomi:

  • kube-system
  • gke-system
  • gke-connect
  • istio-system
  • config-management-system
  • gatekeeper-system
  • cnrm-system
  • knative-serving

È possibile eseguire query sui log dalla console Cloud Logging.

Per maggiori dettagli, vedi Registrazione e monitoraggio.

Google Cloud CLI e accesso remoto al cluster

Se apri una richiesta di assistenza, l'assistenza clienti Google Cloud potrebbe chiederti l'accesso remoto di sola lettura ai tuoi cluster per aiutarti a diagnosticare e risolvere i problemi in modo più efficace. Affinché il team di assistenza abbia accesso sufficiente per risolvere il problema del cluster da remoto, assicurati di aver installato e aggiornato la versione più recente di Google Cloud CLI. Google Cloud CLI deve essere almeno della versione 401.0.0 per concedere all'assistenza clienti Google Cloud le autorizzazioni necessarie. Ti consigliamo di aggiornare regolarmente Google Cloud CLI per rilevare le autorizzazioni aggiunte e altri miglioramenti.

Per installare i componenti più recenti dellgcloud CLI, utilizza il comando gcloud components update. Per ulteriori informazioni su come concedere all'assistenza clienti Google Cloud l'accesso di sola lettura remoto ai tuoi cluster, consulta Assistenza Google Cloud per i cluster registrati.

Metriche del cluster

Oltre ai log, l'agente Cloud Monitoring acquisisce anche le metriche. In questo modo, le metriche a livello di sistema vengono replicate nel progetto Google Cloud associato al cluster. Le metriche a livello di sistema provengono dai pod Kubernetes in esecuzione negli stessi spazi dei nomi elencati in Logs.

Per maggiori dettagli, vedi Registrazione e monitoraggio.

Come risolviamo i problemi del tuo ambiente

Ecco un esempio di un tipico incidente relativo all'assistenza:

  1. L'amministratore del cluster apre una richiesta di assistenza nella console Google Cloud o nel Google Cloud Support Center e seleziona Google Kubernetes Engine (GKE) Enterprise Edition e Google Distributed Cloud come Categoria e Componente, rispettivamente. Inseriscono le informazioni richieste e allega all'ordine l'output dei comandi bmctl pertinenti.

  2. La richiesta di assistenza viene inoltrata a un Technical Support Engineer specializzato in Google Distributed Cloud.

  3. L'ingegnere dell'assistenza esamina i contenuti dell'istantanea per ottenere il contesto dell'ambiente.

  4. L'ingegnere dell'assistenza esamina i log e le metriche nel progetto Google Cloud, inserendo l'case ID di assistenza come giustificazione commerciale, che viene registrata internamente.

  5. Il tecnico del servizio di assistenza risponde alla richiesta con una valutazione e un consiglio. L'tecnico del servizio di assistenza e l'utente continuano la risoluzione dei problemi fino a trovare una soluzione.

Che cosa supporta Google?

In genere, il team di assistenza Cloud supporta tutti i componenti software forniti come parte di Google Distributed Cloud e Cloud Service Mesh, Policy Controller, Config Sync e Config Controller. Per un elenco più completo degli elementi supportati e non supportati, consulta la tabella seguente:

Supportato daGoogle Cloud Non supportata
Kubernetes e il runtime del container Scelta del bilanciatore del carico da parte del cliente (bilanciamento del carico manuale)
Connect e l'agente Connect Codice cliente (vedi Assistenza per sviluppatori)
Google Cloud , monitoraggio, logging e agenti Scelta del sistema operativo da parte del cliente
Bilanciatore del carico in bundle Server, archiviazione e rete fisici o virtuali
Controller Ingress Sistemi DNS, DHCP e di identità esterni
GKE Identity Service
Cloud Service Mesh
Policy Controller
Config Sync
Config Controller

Norme relative al supporto delle versioni

L'assistenza per Google Distributed Cloud segue le norme relative all'assistenza di GKE Enterprise. Google supporta ogni versione secondaria di Google Distributed Cloud per il periodo di tempo più lungo tra:

  • 12 mesi dopo il rilascio iniziale della versione minore.
  • La release della terza versione secondaria successiva.
Per le date di rilascio delle release minori più recenti di GKE Enterprise e per le date di ritiro più recenti, consulta Periodo di assistenza di GKE Enterprise.

Per gli elenchi delle versioni di Google Distributed Cloud supportate e non supportate, consulta Versionamento.

Per informazioni sulle versioni relative agli upgrade dei cluster, consulta Regole relative alle versioni per gli upgrade.

Modello di responsabilità condivisa

L'esecuzione di un'applicazione di produzione fondamentale per l'attività su Google Distributed Cloud richiede che più parti si assumano responsabilità diverse. Sebbene non sia un elenco esaustivo, le sezioni seguenti elencano i ruoli e le responsabilità.

Responsabilità di Google

  • Manutenzione e distribuzione del pacchetto software Google Distributed Cloud.
  • Inviare notifiche agli utenti sugli upgrade disponibili per Google Distributed Cloud e produrre script di upgrade per la versione precedente. Google Distributed Cloud supporta solo gli upgrade sequenziali (ad es. 1.2 → 1.3 → 1.4 e non 1.2 → 1.4).
  • Utilizzo dei servizi Connect e Suite operativa di Google Cloud.
  • Risolvere i problemi, fornire soluzioni alternative e correggere la causa principale di eventuali problemi relativi ai componenti forniti da Google

Responsabilità degli utenti

  • Amministrazione complessiva del sistema per i cluster on-premise.
  • Gestire qualsiasi carico di lavoro dell'applicazione di cui è stato eseguito il deployment sul cluster.
  • Esecuzione, manutenzione e applicazione di patch all'infrastruttura del data center, inclusa la rete, i server, il sistema operativo, l'archiviazione e la connettività aGoogle Cloud.
  • Eseguire, gestire e applicare patch ai bilanciatori del carico di rete se viene scelta l'opzione di bilanciamento del carico manuale.
  • Eseguire regolarmente l'upgrade delle versioni di Google Distributed Cloud.
  • Monitoraggio del cluster e delle applicazioni e risposta a eventuali incidenti.
  • Assicurati che gli agenti Cloud Operations vengano dipartiti nei cluster.
  • Fornire a Google i dettagli ambientali per la risoluzione dei problemi.

Assistenza per gli sviluppatori

Google non fornisce assistenza specifica per i carichi di lavoro delle applicazioni. Tuttavia, forniamo assistenza agli sviluppatori con il criterio best effort per garantire che i tuoi sviluppatori possano eseguire applicazioni su Google Distributed Cloud. Riteniamo che coinvolgere gli utenti in una fase precedente durante lo sviluppo possa evitare incidenti critici in un secondo momento durante il deployment.

L'assistenza per gli sviluppatori secondo il criterio del "best effort" è disponibile per i clienti con qualsiasi pacchetto di assistenza a pagamento ed è considerata una priorità P3 per un problema che blocca un lancio o una priorità P4 per una consulenza generale. In questa classificazione, il livello di priorità 0 è la priorità più alta.