I parchi risorse ti consentono di gestire le funzionalità di livello enterprise e altre funzionalità abilitate per il parco risorse su più cluster contemporaneamente. In questo modo, ad esempio, puoi applicare un insieme comune di criteri o creare un mesh di servizi singolo in tutti i cluster del parco risorse. Questa pagina fornisce una panoramica su come gestire le funzionalità per il tuo parco risorse. 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 Google Cloud console. Tutti gli utenti del parco risorse 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 Policy Controller sia installato e configurato in ogni cluster creato nel parco risorse.
Puoi scoprire di più su come funziona "sotto il cofano" la gestione delle funzionalità a livello di parco risorse nei cluster nella sezione Autorizzazione delle funzionalità.
Funzionalità a livello di parco risorse
Puoi gestire le seguenti funzionalità a livello di parco risorse:
- Cloud Service Mesh gestito
- Security posture
- Config Sync
- Policy Controller
- GKE Identity Service
- Ingress multi-cluster
- Servizi multi-cluster (solo cluster GKE)
- Convalida continua per l'autorizzazione binaria
Questo elenco non include tutte le funzionalità che utilizzano o richiedono i parchi risorse. Ad esempio, la federazione delle identità per i workload del parco risorse si basa sul fatto che i cluster siano membri di 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 control plane e configurazione.
Puoi scoprire di più sulle funzionalità disponibili in quali ambienti nella pagina Opzioni di deployment.
Configurare le funzionalità a livello di parco risorse
Le sezioni seguenti descrivono come abilitare e configurare le funzionalità a livello di parco risorse.
Per utilizzare una funzionalità a livello di parco risorse, nella maggior parte dei casi devi abilitare la funzionalità per il parco risorse e configurarla per i membri del parco risorse. In genere è necessaria una configurazione (o un'altra configurazione aggiuntiva) per utilizzare effettivamente la funzionalità con i cluster e i carichi di lavoro.
Per alcune funzionalità puoi creare configurazioni dei cluster predefinite per il parco risorse, il che significa che tutti i nuovi cluster creati nel parco risorse verranno creati con le impostazioni specificate per la funzionalità già configurate.
Abilitare le funzionalità con impostazioni predefinite a livello di parco risorse
Per alcune funzionalità puoi creare impostazioni predefinite a livello di parco risorse per i cluster GKE. Dopo aver creato queste impostazioni, tutti i cluster GKE che registri durante la creazione del cluster vengono configurati 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à la versione specificata di Policy Controller installata, con i bundle di criteri 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 Google Cloud console.
La procedura generale per abilitare le funzionalità con impostazioni predefinite a livello di parco risorse è la seguente:
Console
Nel progetto host del parco risorse, vai alla pagina Gestore funzionalità:
Le funzionalità che supportano la configurazione delle impostazioni predefinite a livello di parco risorse utilizzando la Google Cloud console sono elencate in Gestione delle funzionalità a livello di parco risorse.
Per la funzionalità scelta, fai clic su Configura e segui le istruzioni per abilitare e configurare le impostazioni predefinite per la funzionalità.
(Facoltativo) Seleziona e sincronizza i cluster esistenti nel parco risorse con le nuove impostazioni.
gcloud
- Crea un file YAML che specifichi le impostazioni predefinite del parco risorse scelte per la funzionalità.
Esegui il comando
enableper la funzionalità, passandogli il file di configurazione. Ogni funzionalità a livello di parco risorse ha il proprio comandoenable. Ad esempio, per abilitare Cloud Service Mesh per il parco risorse con la configurazione predefinita specificata inmesh.yaml, esegui il comando seguente nel progetto host del parco risorse:gcloud container fleet mesh enable --fleet-default-member-config mesh.yaml
In alternativa, per alcune funzionalità puoi specificare le impostazioni predefinite del parco risorse utilizzando i parametri del comando fleet create o fleet update. Per ulteriori dettagli, consulta la guida relativa alla funzionalità scelta.
Terraform
Definisci una risorsa google_gke_hub_feature con un blocco fleet_default_member_config che specifichi le impostazioni predefinite del parco risorse scelte. Per dettagli e 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 configurare le impostazioni predefinite del parco risorse per ogni funzionalità supportata, consulta la seguente documentazione:
- Cloud Service Mesh
- Config Sync
- Policy Controller
- Security posture
- GKE Identity Service (solo riga di comando)
- Convalida continua per l'autorizzazione binaria (anteprima, solo riga di comando)
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.
Abilitare le funzionalità
Tieni presente che questo passaggio non è obbligatorio per tutte le funzionalità. Per ulteriori dettagli, consulta la guida relativa alla funzionalità scelta.
Console
Puoi abilitare le funzionalità dalla pagina Gestore funzionalità nella Google Cloud console.
Per abilitare una funzionalità per il parco risorse:
Nel progetto host del parco risorse, vai alla pagina Gestore funzionalità:
Le funzionalità che possono essere abilitate ma non configurate da questa pagina sono elencate in Gestisci altre funzionalità di livello enterprise.
Fai clic su Abilita nel riquadro della funzionalità che vuoi abilitare.
Fai clic sul pulsante Abilita... nel riquadro dei dettagli visualizzato.
gcloud
Ogni funzionalità a livello di parco risorse ha il proprio comando enable. Ad esempio, per abilitare GKE Identity Service per il parco risorse, esegui il comando seguente nel progetto host del parco risorse:
gcloud container fleet identity-service enable
Per un elenco completo dei comandi o per ulteriori dettagli, consulta la documentazione di riferimento di Google Cloud SDK (e i relativi equivalenti beta e alpha) o i singoli set di documentazione delle funzionalità.
Per scoprire come verificare se una funzionalità è già stata abilitata e visualizzare altri stati delle funzionalità, consulta Visualizzare lo stato delle funzionalità del parco risorse.
Configurare i singoli cluster
I passaggi di configurazione da seguire dipendono dalla funzionalità. Per ulteriori informazioni, consulta le seguenti guide:
- Cloud Service Mesh
- Security posture:
- Config Sync
- Policy Controller
- GKE Identity Service
- Ingress multi-cluster
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 Google Cloud console.
Per le funzionalità supportate, questa pagina mostra quanti cluster del parco risorse hanno il seguente stato:
- Questa funzionalità è abilitata
- Questa funzionalità è stata abilitata correttamente
- È presente un avviso per questa funzionalità
- È presente 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 dei 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à di livello enterprise), puoi vedere se la funzionalità è stata abilitata per il parco risorse e visualizzare un riquadro dei dettagli che mostra quanti cluster hanno installato la funzionalità e altre informazioni pertinenti.
Visualizzare lo stato delle funzionalità utilizzando gcloud
gcloud
Esegui il comando seguente per elencare tutte le funzionalità abilitate:
gcloud container fleet features list
Disabilitare una funzionalità a livello di parco risorse
Per disabilitare una funzionalità a livello di parco risorse, esegui i passaggi seguenti nel progetto host del parco risorse.
Console
Dalla console è possibile disabilitare solo le funzionalità del parco risorse elencate in Gestisci altre funzionalità di livello enterprise. Google Cloud
Nel progetto host del parco risorse, vai alla pagina Gestore funzionalità:
Fai clic su Dettagli nel riquadro della funzionalità che vuoi disabilitare.
Fai clic sul pulsante Disabilita... nel riquadro dei dettagli visualizzato.
gcloud
Ogni funzionalità a livello di parco risorse ha il proprio comando disable. Ad esempio, per disabilitare Cloud Service Mesh per il parco risorse, esegui il comando seguente nel progetto host del parco risorse:
gcloud container fleet mesh disable
Per un elenco completo dei comandi o per ulteriori dettagli, consulta la documentazione di riferimento di Google Cloud SDK (e i relativi equivalenti beta e alpha) o i singoli set di documentazione delle funzionalità.
Per il comportamento previsto dopo aver disabilitato una funzionalità per il parco risorse, consulta la documentazione della funzionalità pertinente. 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, queste devono essere autorizzate tramite il controllo dell'accesso basato sui ruoli per eseguire le proprie funzioni sui cluster. Google Cloud utilizza un servizio chiamato Autorizzatore di funzionalità 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 di 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 disabiliti una funzionalità abilitata per il parco risorse nel progetto, l'autorizzatore di funzionalità
elimina il
ClusterRole e ClusterRoleBinding corrispondenti per la funzionalità, il che impedisce
alla funzionalità di operare sul cluster.
Visualizzare l'autorizzatore di funzionalità negli audit log
Per visualizzare l'attività dell'autorizzatore di funzionalità negli audit log di GKE:
Apri Esplora log nella Google Cloud console.
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 di cui vuoi visualizzare i log.CLUSTER_LOCATION: la Google Cloud località in cui è stato creato il cluster.PROJECT_NUMBER: il Google Cloud numero del progetto proprietario del cluster.