Ce guide explique comment installer l'exemple d'application Online Boutique consacré à Anthos Service Mesh.
Prérequis
Ce guide suppose que vous disposez des éléments suivants :
- Un projet Google Cloud.
- Un compte Cloud Billing
- Anthos Service Mesh déployé sur un cluster ;
- Configurez votre environnement.
Télécharger et déployer l'exemple
Téléchargez l'exemple à l'aide de
kpt
:kpt pkg get \ https://github.com/GoogleCloudPlatform/microservices-demo.git/release \ online-boutique
Créez un espace de noms pour l'application :
kubectl create namespace demo
Activez l'injection side-car automatique (injection automatique). Exécutez la commande suivante pour localiser le libellé sur le service
istiod
, qui contient la valeur du libellé de révision à utiliser lors des étapes suivantes.kubectl -n istio-system get pods -l app=istiod --show-labels
La sortie ressemble à ceci :
NAME READY STATUS RESTARTS AGE LABELS istiod-asm-178-10-5788d57586-bljj4 1/1 Running 0 23h app=istiod,istio.io/rev=asm-178-10,istio=istiod,pod-template-hash=5788d57586 istiod-asm-178-10-5788d57586-vsklm 1/1 Running 1 23h app=istiod,istio.io/rev=asm-178-10,istio=istiod,pod-template-hash=5788d57586
Dans le résultat, sous la colonne
LABELS
, notez la valeur du libellé de révisionistiod
, qui suit le préfixeistio.io/rev=
. Dans cet exemple, la valeur estasm-178-10
.Appliquez le libellé de révision à l'espace de noms. Dans la commande suivante, REVISION correspond à la valeur du libellé de révision
istiod
que vous avez notée à l'étape précédente.kubectl label namespace demo istio-injection- istio.io/rev=REVISION --overwrite
Vous pouvez ignorer le message
"istio-injection not found"
dans le résultat. Cela signifie que l'espace de noms ne portait pas précédemment le libelléistio-injection
, auquel on s'attend dans de nouvelles installations d'Anthos Service Mesh ou de nouveaux déploiements. Étant donné que l'injection automatique échoue si un espace de noms possède à la fois leistio-injection
et le libellé de révision, toutes les commandeskubectl label
de la documentation Anthos Service Mesh incluent la suppression du libelléistio-injection
.Déployez l'exemple sur le cluster :
kubectl apply -n demo -f online-boutique
Recherchez l'adresse IP externe de votre application :
kubectl get service frontend-external -n demo
Accédez à l'application dans votre navigateur pour confirmer l'installation :
http://EXTERNAL_IP/
Vous pouvez explorer les fonctionnalités d'observabilité d'Anthos Service Mesh pour GKE dans la console Google Cloud. Notez que l'affichage des services de votre maillage dans le graphique de topologie peut prendre jusqu'à 10 minutes.
Lorsque vous avez terminé votre exploration, supprimez l'exemple Online Boutique :
kubectl delete namespaces demo