Installer l'infrastructure d'Anthos en mode déconnecté

Cette page est destinée aux opérateurs d'infrastructure.

Anthos en mode déconnecté est une version d'Anthos qui peut s'exécuter dans un environnement isolé totalement coupé d'Internet. Vous pouvez utiliser Anthos en mode déconnecté pour exécuter des charges de travail hautement réglementées sur site tout en bénéficiant de nombreux avantages d'une infrastructure cloud native.

Introduction

L'architecture d'Anthos en mode déconnecté est semblable à celle de la version connectée d'Anthos sur solution Bare Metal : il y a un cluster d'administrateur que vous utilisez pour créer et gérer des clusters d'utilisateurs. Vos charges de travail s'exécutent sur les clusters d'utilisateur. Vous disposez également d'un poste de travail administrateur, qui est une machine unique contenant les outils nécessaires pour installer et gérer votre déploiement d'Anthos en mode déconnecté.

Par rapport à la version connectée d'Anthos sur solution Bare Metal, Anthos en mode déconnecté bénéficie de trois composants supplémentaires :

  • Un registre de conteneurs facultatif qui s'exécute sur le poste de travail administrateur pour stocker toutes les images de conteneur Anthos (nécessaire dans un scénario où vous n'avez pas accès à Container Registry).
  • Outil de ligne de commande actl qui permet d'installer le mode déconnecté d'Anthos et d'effectuer d'autres tâches d'administration.
  • Anthos Management Center qui vous aide à gérer les autorisations et l'authentification, l'observabilité et la gestion des fonctionnalités multiclusters d'Anthos. Le centre de gestion inclut une console Web exécutée sur le cluster d'administrateur. L'interface utilisateur de la console du centre de gestion vous permet de gérer toutes les ressources qui composent le déploiement Anthos, y compris les machines, les pools d'adresses et les clusters d'utilisateurs. Vous pouvez également utiliser la console du centre de gestion pour gérer les fonctionnalités d'Anthos et surveiller vos charges de travail.

Schéma décrivant l'architecture d'Anthos

Figure : Figure d'architecture Anthos.

Préparer l'environnement

Obtenez l'accès à la version du produit, téléchargez la dernière version et installez les dépendances.

Avant de commencer

Avant de suivre les instructions de cette page, assurez-vous de répondre aux exigences techniques d'Anthos en mode déconnecté.

Accéder à Anthos en mode déconnecté

Google doit vous autoriser à accéder aux versions d'Anthos en mode déconnecté. Fournissez à votre contact Google une adresse e-mail pour chaque testeur afin que nous puissions leur accorder l'accès au dépôt de téléchargement. Ces adresses e-mail doivent être des comptes Google.

Lorsque votre point de contact Google confirme que vous avez accès aux versions d'Anthos en mode déconnecté, vérifiez que vous disposez des autorisations nécessaires pour télécharger les versions d'Anthos en mode déconnecté en exécutant la commande suivante :

gsutil ls gs://anthos-private-mode-release/

Si vous rencontrez une erreur, vérifiez que gsutil utilise le même compte Google que celui que vous avez indiqué au point de contact Google en exécutant la commande gcloud auth list.

Vous pouvez également accéder à la dernière version du bucket pour vérifier que vous disposez des autorisations appropriées. Vous devez être connecté avec le compte Google que vous avez fourni précédemment.

Si vous rencontrez des problèmes pour accéder aux versions d'Anthos en mode déconnecté, contactez votre point de contact Google pour obtenir de l'aide.

Télécharger Anthos en mode déconnecté

Dans cette section, vous téléchargez une version d'Anthos en mode déconnecté contenue dans plusieurs fichiers pesant chacun plusieurs gigaoctets. Selon votre connexion Internet, le téléchargement peut prendre un certain temps.

Télécharger Anthos en mode déconnecté

Sur votre poste de travail administrateur, exécutez les commandes suivantes :

# 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.11.3-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=1b8b1a8a596c0cbadd8aa2c0fc1bb2217d2f22d3d1f27f19b76e3f158e394e54
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

Installer les dépendances restantes

Une fois le téléchargement d'Anthos en mode déconnecté terminé, exécutez les commandes suivantes :

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"

Seules deux étapes de la procédure nécessitent une connexion Internet. Si vous installez le mode déconnecté d'Anthos dans un environnement entièrement isolé d'Internet, vous pouvez :

  • Commencez par connecter votre poste de travail administrateur à Internet, puis téléchargez la version comme indiqué ci-dessus. Ensuite, déconnectez le poste de travail d'Internet, puis connectez-le à l'environnement isolé.
  • Téléchargez la version à partir d'un poste de travail de développeur connecté à Internet, copiez-la sur un périphérique de stockage portable, puis déplacez ce périphérique de stockage portable vers votre poste de travail d'administrateur isolé.

Vous pouvez explorer le contenu de la version d'Anthos en mode déconnecté :

./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
  • Le répertoire local-registry contient les ressources permettant de configurer un registre de conteneurs local.
  • D'autres répertoires tels que managementcenter, services et baremetal contiennent tout ce dont vous avez besoin pour installer le cluster d'administrateur et le centre de gestion d'Anthos.

Facultatif : activer la saisie semi-automatique shell actl

L'outil de ligne de commande actl est compatible avec la saisie semi-automatique de l'interface système pour Bash, Zsh et Fish. Vous pouvez configurer le processus dans votre interface système en suivant les instructions de actl help completion, par exemple dans 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)

Configurer votre registre de conteneurs

Le mode déconnecté d'Anthos fonctionne en stockant les images de conteneurs Anthos dans un registre de conteneurs local. Vous pouvez utiliser votre propre registre de conteneurs existant ou le registre de conteneurs groupés d'Anthos en mode déconnecté.

Exportez les variables d'environnement suivantes :

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

Remplacez l'élément suivant :

  • REGISTRY_HOST est l'adresse IP de votre registre. Si vous souhaitez installer et utiliser le registre de conteneurs d'Anthos en mode déconnecté sur le poste de travail administrateur, utilisez ici l'adresse IP de votre poste de travail administrateur.

  • REGISTRY_PASSWORD est la valeur que vous avez définie pour le mot de passe du registre.

Si vous décidez d'utiliser votre propre registre de conteneurs, passez à la section Importer des images dans le registre de conteneurs.

Configurer le registre de conteneurs d'Anthos en mode déconnecté

Dans cette section, vous allez configurer un registre de conteneurs privé sur le poste de travail administrateur. Exécutez toutes les commandes ci-dessous à partir du poste de travail administrateur.

  1. Si vous ne disposez pas de votre propre registre de conteneurs privé, installez le registre de conteneurs d'Anthos en mode déconnecté.

    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
    
  2. Connectez-vous au registre pour vérifier que vous y avez accès. Si vous recevez une erreur, vous devrez peut-être attendre quelques secondes.

    docker login ${REGISTRY_HOST} -u admin -p ${REGISTRY_PASSWORD}
    

Remarques :

  • Le registre de conteneurs en mode déconnecté d'Anthos n'est utilisé que pour l'installation du mode déconnecté d'Anthos. Il n'est pas encore prêt pour une utilisation en production.
  • Le projet de registre public par défaut est library. Il peut être utilisé par défaut. Cependant, vous pouvez vous connecter au registre et créer un projet si vous le souhaitez.
  • Le registre de conteneurs est disponible à l'adresse https://REGISTRY_HOST/ après le démarrage du service. Les identifiants de connexion sont le nom d'utilisateur admin et le mot de passe REGISTRY_PASSWORD.
  • Les identifiants sont stockés de manière non chiffrée dans /home/<USER>/.docker/config.json.

Importer des images dans le registre de conteneurs

Dans cette section, vous allez importer dans votre registre de conteneurs les images du conteneur d'Anthos en mode déconnecté.

Préparez et importez les images du conteneur d'Anthos en mode déconnecté dans votre registre de conteneurs. Si vous y êtes invité, choisissez l'option Use that credential ou saisissez les nouveaux identifiants.

actl images push --private-registry=${PRIVATE_REGISTRY} \
    --images ~/anthos-baremetal-private-mode

Remarque : Si vous utilisez un proxy HTTP sur votre poste de travail, vous devrez peut-être désactiver les variables d'environnement suivantes pour que la commande actl images push fonctionne :

unset http_proxy
unset https_proxy
unset HTTP_PROXY
unset HTTPS_PROXY

Facultatif : Importer des graphiques Helm dans le registre de conteneurs

Dans cette section, vous allez importer les graphiques facultatifs Helm Anthos en mode déconnecté dans votre registre de conteneurs. Le mode déconnecté Anthos 1.10 inclut des charts Helm groupés pour trois solutions Google Cloud Marketplace : PostgreSQL, Redis et Kafka. Ces piles logicielles Open Source populaires sont empaquetées par Google et conçues pour fonctionner dans des environnements déconnectés.

  1. Préparez et importez les graphiques Helm Anthos en mode déconnecté dans votre registre de conteneurs. Si vous y êtes invité, choisissez l'option Use that credential ou saisissez les nouveaux identifiants.

    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
    
  2. Pour extraire les graphiques Helm Anthos en mode déconnecté de votre registre de conteneurs, activez la compatibilité expérimentale de Helm avec l'OCI :

    export HELM_EXPERIMENTAL_OCI=1
    
  3. Si votre registre privé utilise un certificat autosigné, vous devez également mettre à jour les certificats des autorités de certification de votre système. Pour en savoir plus, consultez ce problème Helm.

    sudo cp local-registry/ca.crt /usr/local/share/ca-certificates/
    sudo update-ca-certificates
    
  4. Connectez-vous au registre pour vérifier que vous y avez accès :

    helm registry login ${REGISTRY_HOST} -u admin -p ${REGISTRY_PASSWORD}
    
  5. Extrayez et exportez les graphiques Helm Anthos en mode déconnecté à partir de votre registre de conteneurs :

    helm chart pull ${PRIVATE_REGISTRY}/<CHART>:<TAG>
    helm chart export ${PRIVATE_REGISTRY}/<CHART>:<TAG> .
    

Étapes suivantes