Installazione tramite un proxy

Se le macchine che utilizzi per i nodi bootstrap e 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 Estrai le immagini da Container Registry.
accounts.google.com Elabora le richieste di autorizzazione per OpenID e scopri 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 Verificare la regione delle risorse Cloud Logging e Cloud Monitoring.
dl.fedoraproject.org Installa pacchetti extra per Enterprise Linux (EPEL) quando utilizzi le distribuzioni Red Hat Enterprise Linux (RHEL).
download.docker.com Aggiungi il repository Docker. Questa operazione è necessaria se esegui la workstation di amministrazione dietro il proxy. È obbligatorio per le macchine nodo che vengono eseguite dietro un proxy quando Docker viene utilizzato per il runtime del container.
gkeconnect.googleapis.com Definisci il canale utilizzato per ricevere richieste da Google Cloud e risponde ai problemi.
gkehub.googleapis.com Crea risorse di appartenenza al lato Google Cloud che corrispondono al cluster che stai connettendo a Google Cloud.
iam.googleapis.com Crea account di servizio, che puoi utilizzare per eseguire l'autenticazione in Google Cloud ed effettuare chiamate API.
iamcredentials.googleapis.com Fornisce rapporti di controllo di ammissione e di telemetria per l'audit logging.
logging.googleapis.com Scrivere voci di log e gestire la configurazione di Cloud Logging.
monitoring.googleapis.com Gestisci le tue configurazioni e i tuoi dati di Cloud Monitoring.
packages.cloud.google.com Scaricare pacchetti dal mirroring pacchetto di Google Cloud.
oauth2.googleapis.com Autentica tramite lo scambio di token OAuth per l'accesso all'account.
opsconfigmonitoring.googleapis.com Raccogli i metadati per le risorse Kubernetes come pod, deployment o nodi per arricchire le query metriche.
securetoken.googleapis.com Recupera i token di aggiornamento per l'autorizzazione di identità del carico di lavoro.
servicecontrol.googleapis.com Scrivere voci di log di controllo in Cloud Audit Logs.
serviceusage.googleapis.com Abilitare e convalidare servizi e API.
stackdriver.googleapis.com Gestire i metadati della suite operativa di Google Cloud, ad esempio gli account Stackdriver.
storage.googleapis.com Gestire l'archiviazione di oggetti e i bucket, come gli oggetti Container Registry.
sts.googleapis.com Scambia le credenziali di Google o di terze parti con un token di accesso di breve durata alle risorse Google Cloud
www.googleapis.com Autenticare i token di servizio dalle richieste di servizio Google Cloud in entrata.

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

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

I cluster Anthos su Bare Metal utilizzano il gestore di pacchetti APT su Ubuntu e il gestore di pacchetti DNF su CentOS e Red Hat Linux. Assicurati che il gestore di pacchetti del sistema operativo abbia la configurazione proxy 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 configurazione.

Non disturbare

Questo comando illustra 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 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 proxy. Le macchine dei nodi e del bootstrap utilizzano questo proxy per accedere a Internet.

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. Non aggiungere Service CIDR e CIDR dei pod.

Casi d'uso di proxy:

  • usando un mirroring pacchetto privato, situato nella stessa rete privata (per accedere non è necessario un proxy)

  • usando un mirroring del registro privato, che si trova nella stessa rete privata (non occorre un proxy per accedere)

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

Esegui l'override della configurazione proxy

Puoi eseguire la macchina di bootstrap su un proxy diverso da quello utilizzato dalle macchine nodo eseguendo l'override delle impostazioni del proxy nel file di configurazione del cluster. Per sostituire le 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 i dettagli specifici della 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 essere sottoposti a server proxy.

Effetti collaterali

Se eseguito come root, bmctl aggiorna la configurazione del proxy Docker sulla macchina 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 per i cluster Anthos su Bare Metal.

Per i requisiti della porta prerequisiti per i cluster Anthos su Bare Metal, consulta la pagina relativa all'utilizzo delle porte.

Regole firewall per gli indirizzi IP del nodo del cluster

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

Da

Porta di origine

To

Porta

Protocollo

Descrizione

Nodo cluster 1024 - 65535 cloudresourcemanager.googleapis.com
gkeconnect.googleapis.com
gkehub.googleapis.com
443 TCP/HTTPS È richiesto l'accesso per la registrazione dell'hub.
Cloud Logging Collector, eseguito sul nodo del 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, eseguito sul nodo del cluster 1024 - 65535 opsconfigmonitoring.googleapis.com 443 TCP/HTTPS
Cloud Monitoring Collector, eseguito sul nodo del 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 i cluster Anthos su Bare Metal sono configurati per 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 Google del modulo *.googleapis.com obbligatorio per i servizi abilitati per il cluster di amministrazione.
443 TCP/HTTPS Scarica immagini dai registri Docker pubblici. Non obbligatorio se utilizzi un registro Docker privato.
Collega l'agente in esecuzione su un nodo del 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 [Connetti il traffico](/anthos/multicluster-management/connect).

Regole firewall per i componenti rimanenti

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

Da

Porta di origine

To

Porta

Protocollo

Descrizione

Client e utenti finali dell'applicazione Tutti VIP di 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 Scarica le 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 di utenti
443 TCP/HTTPS Controlli preliminari (convalida).