Configurer un cluster GKE

Cette page explique comment configurer un cluster GKE existant avec les options requises par Anthos Service Mesh. Si vous souhaitez ajouter des clusters de différents projets Google Cloud à Anthos Service Mesh, ceux-ci doivent se trouver dans un cloud privé virtuel partagé (VPC). Pour plus d'informations, consultez la page Configurer des clusters avec un VPC partagé.

Avant de commencer

Avant de commencer à configurer un cluster, veillez à effectuer les opérations suivantes :

Configurer un cluster existant

  1. Créez les variables d'environnement suivantes :

    • Définissez le nom du cluster :

      export CLUSTER_NAME=YOUR_CLUSTER_NAME

    • Définissez le paramètre CLUSTER_LOCATION sur la zone ou la région de votre cluster :

      export CLUSTER_LOCATION=YOUR_ZONE_OR_REGION

    • Définissez le pool de charges de travail :

      export WORKLOAD_POOL=${PROJECT_ID}.svc.id.goog

    • Définissez l'ID du réseau maillé :

      export MESH_ID="proj-${FLEET_PROJECT_NUMBER}"

  2. Définissez la zone ou la région par défaut pour Google Cloud CLI. Si vous ne définissez pas la valeur par défaut ici, veillez à spécifier l'option --zone ou --region dans les commandes gcloud container clusters de cette page.

    • Si vous disposez d'un cluster à zone unique, définissez la zone par défaut :

      gcloud config set compute/zone ${CLUSTER_LOCATION}
    • Si vous disposez d'un cluster régional, définissez la région par défaut :

      gcloud config set compute/region ${CLUSTER_LOCATION}

    Conseil : Pour faciliter la configuration de votre environnement shell à l'avenir, vous pouvez copier et coller les instructions export de chaque variable d'environnement dans un script shell simple auquel vous appliquez source lorsque vous démarrez une nouvelle interface système. Vous pouvez également ajouter les commandes gcloud qui définissent des valeurs par défaut pour le script, ou utiliser gcloud init pour créer et activer une configuration nommée gcloud.

  3. Définissez le libellé mesh_id sur le cluster, qui est nécessaire pour que les métriques s'affichent sur le tableau de bord Anthos Service Mesh dans la console Google Cloud. Si votre cluster contient des libellés existants que vous souhaitez conserver, vous devez les inclure lors de l'ajout du libellé mesh_id.

    1. Pour savoir si votre cluster possède des libellés existants, procédez comme suit :

      gcloud container clusters describe ${CLUSTER_NAME} \
        --project ${PROJECT_ID}

      Recherchez le champ resourceLabels dans le résultat. Chaque libellé est stocké sur une ligne distincte du champ resourceLabels, par exemple :

      resourceLabels:
        csm: ''
        env: dev
        release: stable

      Si le libellé csm se trouve dans le résultat, vous n'avez pas besoin de le conserver. Le libellé mesh_id remplace le libellé csm.

      Pour plus de commodité, vous pouvez ajouter les libellés à une variable d'environnement. Dans la commande suivante, remplacez YOUR_EXISTING_LABELS par la liste des libellés existants de votre cluster (séparés par une virgule) au format KEY=VALUE, par exemple : env=dev,release=stable

      export EXISTING_LABELS="YOUR_EXISTING_LABELS"
    2. Définissez le libellé mesh_id :

      • Si votre cluster contient des libellés existants que vous souhaitez conserver, mettez à jour le cluster avec le libellé mesh_id et les libellés existants :

        gcloud container clusters update ${CLUSTER_NAME} \
          --project ${PROJECT_ID} \
          --update-labels=mesh_id=${MESH_ID},${EXISTING_LABELS}
      • Si votre cluster ne comporte aucun libellé existant, mettez-le à jour uniquement avec le libellé mesh_id :

        gcloud container clusters update ${CLUSTER_NAME} \
          --project=${PROJECT_ID} \
          --update-labels=mesh_id=${MESH_ID}
  4. Activez Workload Identity

    gcloud container clusters update ${CLUSTER_NAME} \
       --project=${PROJECT_ID} \
       --workload-pool=${WORKLOAD_POOL}

    L'activation de Workload Identity peut nécessiter de 10 à 15 minutes.

  5. Activez Cloud Monitoring et Cloud Logging sur GKE :

    gcloud container clusters update ${CLUSTER_NAME} \
       --project=${PROJECT_ID} \
       --enable-stackdriver-kubernetes

Que voulez-vous faire ensuite ?