Premiers pas

Cette page vous explique comment préparer votre environnement et votre cluster pour installer Anthos Service Mesh.

Installer les outils nécessaires

Vous pouvez exécuter asmcli sur Cloud Shell ou sur votre machine locale Linux. Cloud Shell préinstalle tous les outils requis.

Si vous exécutez asmcli localement, assurez-vous que les outils suivants sont installés :

Configurer gcloud

Procédez comme suit même si vous utilisez Cloud Shell.

  1. Authentifiez-vous avec Google Cloud CLI :

    gcloud auth login --project PROJECT_ID
    
  2. Mettez à jour les composants :

    gcloud components update
    
  3. Si vous installez Anthos Service Mesh sur un cluster GKE, configurez kubectl pour qu'il pointe vers le cluster.

    gcloud container clusters get-credentials CLUSTER_NAME \
         --zone CLUSTER_LOCATION \
         --project PROJECT_ID
    

Télécharger asmcli

Cette section explique comment télécharger le asmcli.

  1. Téléchargez la version qui installe Anthos Service Mesh 1.10.6 dans le répertoire de travail actuel :

    curl https://storage.googleapis.com/csm-artifacts/asm/asmcli_alpha > asmcli
    
  2. Rendez le script exécutable :

    chmod +x asmcli
    

Accorder des autorisations d'administrateur de cluster

  1. Basculez le contexte vers votre cluster d'utilisateur :

    kubectl config use-context CLUSTER_NAME
  2. Accordez des autorisations d'administrateur de cluster à votre compte utilisateur (votre adresse e-mail de connexion Google Cloud). Vous avez besoin de ces autorisations pour créer les règles de contrôle d'accès basé sur les rôles (RBAC) nécessaires pour Anthos Service Mesh :

    kubectl create clusterrolebinding cluster-admin-binding \
      --clusterrole=cluster-admin \
      --user=USER_ACCOUNT

Valider le projet et le cluster

Vous pouvez exécuter asmcli validate afin de vous assurer que votre projet et votre cluster sont configurés comme il se doit pour installer Anthos Service Mesh. Avec cette option, asmcli n'apporte aucune modification à votre projet ou cluster et il n'installe pas Anthos Service Mesh.

Le script valide les points suivants :

Par défaut, le script télécharge et extrait le fichier d'installation et télécharge le package de configuration asm de GitHub dans un répertoire temporaire. Avant de quitter, le script génère un message indiquant le nom du répertoire temporaire. Nous vous recommandons de spécifier un répertoire pour les téléchargements avec l'option --output_dir DIR_PATH. L'option --output_dir vous permet d'utiliser l'outil de ligne de commande istioctl si vous en avez besoin. De plus, les fichiers de configuration permettant d'activer les fonctionnalités facultatives sont inclus dans le répertoire asm/istio/options.

Exécutez la commande suivante pour valider votre configuration et télécharger le fichier d'installation et le package asm dans le répertoire OUTPUT_DIR.

GKE

./asmcli validate \
  --project_id PROJECT_ID \
  --cluster_name CLUSTER_NAME \
  --cluster_location CLUSTER_LOCATION \
  --output_dir DIR_PATH
  • --project_id, --cluster_name et --cluster_location : spécifiez l'ID du projet dans lequel se trouve le cluster, son nom, ainsi que la zone ou la région du cluster.

    • --output_dir : incluez cette option pour spécifier un répertoire dans lequel asmcli télécharge le package asm et extrait le fichier d'installation, qui contient istioctl, des exemples et des fichiers manifestes. Sinon, asmcli télécharge les fichiers dans un répertoire tmp. Vous pouvez spécifier un chemin d'accès relatif ou complet. La variable d'environnement $PWD ne fonctionne pas ici.

Sur site

  1. Définissez le contexte actuel sur votre cluster d'utilisateur :

    kubectl config use-context CLUSTER_NAME
    
  2. Exécutez la commande suivante pour valider votre configuration et télécharger le fichier d'installation et le package asm dans le répertoire OUTPUT_DIR :

    ./asmcli validate \
      --kubeconfig KUBECONFIG_FILE \
      --output_dir DIR_PATH \
      --platform multicloud
    
    • --kubeconfig : Chemin d'accès au kubeconfig. Vous pouvez spécifier un chemin d'accès relatif ou complet. La variable d'environnement $PWD ne fonctionne pas ici.

    • --output_dir : incluez cette option pour spécifier un répertoire dans lequel asmcli télécharge le package asm et extrait le fichier d'installation, qui contient istioctl, des exemples et des fichiers manifestes. Sinon, asmcli télécharge les fichiers dans un répertoire tmp. Vous pouvez spécifier un chemin d'accès relatif ou complet. La variable d'environnement $PWD ne fonctionne pas ici.

    • --platform multicloud spécifie que la plate-forme sur site est utilisée.

En cas de réussite, le script génère ce qui suit :

asmcli: Setting up necessary files...
asmcli: Using asm_kubeconfig as the kubeconfig...
asmcli: Checking installation tool dependencies...
asmcli: Fetching/writing GCP credentials to kubeconfig file...
asmcli: Verifying connectivity (10s)...
asmcli: kubeconfig set to asm_kubeconfig
asmcli: using context gke_example-project-12345_us-central1_cluster-2
asmcli: Getting account information...
asmcli: Downloading ASM..
asmcli: Downloading ASM kpt package...
fetching package "/asm" from "https://github.com/GoogleCloudPlatform/anthos-service-mesh-packages" to "asm"
asmcli: Checking required APIs...
asmcli: Checking for project example-project-12345...
asmcli: Reading labels for us-central1/cluster-2...
asmcli: Checking for istio-system namespace...
asmcli: Confirming node pool requirements for example-project-12345/us-central1/cluster-2...
asmcli: Checking Istio installations...
asmcli: [WARNING]: There is no way to validate that the meshconfig API has been initialized.
asmcli: [WARNING]: This needs to happen once per GCP project. If the API has not been initialized
asmcli: [WARNING]: for example-project-12345, please re-run this tool with the --enable_gcp_components
asmcli: [WARNING]: flag. Otherwise, installation will succeed but Anthos Service Mesh
asmcli: [WARNING]: will not function correctly.
asmcli: Successfully validated all requirements to install ASM.

Si l'un des tests échoue à la validation, le script génère un message d'erreur. Par exemple, si toutes les API Google requises ne sont pas activées pour votre projet, vous obtenez l'erreur suivante :

ERROR: One or more APIs are not enabled. Please enable them and retry, or run
the script with the '--enable_gcp_apis' flag to allow the script to enable them
on your behalf.

Si vous recevez un message d'erreur indiquant que vous devez exécuter le script avec une option d'activation, vous disposez des options suivantes :

  • Incluez l'option spécifique du message d'erreur ou l'option --enable_all lors de l'exécution du script pour effectuer l'installation réelle (c'est-à-dire sans --only_validate).

  • Si vous préférez, vous pouvez vous-même mettre à jour votre projet et votre cluster avant d'exécuter le script, comme décrit dans la section Configurer l'installation d'Anthos Service Mesh sur GKE.

Notez que asmcli n'autorise aucune option d'activation avec --only_validate.

Inspecter les exigences d'installation et de mise à niveau du cluster

Avant de procéder à la mise à niveau, vérifiez que votre configuration est compatible avec la nouvelle version d'Anthos Service Mesh.

  1. Accédez au répertoire que vous avez spécifié dans --output_dir.

  2. Exécutez la commande suivante pour inspecter les exigences d'installation et de mise à niveau du cluster Kubernetes. Assurez-vous d'utiliser la version de istioctl distribuée avec la nouvelle version d'Anthos Service Mesh.

    istioctl experimental precheck
    

Étape suivante