Gestire le funzionalità a livello di parco risorse

I parchi risorse ti consentono di gestire le funzionalità enterprise e altre funzionalità abilitate per il parco risorse in più cluster contemporaneamente. In questo modo, ad esempio, puoi applicare un insieme comune di criteri o creare un mesh di un singolo servizio nel tuo parco risorse di cluster. Questa pagina fornisce una panoramica su come gestire le funzionalità per la tua flotta. Per ulteriori informazioni sulla configurazione e sull'utilizzo delle singole funzionalità, consulta la relativa documentazione.

Se hai abilitato Google Kubernetes Engine, puoi gestire le funzionalità nella console Google Cloud . Tutti gli utenti della flotta possono gestire le funzionalità utilizzando la riga di comando.

Alcune funzionalità consentono di creare una configurazione predefinita delle funzionalità a livello di parco risorse per i cluster del parco risorse. Ad esempio, puoi assicurarti che in ogni cluster creato nel parco risorse sia installato e configurato Policy Controller.

Puoi scoprire di più su come funziona la gestione delle funzionalità a livello di parco risorse sui tuoi cluster "sotto il cofano" nella sezione Autorizzazione funzionalità.

Funzionalità a livello di parco risorse

Puoi gestire le seguenti funzionalità a livello di parco risorse:

Questo elenco non include tutte le funzionalità che utilizzano o richiedono le flotte. Ad esempio, la federazione delle identità per i carichi di lavoro del parco risorse si basa sull'appartenenza dei cluster a un parco risorse, ma non richiede la configurazione a livello di parco risorse, mentre Cloud Service Mesh richiede l'appartenenza al parco risorse per tutte le opzioni di configurazione e del control plane.

Puoi scoprire di più sulle funzionalità disponibili nei vari ambienti nella pagina Opzioni di deployment.

Configura le funzionalità a livello di parco risorse

Le sezioni seguenti descrivono come attivare e configurare le funzionalità a livello di flotta.

Per utilizzare una funzionalità a livello di parco risorse, nella maggior parte dei casi attivi la funzionalità per il parco risorse e la configuri per i membri del parco risorse. In genere è necessaria una configurazione (o un'altra configurazione aggiuntiva) per utilizzare effettivamente la funzionalità con i tuoi cluster e carichi di lavoro.

Puoi creare configurazioni dei cluster predefinite del parco risorse per alcune funzionalità, il che significa che tutti i nuovi cluster che crei nel tuo parco risorse verranno creati con le impostazioni specificate per quella funzionalità già configurate.

Attivare funzionalità con valori predefiniti a livello di parco risorse

Per alcune funzionalità, puoi creare impostazioni predefinite a livello di parco risorse per i tuoi cluster GKE. Dopo aver creato queste impostazioni, qualsiasi cluster GKE che registri durante la creazione del cluster viene configurato automaticamente con le configurazioni a livello di parco risorse. Ad esempio, se configuri le impostazioni predefinite per Policy Controller, ogni nuovo cluster creato nel parco risorse avrà installata la versione specificata di Policy Controller, con i bundle di policy e le altre impostazioni specificate. Le impostazioni predefinite del parco risorse non vengono applicate automaticamente ai cluster membri del parco risorse esistenti, anche se puoi sincronizzare i cluster esistenti con le impostazioni predefinite utilizzando la console Google Cloud .

La procedura generale per attivare le funzionalità con valori predefiniti a livello di parco risorse è la seguente:

Console

  1. Nel progetto host del parco risorse, vai alla pagina Gestore funzionalità:

    Vai a Gestore funzionalità

    Le funzionalità che supportano la configurazione dei valori predefiniti a livello di parco risorse utilizzando la console Google Cloud sono elencate in Gestione delle funzionalità a livello di parco risorse.

  2. Per la funzionalità scelta, fai clic su Configura e segui le istruzioni per attivare e configurare i valori predefiniti per la funzionalità.

  3. (Facoltativo) Seleziona e sincronizza i cluster esistenti nel parco risorse con le nuove impostazioni.

gcloud

  1. Crea un file YAML che specifichi i valori predefiniti del parco risorse scelti per la funzionalità.
  2. Esegui il comando enable per la funzionalità, passando il file di configurazione. Ogni funzionalità a livello di flotta ha il proprio comando enable. Ad esempio, per abilitare Cloud Service Mesh per il tuo parco risorse con la configurazione predefinita specificata in mesh.yaml, esegui questo comando nel progetto host del parco risorse:

    gcloud container fleet mesh enable --fleet-default-member-config mesh.yaml
    

In alternativa, per alcune funzionalità puoi specificare i valori predefiniti del parco risorse utilizzando i parametri del comando fleet create o fleet update. Per ulteriori dettagli, consulta la guida relativa alla funzionalità che hai scelto.

Terraform

Definisci una risorsa google_gke_hub_feature con un blocco fleet_default_member_config che specifica i valori predefiniti del parco risorse che hai scelto. Per informazioni dettagliate e sulle funzionalità del parco risorse supportate, consulta la documentazione di Terraform.

Non tutte le funzionalità supportano la configurazione predefinita del parco risorse utilizzando tutte queste opzioni. Per istruzioni dettagliate su come impostare i valori predefiniti della flotta per ogni funzionalità supportata, consulta la seguente documentazione:

Abilitare e configurare le funzionalità del parco risorse sui singoli cluster

In alternativa alla configurazione predefinita del parco risorse, puoi scegliere di configurare le funzionalità del parco risorse separatamente sui singoli cluster. Questa potrebbe essere una buona opzione se:

  • Vuoi configurare un cluster esistente per utilizzare una funzionalità.
  • Vuoi utilizzare servizi in cui la configurazione predefinita del parco risorse non è disponibile o non è disponibile utilizzando lo strumento scelto.

Abilita le funzionalità

Tieni presente che questo passaggio non è obbligatorio per tutte le funzionalità. Per ulteriori dettagli, consulta la guida relativa alla funzionalità che hai scelto.

Console

Puoi attivare le funzionalità dalla pagina Feature Manager nella console Google Cloud .

Per attivare una funzionalità per il tuo parco risorse:

  1. Nel progetto host del parco risorse, vai alla pagina Gestore funzionalità:

    Vai a Gestore funzionalità

    Le funzionalità che possono essere attivate ma non configurate da questa pagina sono elencate nella sezione Gestisci altre funzionalità di livello enterprise.

  2. Fai clic su Attiva nel riquadro della funzionalità che vuoi attivare.

  3. Fai clic sul pulsante Attiva… nel riquadro dei dettagli visualizzato.

gcloud

Ogni funzionalità a livello di flotta ha il proprio comando enable. Ad esempio, per attivare GKE Identity Service per il tuo parco risorse, esegui il seguente comando nel progetto host del parco risorse:

gcloud container fleet identity-service enable

Consulta la documentazione di riferimento dell'SDK Google Cloud (e le relative versioni beta e alpha) per un elenco completo dei comandi o i singoli set di documentazione delle funzionalità per ulteriori dettagli.

Per scoprire come controllare se una funzionalità è già stata attivata e visualizzare lo stato di altre funzionalità, consulta Visualizzare lo stato delle funzionalità del parco risorse.

Configura singoli cluster

I passaggi di configurazione che segui dipendono dalla funzionalità. Per ulteriori informazioni, consulta le seguenti guide:

Visualizzare lo stato delle funzionalità del parco risorse

Il modo più semplice per visualizzare lo stato delle funzionalità del parco risorse è utilizzare la dashboard Gestore funzionalità nella console Google Cloud .

Vai a Gestore funzionalità

Per le funzionalità supportate, questa pagina mostra il numero di cluster del parco risorse con il seguente stato:

  • Avere questa funzionalità attivata
  • Abilitare correttamente questa funzionalità
  • Avviso per questa funzionalità
  • Si è verificato un errore per questa funzionalità

Puoi anche vedere se sono state configurate le impostazioni predefinite del parco risorse per la funzionalità e quanti cluster membri del parco risorse hanno queste impostazioni. Per le funzionalità abilitate, puoi fare clic su una pagina di dettagli che elenca i cluster che utilizzano la funzionalità e, se configurata, ti consente di selezionare e sincronizzare i cluster con le impostazioni predefinite del parco risorse.

Per le funzionalità che non possono essere configurate utilizzando questa pagina (elencate in Gestisci altre funzionalità pronte per l'uso aziendale), puoi vedere se la funzionalità è stata attivata per il tuo parco risorse e visualizzare un riquadro dei dettagli che mostra il numero di cluster in cui è installata la funzionalità e altre informazioni pertinenti.

Visualizzare lo stato delle funzionalità utilizzando gcloud

gcloud

Esegui questo comando per elencare tutte le funzionalità abilitate:

gcloud container fleet features list

Disattivare una funzionalità a livello di parco risorse

Per disattivare una funzionalità a livello di parco risorse, segui questi passaggi nel progetto host del parco risorse.

Console

Solo le funzionalità del parco risorse elencate in Gestisci altre funzionalità di livello enterprise possono essere disattivate dalla console Google Cloud .

  1. Nel progetto host del parco risorse, vai alla pagina Gestore funzionalità:

    Vai a Gestore funzionalità

  2. Fai clic su Dettagli nel riquadro della funzionalità da disattivare.

  3. Fai clic sul pulsante Disattiva… nel riquadro dei dettagli visualizzato.

gcloud

Ogni funzionalità a livello di flotta ha il proprio comando disable. Ad esempio, per disattivare Cloud Service Mesh per il tuo parco progetti, esegui questo comando nel progetto host del parco progetti:

gcloud container fleet mesh disable

Consulta la documentazione di riferimento dell'SDK Google Cloud (e le relative versioni beta e alpha) per un elenco completo dei comandi o i singoli set di documentazione delle funzionalità per ulteriori dettagli.

Per il comportamento previsto dopo aver disattivato una funzionalità per la tua flotta, consulta la documentazione relativa alla funzionalità. In molti casi, la configurazione pertinente esiste ancora nel cluster, ma non puoi più gestire centralmente la funzionalità utilizzando i comandi del parco risorse o la console Google Cloud .

Autorizzazione delle funzionalità

Per gestire le funzionalità a livello di parco risorse, è necessario autorizzarle tramite il controllo dell'accesso dell'accesso basato sui ruoli per eseguire le loro funzioni sui cluster. Google Cloud utilizza un servizio chiamato Feature Authorizer che imposta e aggiorna automaticamente le autorizzazioni per le funzionalità abilitate per il parco risorse, il che ti evita di dover impostare manualmente le autorizzazioni delle funzionalità su ogni cluster, soprattutto quando Google rilascia aggiornamenti delle funzionalità.

Quando registri un cluster, il manifest applicato al cluster contiene un ClusterRoleBinding che assegna all'autorizzatore delle funzionalità un ruolo cluster-admin sul cluster e il ruolo è collegato a un account di servizio denominato service-project-number@gcp-sa-gkehub.iam.gserviceaccount.com.

Quando disattivi una funzionalità abilitata per il parco risorse nel tuo progetto, Feature Authorizer elimina i ClusterRole e ClusterRoleBinding corrispondenti per la funzionalità, il che rimuove la capacità della funzionalità di operare sul cluster.

Visualizzare Feature Authorizer negli audit log

Per visualizzare l'attività di Feature Authorizer nei log di controllo di GKE:

  1. Apri Esplora log nella console Google Cloud .

    Vai alla pagina Log

  2. Esegui la seguente query avanzata:

    resource.type="k8s_cluster"
    resource.labels.cluster_name="CLUSTER_NAME"
    resource.labels.location="CLUSTER_LOCATION"
    protoPayload.authenticationInfo.principalEmail="system:serviceaccount:gke-connect:connect-agent-sa"
    protoPayload.authenticationInfo.authoritySelector="service-PROJECT_NUMBER@gcp-sa-gkehub.iam.gserviceaccount.com"
    

    Sostituisci quanto segue:

    • CLUSTER_NAME: il nome del cluster per cui vuoi visualizzare i log.
    • CLUSTER_LOCATION: la Google Cloud posizione in cui è stato creato il cluster.
    • PROJECT_NUMBER: il numero di progetto Google Cloud del progetto proprietario del cluster.

Per i cluster non GKE, scopri dove sono archiviati i log di controllo di Kubernetes ed esegui una query simile.