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:
- Cloud Service Mesh gestito
- Postura di sicurezza
- Config Sync
- Policy Controller
- Servizio di identità GKE
- 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 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
Nel progetto host del parco risorse, vai alla pagina 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.
Per la funzionalità scelta, fai clic su Configura e segui le istruzioni per attivare e configurare i valori predefiniti per la funzionalità.
(Facoltativo) Seleziona e sincronizza i cluster esistenti nel parco risorse con le nuove impostazioni.
gcloud
- Crea un file YAML che specifichi i valori predefiniti del parco risorse scelti per la funzionalità.
Esegui il comando
enable
per la funzionalità, passando il file di configurazione. Ogni funzionalità a livello di flotta ha il proprio comandoenable
. Ad esempio, per abilitare Cloud Service Mesh per il tuo parco risorse con la configurazione predefinita specificata inmesh.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:
- Cloud Service Mesh
- Config Sync
- Policy Controller
- Postura di sicurezza
- 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.
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:
Nel progetto host del parco risorse, vai alla pagina Gestore funzionalità:
Le funzionalità che possono essere attivate ma non configurate da questa pagina sono elencate nella sezione Gestisci altre funzionalità di livello enterprise.
Fai clic su Attiva nel riquadro della funzionalità che vuoi attivare.
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:
- Cloud Service Mesh
- Security posture:
- Config Sync
- Policy Controller
- Servizio di identità GKE
- 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 console Google Cloud .
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 .
Nel progetto host del parco risorse, vai alla pagina Gestore funzionalità:
Fai clic su Dettagli nel riquadro della funzionalità da disattivare.
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:
Apri Esplora log nella console Google Cloud .
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.