Questa pagina mostra come configurare le regole proxy e firewall per i cluster Anthos su Bare Metal.
Configura il server proxy
Se le macchine che utilizzi per 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 | Purpose |
---|---|
*.gcr.io |
Esegui 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. |
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 di Red Hat Enterprise Linux (RHEL). |
download.docker.com |
Aggiungi repository Docker. Questo campo è obbligatorio se esegui la workstation di amministrazione dietro un proxy. È richiesto per le macchine nodo che vengono eseguite dietro un proxy quando Docker viene utilizzato per il runtime dei container. |
gkeconnect.googleapis.com |
Definisci il canale utilizzato per ricevere le richieste da Google Cloud e invia una risposta ai problemi. |
gkehub.googleapis.com |
Crea risorse di appartenenza al parco risorse lato Google Cloud che corrispondano al cluster che stai connettendo a Google Cloud. |
iam.googleapis.com |
Crea account di servizio, che puoi utilizzare per autenticarti in Google Cloud ed effettuare chiamate API. |
iamcredentials.googleapis.com |
Fornisce il controllo di ammissione e i report di telemetria per l'audit logging. |
logging.googleapis.com |
Scrivi voci di log e gestisci la configurazione di Cloud Logging. |
monitoring.googleapis.com |
Gestire i tuoi dati e le tue configurazioni di Cloud Monitoring. |
packages.cloud.google.com |
Scaricare pacchetti dal mirror dei pacchetti di Google Cloud. |
oauth2.googleapis.com |
Eseguire l'autenticazione 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 sulle metriche. |
securetoken.googleapis.com |
Recupera i token di aggiornamento per l'autorizzazione di Workload Identity. |
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, come gli account Stackdriver. |
storage.googleapis.com |
Gestire l'archiviazione e i bucket di oggetti, 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 |
Autentica i token di servizio dalle richieste di servizio Google Cloud in entrata. |
Oltre a questi URL, il server proxy deve anche consentire qualsiasi mirroring dei pacchetti richiesto dal gestore di pacchetti del tuo 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
Anthos clusters on bare metal utilizza 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 corretta del proxy.
Per informazioni dettagliate sulla configurazione del proxy, consulta la documentazione della distribuzione del tuo sistema operativo. I seguenti esempi mostrano un modo per configurare le impostazioni 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 del proxy. Le macchine nodo e bootstrap utilizzano questo proxy per accedere a Internet. La stringa dell'URL del proxy deve iniziare con lo 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 articoli a questo elenco.
noProxy
casi d'uso:
Utilizzo di un mirroring pacchetto privato, che si trova nella stessa rete privata (Non è necessario un proxy per l'accesso)
Utilizzo di un mirror del Registro di sistema 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
Come viene utilizzato il 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
, se sono definite. In caso contrario, bmctl
utilizza la configurazione proxy del file di configurazione del cluster. Altri comandi che vengono eseguiti sulla workstation di amministrazione, sulle macchine dei nodi del cluster o sul cluster di bootstrap utilizzano la configurazione proxy del file di configurazione del cluster.
Il gestore di pacchetti del sistema operativo su ciascun nodo utilizza i propri file di configurazione per le impostazioni proxy.
Esegui l'override della configurazione proxy
Puoi eseguire la workstation di amministrazione dietro un proxy diverso da quello utilizzato dalle macchine dei nodi 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 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 avvio. 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 i cluster Anthos su Bare Metal.
Per i requisiti della porta per i prerequisiti per Anthos clusters on bare metal, consulta Utilizzo delle porte.
Regole firewall per gli indirizzi IP dei nodi del cluster
La tabella seguente descrive le regole del 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 | L'accesso è obbligatorio per la registrazione del parco risorse. |
Raccoglitore Cloud Logging, 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 | |
Raccoglitore metadati Cloud, eseguito sul nodo cluster | 1024 - 65535 | opsconfigmonitoring.googleapis.com |
443 | TCP/HTTPS | |
raccoglitore Cloud Monitoring, 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 i cluster Anthos su Bare Metal sono configurati per l'utilizzo di un registro Docker privato locale anziché di gcr.io . |
Nodo cluster | 1024 - 65535 | gcr.io oauth2.googleapis.com storage.googleapis.com Qualsiasi URL dell'API Google del modulo *.googleapis.com richiesto per i servizi abilitati per il cluster di amministrazione. |
443 | TCP/HTTPS | Scarica immagini dai registri Docker pubblici. Non è necessario se utilizzi un registro Docker privato. |
Connetti agente in esecuzione 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, vedi Panoramica dell'agente 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 | Tutte | VIP di Istio in entrata | 80, 443 | TCP | Traffico utente finale verso il servizio in entrata di un cluster utente. |
Workstation di amministrazione | 32.768-60999 | gcr.io cloudresourcemanager.googleapis.com oauth2.googleapis.com storage.googleapis.com Qualsiasi URL di *.googleapis.com richiesto per i servizi abilitati
per questo cluster |
443 | TCP/HTTPS | Scarica immagini Docker da registri Docker pubblici. |
Workstation di amministrazione | 32.768-60999 | gcr.io cloudresourcemanager.googleapis.com iam.googleapis.com oauth2.googleapis.com serviceusage.googleapis.com storage.googleapis.com Qualsiasi URL richiesto per i servizi abilitati per l'amministratore o i cluster utente *.googleapis.com |
443 | TCP/HTTPS | Controlli preflight (convalida). |