Questa pagina si rivolge agli operatori di infrastruttura.
Anthos in esecuzione in modalità disconnessa è una versione di Anthos che può essere eseguita completamente isolata da Internet in un ambiente con air gap. Puoi utilizzare Anthos in esecuzione in modalità disconnessa per eseguire carichi di lavoro altamente regolamentati on-premise, sfruttando al contempo i numerosi vantaggi di un'infrastruttura cloud-native.
Introduzione
L'architettura di Anthos in esecuzione in modalità disconnessa è simile all'architettura della versione connessa di Anthos su Bare Metal: esiste un cluster admin che utilizzi per creare e gestire i cluster utente. I carichi di lavoro vengono eseguiti sui cluster utente. Hai anche una workstation di amministrazione, ovvero una singola macchina contenente gli strumenti necessari per installare e gestire il tuo deployment Anthos in esecuzione in modalità disconnessa.
Rispetto alla versione connessa di Anthos su Bare Metal, Anthos in esecuzione in modalità disconnessa è dotato di tre componenti aggiuntivi:
- Un registro di container facoltativo in esecuzione sulla workstation di amministrazione per archiviare tutte le immagini di container Anthos (necessario in uno scenario in cui non hai accesso a un registro di container).
- Uno strumento a riga di comando
actl
che aiuta a installare Anthos in esecuzione in modalità disconnessa e a eseguire altre attività amministrative. - Anthos Management Center ti aiuta a gestire le autorizzazioni e l'autenticazione, l'osservabilità e la gestione di funzionalità Anthos multi-cluster. Il Centro di gestione include una console basata sul Web in esecuzione sul cluster di amministrazione. L'interfaccia utente della console del Centro di gestione consente di gestire tutte le risorse che costituiscono il deployment di Anthos, tra cui macchine, pool di indirizzi e cluster utente. Puoi anche utilizzare la console del Centro gestione per gestire le funzionalità di Anthos e monitorare i tuoi carichi di lavoro.
Figura: figura dell'architettura Anthos.
Prepara l'ambiente
Ottieni l'accesso alla release del prodotto, scarica la versione più recente e installa le dipendenze.
Prima di iniziare
Prima di seguire le istruzioni in questa pagina, assicurati di soddisfare i requisiti tecnici per Anthos in esecuzione in modalità disconnessa.
Accedi ad Anthos in esecuzione in modalità disconnessa
Google deve concederti l'accesso ad Anthos in esecuzione in modalità disconnessa. Fornisci al tuo punto di contatto Google un indirizzo email per ogni tester in modo che possiamo concedere l'accesso al repository di download. Questi indirizzi email devono essere Account Google.
Dopo che il punto di contatto Google conferma che hai accesso ad Anthos in esecuzione in modalità disconnessa, verifica di avere le autorizzazioni per scaricare Anthos in esecuzione in modalità disconnessa eseguendo il comando seguente:
gsutil ls gs://anthos-private-mode-release/
Se ricevi un messaggio di errore, verifica che gsutil
utilizzi lo stesso Account Google che hai fornito al punto di contatto Google eseguendo il comando gcloud auth list
.
In alternativa, puoi visitare il bucket di release più recente per verificare di disporre delle autorizzazioni corrette. Devi aver eseguito l'accesso con l'Account Google che hai fornito in precedenza.
Se hai problemi di accesso ad Anthos in esecuzione in modalità disconnessa, contatta il tuo punto di contatto Google per ricevere assistenza.
Scarica Anthos in esecuzione in modalità disconnessa
In questa sezione, scarichi Anthos in esecuzione in modalità disconnessa, contenuto in più file di diversi gigabyte ciascuno. A seconda della connessione a Internet, il download potrebbe richiedere molto tempo.
Scarica Anthos in esecuzione in modalità disconnessa
Nella workstation di amministrazione, esegui i comandi seguenti:
# Login with the account granted access to Anthos running in disconnected mode
gcloud auth login
# Download the script which helps download all the latest components
export VERSION=1.12.0-gke.0
# Please use official 'INSTALLER_DIGEST' value from https://cloud.google.com/anthos/private-mode/docs/1.11/installing/infrastructure#download
export INSTALLER_DIGEST=53275103489dd7569a321da5f70d78cad00a9e3b6a550202200ede37d51d4d3e
export INSTALLER=get-anthos-private-mode-$VERSION.sh
gsutil cp gs://anthos-private-mode-release/$VERSION/$INSTALLER .
if [[ -n "$INSTALLER_DIGEST" ]]; then echo "$INSTALLER_DIGEST $INSTALLER" | sha256sum -c; fi && chmod +x $INSTALLER && ./$INSTALLER
# If you are working on a workstation shared with other users,
# we recommend that you revoke your credentials after downloading the release.
gcloud auth revoke YOUR_EMAIL_ADDRESS
Installa le dipendenze rimanenti
Una volta completato il download di Anthos in modalità disconnessa, esegui i comandi seguenti:
cd anthos-baremetal-private-mode
# Add actl command line tool and tools directory to the PATH
export PATH=$PWD/bin:$PATH
# Download Harbor offline installer
curl -SL \
https://github.com/goharbor/harbor/releases/download/v2.2.0/harbor-offline-installer-v2.2.0.tgz \
--output "local-registry/harbor-offline-installer.tgz"
# Install docker-compose
curl -SL \
https://github.com/docker/compose/releases/download/1.28.5/docker-compose-Linux-x86_64 \
--output "local-registry/docker-compose"
Questi sono gli unici due passaggi della procedura che richiedono una connessione a Internet. Se installi Anthos in esecuzione in modalità disconnessa in un ambiente completamente isolato da Internet, puoi:
- Innanzitutto connetti la workstation di amministrazione a Internet e scarica la release, come mostrato sopra. Quindi, disconnetti la workstation da Internet e collegala all'ambiente con air gap.
- Scarica la release da una workstation per sviluppatori connessa a Internet, copiala su un dispositivo di archiviazione portatile e spostala nella tua workstation di amministrazione con air gap.
Puoi esplorare i contenuti di Anthos in esecuzione in modalità disconnessa:
./anthos-baremetal-private-mode
├── actl-workspace
│ └── admin
│ └── admin.yaml
├── baremetal
│ ├── images
│ └── package-spec.yaml
├── bin
│ ├── actl
│ ├── istioctl
│ └── nomos
├── local-registry
│ ├── cleanup.sh
│ ├── docker-compose
│ ├── generate-certs.sh
│ ├── harbor-offline-installer.tgz
│ └── install.sh
├── managementcenter
│ ├── images
│ └── management-center.yaml
├── services
│ ├── anthos-config-management
│ ├── anthos-service-mesh
│ └── images
├── third_party
└── updatecenter
└── images
- La directory
local-registry
contiene le risorse per configurare un Container Registry locale. - Altre directory come
managementcenter
,services
ebaremetal
contengono tutto il necessario per installare il cluster di amministrazione e Anthos Management Center.
Facoltativo: abilita il completamento automatico shell Actl
Lo strumento a riga di comando actl
supporta il completamento automatico della shell per Bash, Zsh e Fish. Puoi configurare il completamento nella shell seguendo le istruzioni in actl help
completion
, ad esempio in Ubuntu/Debian, bash:
# One time setup: install bash-completion
sudo apt update && sudo apt install bash-completion
# In ~/.bashrc
source /etc/profile.d/bash_completion.sh
source <(actl completion bash)
Configurare Container Registry
Anthos in esecuzione in modalità disconnessa funziona archiviando le immagini container Anthos in un registro di container locale. Puoi utilizzare il tuo registro di container esistente o usare Anthos in esecuzione in modalità disconnessa Container Registry.
Esporta le seguenti variabili di ambiente.
export REGISTRY_HOST=REGISTRY_HOST
export REGISTRY_PASSWORD=REGISTRY_PASSWORD
# By default, a public project called 'library' is created,
# and you can also create other public or private projects with the container registry portal.
export PRIVATE_REGISTRY=${REGISTRY_HOST}/library
Sostituisci quanto segue:
REGISTRY_HOST
è il tuo indirizzo IP del registry. Se vuoi installare e utilizzare Anthos in esecuzione in Container Registry in modalità disconnessa sulla workstation di amministrazione, utilizza qui l'indirizzo IP della workstation di amministrazione.REGISTRY_PASSWORD
è il valore che imposti per la password del Registro di sistema.
Se decidi di utilizzare il tuo registro dei container, passa alla sezione Caricare immagini nel registro dei container.
Configurare Anthos in esecuzione in Container Registry in modalità disconnessa
In questa sezione configurerai un Container Registry privato nella workstation di amministrazione. Esegui tutti i comandi seguenti dalla workstation di amministrazione.
Se non disponi di un proprio Container Registry privato, installa Anthos in esecuzione in modalità Container disconnesso.
cd ~/anthos-baremetal-private-mode # Move it to a path under $PATH chmod a+x local-registry/docker-compose sudo cp local-registry/docker-compose /usr/bin # Install local registry ./local-registry/install.sh
Accedi al registry per verificare di avere accesso. Se ricevi un errore, potrebbe essere necessario attendere alcuni secondi.
docker login ${REGISTRY_HOST} -u admin -p ${REGISTRY_PASSWORD}
Note:
- Il registro di Anthos in esecuzione in modalità disconnessa viene utilizzato per installare Anthos in esecuzione solo in modalità disconnessa. Non è ancora adatto all'uso in produzione.
- Il progetto di registro pubblico predefinito è
library
e può essere utilizzato per impostazione predefinita. Tuttavia, se preferisci, puoi accedere al registro e creare un nuovo progetto. - Container Registry è disponibile all'indirizzo
https://REGISTRY_HOST/
dopo l'avvio del servizio. Le credenziali di accesso sono il nome utenteadmin
eREGISTRY_PASSWORD
per la password. - Le credenziali sono memorizzate in modalità non criptata in
/home/<USER>/.docker/config.json
.
Carica le immagini in Container Registry
In questa sezione caricherai le immagini container Anthos in esecuzione in modalità disconnessa nel tuo Registry Registry.
Prepara e carica le immagini container Anthos in esecuzione in modalità disconnessa nel tuo
registro container. Se richiesto, scegli l'opzione Use that credential
o inserisci le nuove credenziali.
actl images push --private-registry=${PRIVATE_REGISTRY} \
--images ~/anthos-baremetal-private-mode
Nota: se utilizzi un proxy HTTP sulla workstation, potresti dover annullare l'impostazione delle seguenti variabili di ambiente per far funzionare il comando actl images push
:
unset http_proxy
unset https_proxy
unset HTTP_PROXY
unset HTTPS_PROXY
Facoltativo: carica i grafici Helm in Container Registry
In questa sezione carichi il grafico facoltativo Anthos in esecuzione in modalità Helm disconnesso in Container Registry. Anthos in esecuzione in modalità disconnessa 1.10 include grafici Helm in bundle per tre soluzioni Google Cloud Marketplace: PostgreSQL, Redis e Kafka. Questi popolari stack software open source sono pacchettizzati da Google e progettati per essere eseguiti in ambienti disconnessi.
Prepara e carica i grafici Helm in modalità disconnessa nel registro del container. Se richiesto, scegli l'opzione
Use that credential
o inserisci le nuove credenziali:actl packages push --private-registry=${PRIVATE_REGISTRY} \ ~/anthos-baremetal-private-mode/services/third_party-postgresql/package-spec.yaml actl packages push --private-registry=${PRIVATE_REGISTRY} \ ~/anthos-baremetal-private-mode/services/third_party-redis-ha/package-spec.yaml actl packages push --private-registry=${PRIVATE_REGISTRY} \ ~/anthos-baremetal-private-mode/services/third_party-kafka/package-spec.yaml
Per eseguire l'esecuzione di Anthos nei grafici Helm in modalità disconnessa dal registro dei container, abilita il supporto OCI sperimentale di Helm:
export HELM_EXPERIMENTAL_OCI=1
Se il tuo registro privato utilizza un certificato autofirmato, devi aggiornare anche i certificati dell'autorità di certificazione (CA) nel sistema. Per informazioni dettagliate, consulta questo problema di Helm.
sudo cp local-registry/ca.crt /usr/local/share/ca-certificates/ sudo update-ca-certificates
Accedi al registry per verificare di avere accesso:
helm registry login ${REGISTRY_HOST} -u admin -p ${REGISTRY_PASSWORD}
Esegui il pull e l'esportazione di Anthos in esecuzione sui grafici Helm in modalità disconnessa dal registro del container:
helm chart pull ${PRIVATE_REGISTRY}/<CHART>:<TAG> helm chart export ${PRIVATE_REGISTRY}/<CHART>:<TAG> .