Installazione tramite un proxy

Questa pagina mostra come configurare le regole del proxy e del firewall per Google Distributed Cloud.

Configura il server proxy

Se le macchine che utilizzi per il bootstrap e i nodi del 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 Eseguire il pull delle immagini da Container Registry.
accounts.google.com Elabora le richieste di autorizzazione per OpenID e rileva le chiavi pubbliche per e la verifica dei token.
binaryauthorization.googleapis.com Obbligatoria se si utilizza Autorizzazione binaria. Autorizza (o rifiuta) le richieste dai cluster per l'esecuzione delle immagini container.
cloudresourcemanager.googleapis.com Risolvi i metadati relativi al progetto Google Cloud su cui si trova il cluster è connesso.
compute.googleapis.com Verifica la regione delle risorse di Cloud Logging e Cloud Monitoring.
connectgateway.googleapis.com Attiva la possibilità di concedi all'assistenza clienti Google Cloud l'accesso di sola lettura al cluster per diagnosticare per risolvere problemi di produzione e facilità d'uso.
dl.google.com Scarica e installa Google Cloud SDK.
gkeconnect.googleapis.com Stabilire il canale utilizzato per ricevere richieste da Google Cloud e risolvere i problemi. Se il cluster è stato registrato nel parco risorse utilizzando una della regione Google Cloud, devi inserire nella lista consentita REGION-gkeconnect.googleapis.com (ad esempio us-central1-gkeconnect.googleapis.com). Se non hai specificato regione, il cluster utilizza l'istanza del servizio Connect globale e tu inserisci nella lista consentita gkeconnect.googleapis.com. Se devi trovare la località dell'abbonamento al parco risorse per il cluster, esegui gcloud container fleet memberships list. Per ulteriori informazioni, vedi gkeConnect.location.
gkehub.googleapis.com Creazione lato Google Cloud abbonamento al fleet che corrispondono al cluster con cui ti connetti in Google Cloud.
gkeonprem.googleapis.com Crea e gestisci il ciclo di vita del cluster su bare metal e VMware dell'infrastruttura.
gkeonprem.mtls.googleapis.com Crea e gestisci il ciclo di vita del cluster su bare metal e VMware dell'infrastruttura. Questa versione dell'API viene utilizzata automaticamente con mTLS.
iam.googleapis.com Crea account di servizio che puoi utilizzare per l'autenticazione Google Cloud ed effettuare chiamate API.
iamcredentials.googleapis.com Fornisce controllo di ammissione e reporting sulla telemetria per l'audit logging.
kubernetesmetadata.googleapis.com I cluster usano questa API come endpoint a cui inviare metadati Kubernetes in Google Cloud. I metadati sono vitali per il monitoraggio, il debug e il monitoraggio del cluster e il ripristino di emergenza.
logging.googleapis.com Scrivere voci di log e gestire 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 Raccogliere metadati per risorse Kubernetes come pod, deployment o nodi per arricchire le query sulle metriche.
releases.hashicorp.com Facoltativo. Utilizza il client Terraform sulla workstation di amministrazione per l'esecuzione come terraform apply.
securetoken.googleapis.com Recupera i token di aggiornamento per l'autorizzazione delle identità per i carichi di lavoro.
servicecontrol.googleapis.com Scrivere voci di audit log in Cloud Audit Logs.
serviceusage.googleapis.com Abilita e convalida servizi e API.
stackdriver.googleapis.com Gestisci i metadati di Google Cloud Observability, come gli account Stackdriver.
storage.googleapis.com Gestire l'archiviazione di oggetti e i bucket, ad esempio gli oggetti Container Registry.
sts.googleapis.com Scambiare credenziali Google o di terze parti con un token di accesso di breve durata per dell'accesso a specifiche risorse Google Cloud.
www.googleapis.com Autentica i token di servizio dal servizio Google Cloud in entrata richieste.

Oltre a questi URL, il server proxy deve consentire anche i mirroring dei pacchetti richiesto dal gestore di pacchetti del tuo sistema operativo. Puoi aggiornare il pacchetto alla configurazione del gestore di telefonia mobile di utilizzare un elenco più deterministico, più facile da gestire.

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

Google Distributed Cloud utilizza il gestore di pacchetti APT su Ubuntu e il pacchetto DNF su Red Hat Enterprise Linux. Assicurati che il gestore di pacchetti del sistema operativo abbia configurazione del proxy corretta.

Fai riferimento alla documentazione della distribuzione del tuo sistema operativo per maggiori dettagli sulla configurazione proxy. 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 del tuo configurazione. Ad esempio, se il proxy non richiede l'accesso, non includi USERNAME:PASSWORD@ con DOMAIN.

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 del tuo configurazione. Ad esempio, se il proxy non richiede l'accesso, non includi USERNAME:PASSWORD@ con DOMAIN.

Configura i dettagli del proxy nel file di configurazione del cluster

Nel file di configurazione del cluster, imposta i valori seguenti per configurare per utilizzare il proxy:

proxy.url

Una stringa che specifica l'URL del proxy. Le macchine bootstrap e nodo utilizzano questo un 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 essere superati il server proxy.

Nella maggior parte dei casi, non è necessario aggiungere voci a questo elenco.

noProxy casi d'uso:

  • Uso di un Mirroring pacchetto privato, che si trova nella stessa rete privata (Non è necessario un proxy per accedere)

  • Utilizzo di un mirror privato del registro, situato nella stessa rete privata (Non è necessario un proxy per accedere)

Esempio

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

  proxy:
     url: http://USERNAME:PASSWORD@DOMAIN
     noProxy:
     - example1.com
     - example2.com

Configurazioni proxy per GKE Identity Service

Se utilizzi il servizio di identità GKE per l'autenticazione in Google Distributed Cloud di cluster, sono necessari i seguenti passaggi aggiuntivi per GKE Identity Service funziona quando si utilizza un proxy.

  1. Nel file di configurazione del cluster, imposta i dettagli del proxy nel file OIDC Sezione authentication per le impostazioni del servizio di identità GKE.

      authentication:
        oidc:
          proxy: http://USERNAME:PASSWORD@DOMAIN
    
  2. Aggiorna la configurazione del server proxy per consentire le connessioni a OIDC URL di autenticazione del provider.

Come viene utilizzato il proxy all'interno del cluster

Come regola generale, i comandi bmctl e i processi che generano utilizzano il proxy definita dalle variabili di ambiente HTTPS_PROXY e NO_PROXY, se definiti. In caso contrario, bmctl utilizza la configurazione proxy del di configurazione del cluster. Altri comandi eseguiti sull'amministratore della workstation, sulle macchine con nodi cluster o tramite il cluster di bootstrap, configurazione dal file di configurazione del cluster.

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

Esegui l'override della configurazione del proxy nella macchina di bootstrap

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

export HTTPS_PROXY=http://USERNAME:PASSWORD@DOMAIN

Sostituisci USERNAME:PASSWORD@DOMAIN con dettagli specifici del tuo 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

Se eseguito come root, bmctl aggiorna la configurazione del proxy Docker nell' bootstrap. Se non esegui bmctl come root, configura il proxy Docker manualmente.

Regole firewall

Configura le regole firewall come descritto nelle sezioni seguenti per consentire il traffico descritto necessario per Google Distributed Cloud.

Per i requisiti delle porte dei prerequisiti per Google Distributed Cloud, vedi Utilizzo delle porte.

Regole firewall per gli indirizzi IP dei nodi cluster

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

Da

Porta di origine

A

Porta

Protocollo

Descrizione

Nodo cluster 1024 - 65535 cloudresourcemanager.googleapis.com
gkeconnect.googleapis.com
gkehub.googleapis.com
443 TCP/HTTPS L'accesso è richiesto per registrazione del parco risorse.
Collettore Cloud Logging, che viene eseguito sul nodo cluster 1024 - 65535 oauth2.googleapis.com
logging.googleapis.com
stackdriver.googleapis.com
servicecontrol.googleapis.com
storage.googleapis.com
www.googleapis.com
443 TCP/HTTPS
Cloud Metadata Collector, che viene eseguito sul nodo cluster 1024 - 65535 opsconfigmonitoring.googleapis.com 443 TCP/HTTPS
Collettore di Cloud Monitoring, che viene eseguito sul nodo cluster 1024 - 65535 oauth2.googleapis.com
monitoring.googleapis.com
stackdriver.googleapis.com
servicecontrol.googleapis.com
443 TCP/HTTPS
Nodo cluster 1024 - 65535 Registro Docker locale on-premise Dipende dal registro TCP/HTTPS Obbligatorio se Google Distributed Cloud è configurato per utilizzare un server privato locale Docker anziché gcr.io.
Nodo cluster 1024 - 65535 gcr.io
oauth2.googleapis.com
storage.googleapis.com
Qualsiasi URL dell'API di Google del modulo *.googleapis.com richiesto per la abilitati per il cluster di amministrazione.
443 TCP/HTTPS Scaricare immagini dai registri Docker pubblici. Non è obbligatorio se utilizzi un Docker privato.
Agente Connect, che viene eseguito su un nodo cluster 1024 - 65535 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 ulteriori informazioni sul traffico gestito da Connect Agent, consulta la panoramica di Connect Agent.
Nodo cluster 1024 - 65535 gkeonprem.googleapis.com
gkeonprem.mtls.googleapis.com
443 TCP/HTTPS Crea e gestisci il ciclo di vita del cluster su bare metal e VMware dell'infrastruttura.

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 Istio in entrata 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 attivati per questo cluster
443 TCP/HTTPS Scaricare 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 attivati per i cluster di amministrazione o utente
443 TCP/HTTPS Controlli preflight (convalida).