Installazione tramite un proxy

Questa pagina mostra come configurare le regole proxy e firewall per GDCV per Bare Metal.

Configura il server proxy

Se le macchine che utilizzi per il bootstrap e i nodi cluster utilizzano un server proxy per accedere a internet, devi:

  • Configura il proxy per il gestore di pacchetti sui nodi del cluster
  • Configura i dettagli del proxy nel file di configurazione del cluster.

Prerequisiti

Il server proxy deve consentire le connessioni ai seguenti indirizzi:

Indirizzo Finalità
*.gcr.io Esegui il pull delle immagini da Container Registry.
accounts.google.com Elabora le richieste di autorizzazione per OpenID e individua le chiavi pubbliche per la verifica dei token.
cloudresourcemanager.googleapis.com Risolvi i metadati relativi al progetto Google Cloud a cui è connesso il cluster.
compute.googleapis.com Verifica la regione delle risorse di Cloud Logging e Cloud Monitoring.
connectgateway.googleapis.com Abilita la possibilità di concedere all'assistenza clienti Google Cloud l'accesso in sola lettura al tuo cluster per diagnosticare i problemi.
gkeconnect.googleapis.com Stabilisci il canale utilizzato per ricevere le richieste da Google Cloud e genera risposte.
gkehub.googleapis.com Crea risorse di appartenenza del parco risorse lato Google Cloud corrispondenti al cluster che stai connettendo con Google Cloud.
gkeonprem.googleapis.com Crea e gestisci il ciclo di vita del cluster su infrastruttura Bare Metal e VMware.
gkeonprem.mtls.googleapis.com Crea e gestisci il ciclo di vita del cluster su infrastruttura Bare Metal e VMware. Questa versione dell'API viene utilizzata automaticamente con mTLS.
iam.googleapis.com Crea account di servizio che puoi utilizzare per l'autenticazione in Google Cloud ed effettuare chiamate API.
iamcredentials.googleapis.com Fornisce controllo di ammissione e report sulla telemetria per l'audit logging.
logging.googleapis.com Scrivi le voci di log e gestisci la configurazione di Cloud Logging.
monitoring.googleapis.com Gestire i dati e le configurazioni di Cloud Monitoring.
oauth2.googleapis.com Esegui l'autenticazione tramite lo scambio di token OAuth per l'accesso all'account.
opsconfigmonitoring.googleapis.com Raccogli metadati per risorse Kubernetes come pod, deployment o nodi per arricchire le query sulle metriche.
securetoken.googleapis.com Recupera i token di aggiornamento per l'autorizzazione di Workload Identity.
servicecontrol.googleapis.com Scrittura delle voci degli audit log in Cloud Audit Logs.
serviceusage.googleapis.com Abilitare e convalidare servizi e API.
stackdriver.googleapis.com Gestisci i metadati di Google Cloud Observability, come gli account Stackdriver.
storage.googleapis.com Gestisci l'archiviazione e i bucket di oggetti, ad esempio gli oggetti di Container Registry.
sts.googleapis.com Scambia credenziali Google o di terze parti per un token di accesso di breve durata alle risorse Google Cloud.
www.googleapis.com Autentica i token di servizio dalle richieste di servizio Google Cloud in entrata.

Oltre a questi URL, il server proxy deve consentire anche i mirroring di qualsiasi pacchetto richiesto dal gestore di pacchetti del sistema operativo. Puoi aggiornare la configurazione del gestore di pacchetti per utilizzare un elenco più deterministico, che è più facile da gestire.

Configura il proxy per il gestore di pacchetti sui nodi del cluster

GDCV per Bare Metal utilizza il gestore di pacchetti APT su Ubuntu e il gestore di pacchetti DNF su CentOS e Red Hat Linux. Accertati che il gestore di pacchetti del sistema operativo abbia la configurazione proxy corretta.

Per i dettagli sulla configurazione del proxy, consulta la documentazione della distribuzione del sistema operativo. I seguenti esempi mostrano un modo per configurare le impostazioni del proxy:

APT

Questi comandi mostrano come configurare il proxy per APT:

sudo touch /etc/apt/apt.conf.d/proxy.conf
echo 'Acquire::http::Proxy "http://[username:password@]domain";' \
    >> /etc/apt/apt.conf.d/proxy.conf
echo 'Acquire::https::Proxy "http://[username:password@]domain";' \
    >> /etc/apt/apt.conf.d/proxy.conf

Sostituisci [username:password@]domain con dettagli specifici per la tua configurazione.

DNF

Questo comando mostra come configurare il proxy per DNF:

echo "proxy=http://[username:password@]domain" >> /etc/dnf/dnf.conf

Sostituisci [username:password@]domain con dettagli specifici per la tua configurazione.

Configura i dettagli del proxy nel file di configurazione del cluster

Nel file di configurazione del cluster, imposta i valori seguenti per configurare il cluster in modo che utilizzi il proxy:

proxy.url

Una stringa che specifica l'URL del proxy. Le macchine di bootstrap e nodo utilizzano questo proxy per accedere a internet. La stringa dell'URL del proxy deve iniziare con il relativo schema, ad esempio "http://" o "https://".

proxy.noProxy

Un elenco di indirizzi IP, nomi host e nomi di dominio che non devono passare attraverso il server proxy.

Nella maggior parte dei casi, non è necessario aggiungere voci all'elenco.

noProxy casi d'uso:

  • Utilizzo di un mirroring del pacchetto privato, che si trova nella stessa rete privata (non è necessario un proxy per l'accesso)

  • Utilizzando un mirroring del registro privato, che si trova nella stessa rete privata (non è necessario un proxy per l'accesso)

Esempio

Di seguito è riportato un esempio di impostazioni proxy in un file di configurazione del cluster:

  proxy:
     url: http://[username:password@]domain
     noProxy:
     - example1.com
     - example2.com

Modalità di utilizzo del proxy all'interno del cluster

Come regola generale, i comandi bmctl e i processi che generano utilizzano la configurazione proxy definita dalle variabili di ambiente HTTPS_PROXY e NO_PROXY, if sono definiti. In caso contrario, bmctl utilizza la configurazione proxy del file di configurazione del cluster. Altri comandi eseguiti sulla workstation di amministrazione, sulle macchine nodo cluster o dal cluster di bootstrap utilizzano la configurazione proxy proveniente dal file di configurazione del cluster.

Il gestore di pacchetti del sistema operativo su ciascun nodo utilizza i propri file di configurazione per le impostazioni del proxy.

Esegui l'override della configurazione proxy nella macchina di bootstrap

Puoi eseguire la workstation di amministrazione su un proxy diverso da quello utilizzato dalle macchine nodo sovrascrivendo le impostazioni del proxy nel file di configurazione del cluster. Per eseguire l'override delle impostazioni del proxy, imposta le seguenti variabili di ambiente sulla macchina di bootstrap:

export HTTPS_PROXY=http://[username:password@]domain

Sostituisci [username:password@]domain con dettagli specifici per la tua configurazione.

export NO_PROXY=example1.com,example2.com

Sostituisci example1.com,example2.com con indirizzi IP, nomi host e nomi di dominio che non devono passare attraverso il server proxy.

Effetti collaterali

Quando viene eseguito come root, bmctl aggiorna la configurazione del proxy Docker sulla macchina di bootstrap. Se non esegui bmctl come root, configura manualmente il proxy Docker.

Regole del firewall

Configura le regole firewall come descritto nelle sezioni seguenti per consentire il traffico descritto necessario per GDCV per Bare Metal.

Per i requisiti delle porte prerequisiti per GKE su Bare Metal, consulta Utilizzo delle porte.

Regole firewall per gli indirizzi IP dei nodi cluster

La tabella seguente descrive le regole firewall per gli indirizzi IP disponibili nei tuoi cluster.

Da

Porta di origine

A

Porta

Protocollo

Descrizione

Nodo cluster 06 - 65.535 cloudresourcemanager.googleapis.com
gkeconnect.googleapis.com
gkehub.googleapis.com
443 TCP/HTTPS È richiesto l'accesso per la registrazione del parco risorse.
Il raccoglitore Cloud Logging, eseguito sul nodo cluster 06 - 65.535 oauth2.googleapis.com
logging.googleapis.com
stackdriver.googleapis.com
servicecontrol.googleapis.com
storage.googleapis.com
www.googleapis.com
443 TCP/HTTPS
Cloud Metadata Collector, in esecuzione sul nodo del cluster 06 - 65.535 opsconfigmonitoring.googleapis.com 443 TCP/HTTPS
Il raccoglitore Cloud Monitoring, in esecuzione sul nodo cluster 06 - 65.535 oauth2.googleapis.com
monitoring.googleapis.com
stackdriver.googleapis.com
servicecontrol.googleapis.com
443 TCP/HTTPS
Nodo cluster 06 - 65.535 Registro Docker locale on-premise Dipende dal registro TCP/HTTPS Obbligatorio se GKE su Bare Metal è configurato per utilizzare un registro Docker privato locale anziché gcr.io.
Nodo cluster 06 - 65.535 gcr.io
oauth2.googleapis.com
storage.googleapis.com
Qualsiasi URL dell'API di Google nel formato *.googleapis.com richiesto per i servizi abilitati per il cluster di amministrazione.
443 TCP/HTTPS Scarica immagini dai registry Docker pubblici. Non è necessaria se utilizzi un registro Docker privato.
Agente Connect, che viene eseguito su un nodo cluster 06 - 65.535 cloudresourcemanager.googleapis.com
gkeconnect.googleapis.com
gkehub.googleapis.com
www.googleapis.com
iam.googleapis.com
iamcredentials.googleapis.com
oauth2.googleapis.com
securetoken.googleapis.com
sts.googleapis.com
accounts.google.com
443 TCP/HTTPS Per saperne di più sul traffico gestito da Connect Agent, consulta la panoramica dell'agente Connect.
Nodo cluster 06 - 65.535 gkeonprem.googleapis.com
gkeonprem.mtls.googleapis.com
443 TCP/HTTPS Crea e gestisci il ciclo di vita del cluster sull'infrastruttura bare metal e VMware.

Regole firewall per i componenti rimanenti

Le regole descritte nella seguente tabella si applicano a tutti gli altri componenti non elencati nella sezione precedente.

Da

Porta di origine

A

Porta

Protocollo

Descrizione

Client e utenti finali delle applicazioni Tutti VIP del traffico in entrata Istio 80, 443 TCP Traffico degli utenti finali verso il servizio in entrata di un cluster utente.
Workstation di amministrazione 32.768 - 60.999 gcr.io
cloudresourcemanager.googleapis.com
oauth2.googleapis.com
storage.googleapis.com
Qualsiasi URL *.googleapis.com richiesto per i servizi abilitati per questo cluster
443 TCP/HTTPS Scarica immagini Docker dai registri Docker pubblici.
Workstation di amministrazione 32.768 - 60.999 gcr.io
cloudresourcemanager.googleapis.com
iam.googleapis.com
oauth2.googleapis.com
serviceusage.googleapis.com
storage.googleapis.com
Qualsiasi URL *.googleapis.com richiesto per i servizi abilitati per i cluster di amministrazione o utente
443 TCP/HTTPS Controlli preflight (convalida).