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 i nodi di bootstrap e 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 scopri le chiavi pubbliche per 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 a cui viene 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 di sola lettura al tuo cluster per diagnosticare i problemi. |
dl.google.com |
Scarica e installa Google Cloud SDK. |
gkeconnect.googleapis.com |
Stabilisci il canale utilizzato per ricevere richieste da Google Cloud e
risolvere i problemi. Se il cluster è stato registrato nel parco risorse utilizzando una
regione di Google Cloud, devi inserire nella lista consentita
REGION-gkeconnect.googleapis.com (ad esempio,
us-central1-gkeconnect.googleapis.com ). Se non hai specificato una
regione, il cluster utilizza l'istanza del servizio Connect globale e inserisci nella lista consentita
gkeconnect.googleapis.com . Se devi trovare la località dell'appartenenza del parco risorse per il cluster, esegui gcloud container fleet memberships list .
Per maggiori informazioni, vedi
gkeConnect.location .
|
gkehub.googleapis.com |
Crea risorse di iscrizione al fleet lato Google Cloud corrispondenti al cluster che stai connettendo a 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 da utilizzare per l'autenticazione in Google Cloud ed effettuare chiamate API. |
iamcredentials.googleapis.com |
Fornisce controllo di ammissione e reporting sulla telemetria per l'audit logging. |
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 |
Raccogli metadati per risorse Kubernetes come pod, deployment o nodi per arricchire le query delle metriche. |
releases.hashicorp.com |
Facoltativo. Utilizza il client Terraform sulla workstation di amministrazione per eseguire i comandi, 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 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 a qualsiasi pacchetto di eseguire il mirroring del gestore di pacchetti del sistema operativo. Puoi aggiornare la configurazione del gestore di pacchetti per 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 gestore di pacchetti DNF su Red Hat Enterprise Linux. Assicurati che la configurazione proxy del sistema di gestione di pacchetti del sistema operativo sia corretta.
Per maggiori 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 i dettagli specifici della tua configurazione. Ad esempio, se il proxy non richiede un accesso, non includere USERNAME:PASSWORD@
in 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 i dettagli specifici della tua configurazione. Ad esempio, se il proxy non richiede un accesso, non includere USERNAME:PASSWORD@
in DOMAIN
.
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 per l'utilizzo del proxy:
proxy.url
Una stringa che specifica l'URL del proxy. Il bootstrap e le macchine nodo usano
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 a questo elenco.
noProxy
casi d'uso:
Tramite un mirroring del pacchetto privato, che si trova nella stessa rete privata (non è necessario un proxy per l'accesso)
Utilizzo di un Mirror del registro privato, che si trova nella stessa rete privata (non è necessario un proxy per l'accesso)
Esempio
Di seguito è riportato un esempio delle impostazioni del proxy in un file di configurazione del cluster:
proxy:
url: http://USERNAME:PASSWORD@DOMAIN
noProxy:
- example1.com
- example2.com
Configurazioni proxy per GKE Identity Service
Se utilizzi GKE Identity Service per l'autenticazione nei cluster Google Distributed Cloud, sono necessari i seguenti passaggi aggiuntivi per garantire il funzionamento di GKE Identity Service quando si utilizza un proxy.
Nel file di configurazione del cluster, imposta i dettagli del proxy nella sezione
authentication
OIDC per le impostazioni del servizio di identità GKE.authentication: oidc: proxy: http://USERNAME:PASSWORD@DOMAIN
Aggiorna la configurazione del server proxy per consentire le connessioni agli URL di autenticazione del provider OIDC.
Come viene utilizzato il proxy all'interno del cluster
Come regola generale, i comandi bmctl
e i processi che generano utilizzano la configurazione del proxy definita dalle variabili di ambiente HTTPS_PROXY
e NO_PROXY
, if definite. In caso contrario, bmctl
utilizza la configurazione proxy del file di configurazione del cluster. Altri comandi eseguiti sulla workstation di amministrazione, sulle macchine con nodi cluster o dal cluster di bootstrap utilizzano la configurazione del proxy a partire dal file di configurazione del cluster.
Il gestore di pacchetti del sistema operativo su ciascun nodo utilizza 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 dalle macchine nodo eseguendo l'override delle 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 bootstrap:
export HTTPS_PROXY=http://USERNAME:PASSWORD@DOMAIN
Sostituisci USERNAME:PASSWORD@DOMAIN
con i dettagli specifici della 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
Se eseguito come root, bmctl
aggiorna la configurazione del proxy Docker sulla
macchina di 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 con i prerequisiti per Google Distributed Cloud, vedi Utilizzo delle porte.
Regole firewall per gli indirizzi IP dei nodi cluster
La seguente tabella descrive le regole firewall per gli indirizzi IP disponibili 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 la 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 in modo da utilizzare un registro Docker privato locale anziché gcr.io . |
Nodo cluster | 1024 - 65535 | 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 | Scaricare immagini dai registri Docker pubblici. Non è obbligatorio se utilizzi un registro 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 saperne di più 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 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 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 abilitati
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 abilitati
per i cluster di amministrazione o utente |
443 | TCP/HTTPS | Controlli preflight (convalida). |