Preparazione di un ambiente con limitazioni Internet

È possibile distribuire cluster di gestione e cluster del carico di lavoro di Tanzu Kubernetes Grid in ambienti che non sono connessi a Internet, ad esempio:

  • Ambienti con proxy
  • ambienti con air gap senza connessione fisica a Internet

Questo argomento spiega come distribuire cluster di gestione in ambienti con limitazioni Internet in vSphere o AWS. Non è necessario seguire queste procedure se si utilizza Tanzu Kubernetes Grid in un ambiente connesso in cui è possibile eseguire il pull delle immagini tramite una connessione Internet esterna.

Nota

Questo documento illustra i passaggi generici per distribuire i cluster di gestione e del carico di lavoro di Tanzu Kubernetes Grid in ambienti con air gap. Per distribuire i cluster di gestione e del carico di lavoro in una configurazione specifica e convalidata in ambienti con air gap, vedere Progettazione e distribuzione di riferimento di VMware Tanzu Kubernetes Grid 2.3 con air gap. La progettazione di riferimento di TKG v2.3 è applicabile a TKG v2.3 e v2.4.

Per eseguire questa procedura, è possibile utilizzare una singola macchina o macchine diverse come macchine di bootstrap negli ambienti online e offline.

(Facoltativo) Scarica il file OVA di Harbor

Se si desidera installare il registro Harbor, scaricare il file OVA di Harbor:

  1. Passare a VMware Customer Connect e accedere con le credenziali di VMware Customer Connect.
  2. Passare alla pagina di download di Tanzu Kubernetes Grid.
  3. Nella riga VMware Tanzu Kubernetes Grid fare clic su Vai ai download (Go to Downloads).
  4. Nel menu a discesa Seleziona versione (Select Version), selezionare 2.4.0.
  5. In Download dei prodotti (Product Downloads) scorrere fino alla sezione denominata OVA Harbor e fare clic su Scarica ora (Download Now).
  6. (Facoltativo) Verificare che i file scaricati siano uguali a quelli originali. VMware fornisce un checksum SHA-1, un checksum SHA-256 e un checksum MD5 per ogni download. Per ottenere questi checksum, fare clic su Altre informazioni (Read More) sotto la voce che si desidera scaricare. Per ulteriori informazioni, vedere Utilizzo di hash crittografici.

Prerequisiti generali

Per poter distribuire cluster di gestione e cluster del carico di lavoro in un ambiente con limitazioni Internet, è necessario disporre di:

  • Una macchina di bootstrap Linux connessa a Internet che:
  • Un modo per consentire alle macchine virtuali del cluster di accedere alle immagini nel registro privato:
    • Ambienti con proxy: un server proxy in uscita che consente alle macchine virtuali del cluster di accedere al registro.
      • Quando si distribuisce un cluster di gestione in questo ambiente con proxy, impostare le variabili TKG_*_PROXY nel file di configurazione del cluster sull'indirizzo del server proxy e impostare TKG_PROXY_CA_CERT sull'autorità di certificazione del server proxy se il suo certificato è autofirmato. Vedere Configurazione dei proxy.
    • Ambienti con air gap: Un'unità thumb USB o un altro supporto per portare il registro privato dietro un air gap, dopo che il registro è stato popolato con immagini.
  • Un'unità thumb USB o un altro dispositivo di storage offline portatile.

Nota

VMware non supporta i cluster del carico di lavoro TKG con nodi di lavoro di Windows in ambienti con proxy o air gap.

Architettura e prerequisiti di vSphere

Questo documento illustra i passaggi generici per distribuire i cluster di gestione e del carico di lavoro di Tanzu Kubernetes Grid nella rete vSphere in ambienti con air gap. Per distribuire i cluster in una configurazione specifica e convalidata nella rete vSphere in un ambiente con air gap, vedere Progettazione di riferimento di VMware Tanzu Kubernetes Grid in vSphere con air gap e Distribuzione di Tanzu Kubernetes Grid nella rete vSphere in un ambiente con air gap nel documento Progettazione e distribuzione di riferimento di VMware Tanzu Kubernetes Grid 2.3 con air gap. La progettazione di riferimento di TKG v2.3 è applicabile a TKG v2.3 e v2.4.

Architettura di vSphere

Un'installazione di Tanzu Kubernetes Grid con limitazioni Internet in vSphere include firewall e comunicazione tra i componenti principali, come illustrato di seguito.

Nota

Il diagramma seguente descrive lo scenario in cui vengono utilizzate diverse macchine di bootstrap negli ambienti online e offline.

Diagramma: TKG con air gap in vSphere

In vSphere, oltre ai prerequisiti generali precedenti, è necessario:

  • Caricare in vSphere i file OVA da cui vengono create le macchine virtuali dei nodi. Vedere Importazione del modello di immagine di base in vSphere in Distribuzione dei cluster di gestione in vSphere.

    Dopo aver creato la macchina virtuale, se non è possibile accedere con il nome utente e la password predefiniti, reimpostare la password utilizzando Gnu GRUB, come descritto in Reimpostazione di una password root persa se si tratta di Photon OS.

  • Accedere alla jumpbox come root e abilitare l'accesso SSH remoto come indicato di seguito:

    1. Aprire il file /etc/ssh/sshd_config in un editor. nano /etc/ssh/sshd_config
    2. Aggiungere una riga nella sezione Authentication del file che indichi PermitRootLogin yes. In questo caso la riga esiste già. Rimuovere "#".
    3. Salvare il file /etc/ssh/sshd_config aggiornato.
    4. Riavviare il server SSH utilizzando service sshd restart
  • Installare e configurare un registro del container privato compatibile con Docker come Harbor, Docker o Artifactory come indicato di seguito. Questo registro viene eseguito all'esterno di Tanzu Kubernetes Grid ed è separato da qualsiasi registro distribuito come servizio condiviso per i cluster:

    • Installare il registro all'interno del firewall.
    • È possibile configurare il registro del container con certificati SSL firmati da un'autorità di certificazione attendibile o con certificati autofirmati.
    • Il registro non deve implementare l'autenticazione utente. Ad esempio, se si utilizza un registro Harbor, il progetto deve essere pubblico e non privato.
    • Per installare Harbor In vSphere:
  • Configurare una subnet offline da utilizzare come ambiente con limitazioni Internet e associarla alla jumpbox.

  • Configurare il server DHCP per allocare gli IP privati alla nuova istanza.

  • Creare un vSphere Distributed Switch in un data center per gestire la configurazione di rete di più host contemporaneamente da una posizione centrale.

Architettura e prerequisiti di AWS

Questo documento illustra i passaggi generici per distribuire i cluster di gestione e del carico di lavoro di Tanzu Kubernetes Grid in AWS in un ambiente air gap. Per distribuire i cluster in una configurazione specifica e convalidata in AWS in un ambiente con air gap, vedere Progettazione di riferimento di VMware Tanzu Kubernetes Grid on AWS con air gap e Distribuzione di Tanzu Kubernetes Grid on AWS in un ambiente con air gap nel documento Progettazione e distribuzione di riferimento di VMware Tanzu Kubernetes Grid 2.3 con air gap. La progettazione di riferimento di TKG v2.3 è applicabile a TKG v2.3 e v2.4.

Architettura di AWS

Un'installazione di Tanzu Kubernetes Grid con proxy in Amazon Web Services (AWS) include firewall e comunicazione tra i componenti principali, come illustrato di seguito. Tra il piano di controllo e i domini del carico di lavoro e tra i componenti del carico di lavoro e i componenti del piano di controllo vengono automaticamente creati gruppi di sicurezza.

Diagramma: TKG con air gap in AWS

Per un'installazione con proxy in AWS, oltre ai prerequisiti generali precedenti, sono necessari anche:

  • Un VPC AWS senza gateway Internet ("VPC offline") configurato come descritto di seguito.
    • La macchina di bootstrap connessa a Internet deve poter accedere agli indirizzi IP all'interno di questo VPC offline. Per ulteriori informazioni, vedere Peering VPC.
  • Un registro del container privato compatibile con Docker come Harbor, Docker o Artifactory installato e configurato come indicato di seguito. Questo registro viene eseguito all'esterno di Tanzu Kubernetes Grid ed è separato da qualsiasi registro distribuito come servizio condiviso per i cluster:
    • Installare il registro all'interno del firewall.
    • È possibile configurare il registro del container con certificati SSL firmati da un'autorità di certificazione attendibile o con certificati autofirmati.
    • Il registro non deve implementare l'autenticazione utente. Ad esempio, se si utilizza un registro Harbor, il progetto deve essere pubblico e non privato.
    • Per installare Harbor:
      1. Download di file OVA Harbor.
      2. Seguire le istruzioni per l'installazione e la configurazione di Harbor nella documentazione di Harbor.
  • Una macchina virtuale di bootstrap Linux in esecuzione nel VPC offline, con provisioning simile a quello della macchina connessa a Internet indicata in precedenza.
    • La macchina virtuale di bootstrap offline deve poter raggiungere direttamente, senza un proxy, le macchine virtuali del cluster create da Tanzu Kubernetes Grid.

Dopo aver creato il VPC offline, è necessario aggiungervi gli endpoint seguenti (un endpoint del VPC abilita le connessioni private tra il VPC e i servizi AWS supportati):

  • Endpoint del servizio:
    • sts
    • ssm
    • ec2
    • ec2messages
    • elasticloadbalancing
    • secretsmanager
    • ssmmessages

Per aggiungere gli endpoint del servizio al VPC:

  1. Nella console di AWS, passare a Dashboard VPC (VPC Dashboard) > Endpoint (Endpoints).
  2. Per ciascuno dei servizi precedenti
    1. Fare clic su Crea endpoint (Create Endpoint).
    2. Cercare il servizio e selezionarlo in Nome servizio (Service Name).
    3. Selezionare VPC e le relative Subnet (Subnets).
    4. Fare clic su Abilita nome DNS (Enable DNS Name) per l'endpoint.
    5. Selezionare un Gruppo di sicurezza (Security group) che consenta alle macchine virtuali nel VPC di accedere all'endpoint.
    6. Selezionare Criterio (Policy) > Accesso completo (Full Access).
    7. Fare clic su Crea endpoint (Create endpoint).

Preparazione di un ambiente con limitazioni Internet

Per preparare un ambiente con limitazioni Internet per la distribuzione di Tanzu Kubernetes Grid, è possibile scegliere una delle seguenti opzioni:

  • Un'unica macchina di bootstrap per gli ambienti online e offline.

  • Macchine di bootstrap diverse per gli ambienti online e offline.

In base all'opzione selezionata, eseguire i passaggi descritti nella tabella seguente:

Macchina di bootstrap singola Macchine di bootstrap diverse
Passaggio 1: Installare i plug-in Isolated Cluster nella macchina online

Passaggio 2: Download delle immagini TKG nella macchina online

Passaggio 3: Download dell'immagine binaria della CLI di Tanzu per Linux nella macchina online No

Passaggio 4: Download del bundle di plug-in della CLI nella macchina online No

Passaggio 5: Copiare i file nella macchina offline No

Passaggio 6: Decomprimere i file nella macchina offline No

Passaggio 7: Accedere al registro privato nella macchina offline

Passaggio 8: Installare la CLI di Tanzu nella macchina offline No


Passaggio 9: Installare il bundle di plug-in della CLI nella macchina offline

Passaggio 10: Caricare le immagini TKG nel registro privato

Passaggio 1: Installare il plug-in Isolated Cluster nella macchina online

Per installare il plug-in isolated-cluster:

  1. Installare il plug-in isolated-cluster seguendo la procedura descritta per l'installazione di un singolo plug-in in Installazione dei plug-in della CLI di Tanzu nella documentazione della CLI di VMware Tanzu.

  2. Assicurarsi che il numero di versione del plug-in isolated-cluster sia compatibile con il numero di versione della CLI di Tanzu principale:

    1. Eseguire tanzu plugin list per visualizzare il numero di versione dei plug-in della CLI di Tanzu.

    2. Fare riferimento a Versioni dei plug-in di TKG e della CLI di Tanzu in Informazioni su Tanzu Kubernetes Grid per verificare che la versione del plug-in isolated-cluster sia compatibile con TKG v2.4.

      • La versione della CLI di Tanzu principale elencata eseguendo tanzu version deve corrispondere alla versione della CLI di Tanzu per TKG v2.4, come indicato in Snapshot del prodotto nelle note di rilascio di TKG.
    3. Se la versione del plug-in isolated-cluster non corrisponde alla versione di TKG, aggiornare TKG come descritto in Aggiornamento di Tanzu Kubernetes Grid.

Passaggio 2: Download delle immagini TKG nella macchina online

Importante

prima di eseguire questo passaggio, verificare che nella partizione del disco in cui si scaricano le immagini siano disponibili 45 GB di spazio.

Scaricare il bundle di immagini nella macchina di bootstrap Linux connessa a Internet:

tanzu isolated-cluster download-bundle --source-repo <SOURCE-REGISTRY> --tkg-version <TKG-VERSION> --ca-certificate <SECURITY-CERTIFICATE>

In cui:

  • SOURCE-REGISTRY è l'indirizzo IP o il nome host del registro in cui sono archiviate le immagini.
  • TKG-VERSION è la versione di Tanzu Kubernetes Grid che si desidera distribuire nell'ambiente con proxy o air gap.
  • SECURITY-CERTIFICATE è il certificato di sicurezza del registro in cui sono archiviate le immagini. Per ignorare la convalida del certificato di sicurezza, utilizzare --insecure anziché --ca-certificate. Entrambe le stringhe sono facoltative. Se non si specifica alcun valore, il sistema convalida il certificato di sicurezza del server predefinito.

    Di seguito è disponibile un esempio:

    tanzu isolated-cluster download-bundle --source-repo projects.registry.vmware.com/tkg --tkg-version v2.4.0
    
    

Il bundle di immagini sotto forma di file TAR viene scaricato nella macchina online insieme al file publish-images-fromtar.yaml. Il file YAML definisce la mappatura tra le immagini e i file TAR.

Passaggio 3: Download dell'immagine binaria della CLI di Tanzu per Linux nella macchina online

Scaricare l'immagine della CLI di Tanzu per Linux (file ZIP) nella macchina online:

  1. Passare alla pagina della CLI di VMware Tanzu in VMware Customer Connect.
  2. In Download prodotti (Product Downloads) individuare CLI di VMware Tanzu per Linux (VMware Tanzu CLI for Linux) e fare clic su Scarica ora (Download Now). Il file ZIP tanzu-cli-linux-amd64.tar.gz viene scaricato nella macchina locale.

Passaggio 4: Download del bundle di plug-in della CLI nella macchina online

Scaricare il bundle di plug-in della CLI nella macchina online:

Nella CLI di Tanzu, eseguire il comando seguente per passare al bundle di plug-in della CLI:

tanzu plugin download-bundle --group vmware-tkg/default --to-tar /tmp/plugin-bundle.tar.gz

Passaggio 5: Copiare i file nella macchina offline

Copiare i seguenti file nella macchina offline, ovvero la macchina di bootstrap nell'ambiente con proxy o air gap, tramite un'unità thumb USB o un altro supporto di storage:

  • I file TAR delle immagini
  • I file YAML
  • Il file ZIP tanzu-cli-bundle-linux-amd64.tar.gz
  • Bundle di plug-in della CLI

Passaggio 6: Decomprimere i file nella macchina offline

Sul computer di bootstrap offline, decomprimere il file ZIP dell'immagine della CLI di Tanzu nella directory tanzu:

tar -xvf tanzu-cli-bundle-linux-amd64.tar.gz -C $HOME/tanzu

Passaggio 7: Accedere al registro privato nella macchina offline

Accedere al registro privato nella macchina offline tramite Docker:

docker login <URL>

In cui URL è l'URL del repository privato in cui le immagini verranno archiviate nell'ambiente con proxy o air gap.

Passaggio 8: Installare la CLI di Tanzu nella macchina offline

Installare la CLI di Tanzu nella macchina offline:

sudo install tanzu-cli-linux_amd64 /usr/local/bin/tanzu

Passaggio 9: Installare il bundle di plug-in della CLI nella macchina offline

Installare il bundle di plug-in della CLI nella macchina offline.

  1. Se il registro privato nell'ambiente con air gap è configurato con un certificato CA autofirmato, aggiungere le preferenze di verifica del certificato seguendo le istruzioni in Aggiunta della configurazione del certificato per il registro personalizzato.

  2. Caricare il bundle di plug-in della CLI nel repository privato nell'ambiente con air gap:

    tanzu plugin upload-bundle --tar /tmp/plugin-bundle.tar.gz --to-repo PRIVATE-REPO/tanzu_cli/plugins
    

    Dove PRIVATE-REPO è il repository privato in cui le immagini verranno archiviate nell'ambiente con proxy o air gap. Ad esempio registry.example.com.

  3. Aggiornare la CLI di Tanzu in modo che punti alla nuova origine del plug-in:

    tanzu plugin source update default --url PRIVATE-REPO/tanzu_cli/plugins/plugin-inventory:latest
    
  4. Verificare che i plug-in siano individuabili:

    tanzu plugin search
    
    tanzu plugin group search 
    
  5. Installare i plug-in della CLI:

    tanzu plugin install 
    

Passaggio 10: Caricare le immagini TKG nel registro privato

Caricare il bundle delle immagini TKG nel registro privato:

tanzu isolated-cluster upload-bundle --source-directory <SOURCE-DIRECTORY> --destination-repo <DESTINATION-REGISTRY> --ca-certificate <SECURITY-CERTIFICATE>

In cui:

  • SOURCE-DIRECTORY è il percorso della posizione in cui sono archiviati i file TAR dell'immagine.
  • DESTINATION-REGISTRY è il percorso del registro privato in cui le immagini verranno ospitate nell'ambiente air gap.
  • SECURITY-CERTIFICATE è il certificato di sicurezza del registro privato in cui le immagini verranno ospitate nell'ambiente con proxy o air gap. Per ignorare la convalida del certificato di sicurezza, utilizzare --insecure anziché --ca-certificate. Entrambe le stringhe sono facoltative. Se non si specifica alcun valore, il sistema convalida il certificato di sicurezza del server predefinito.

Di seguito è disponibile un esempio:

tanzu isolated-cluster upload-bundle --source-directory ./ --destination-repo hostname1 --ca-certificate /tmp/registryca.crt

Passaggi successivi

Configurare il registro in cui sono state spostate le immagini utilizzando le seguenti variabili di riferimento del file di configurazione:

  • TKG_CUSTOM_IMAGE_REPOSITORY
  • TKG_CUSTOM_IMAGE_REPOSITORY_CA_CERTIFICATE o TKG_CUSTOM_IMAGE_REPOSITORY_SKIP_TLS_VERIFY.

Per ulteriori informazioni su queste variabili di configurazione, vedere Configurazione del registro di immagini privato.

Nota

È inoltre possibile utilizzare il comando tanzu config set env.CONFIG-VARIABLE per configurare il registro e mantenere le variabili di ambiente quando si utilizza la CLI di Tanzu in futuro. Per ulteriori informazioni, vedere set di configurazione di tanzu in Informazioni di riferimento sui comandi della CLI di Tanzu.

L'ambiente con limitazioni Internet è ora pronto per distribuire o aggiornare i cluster di gestione di Tanzu Kubernetes Grid e iniziare a distribuire i cluster del carico di lavoro in vSphere o AWS.

Per distribuire i cluster di gestione e del carico di lavoro in una configurazione specifica e convalidata in ambienti con air gap, vedere Progettazione e distribuzione di riferimento di VMware Tanzu Kubernetes Grid 2.3 con air gap. La progettazione di riferimento di TKG v2.3 è applicabile a TKG v2.3 e v2.4.

Per distribuire i cluster di gestione utilizzando un file di configurazione, vedere Distribuzione di cluster di gestione da un file di configurazione.

Se questa procedura è stata seguita come parte di un aggiornamento, vedere Aggiornamento di Tanzu Kubernetes Grid.

check-circle-line exclamation-circle-line close-line
Scroll to top icon