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é.
Si vous effectuez une mise à niveau à partir de 1.8 or a 1.9 patch release, les exigences du projet et du cluster n'ont pas changé. Pour effectuer la mise à niveau, consultez la section Mise à niveau multiprojets.
Avant de commencer
Avant de commencer à configurer un cluster, veillez à effectuer les opérations suivantes :
- Vérifiez la configuration requise pour les clusters.
- Configurez votre environnement pour installer les outils dont vous avez besoin.
- Configurez votre projet pour créer des variables d'environnement, activer les API requises et définir des autorisations.
Configurer un cluster existant
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}"
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 commandesgcloud 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 appliquezsource
lorsque vous démarrez une nouvelle interface système. Vous pouvez également ajouter les commandesgcloud
qui définissent des valeurs par défaut pour le script, ou utilisergcloud init
pour créer et activer une configuration nomméegcloud
.Définissez le libellé
mesh_id
sur le cluster. Si votre cluster contient des libellés existants que vous souhaitez conserver, vous devez les inclure lors de l'ajout du libellémesh_id
.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 champresourceLabels
, 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 formatKEY=VALUE
, par exemple :env=dev,release=stable
export EXISTING_LABELS="YOUR_EXISTING_LABELS"
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}
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.
Activez Cloud Monitoring et Cloud Logging sur GKE :
gcloud container clusters update ${CLUSTER_NAME} \ --project=${PROJECT_ID} \ --enable-stackdriver-kubernetes