En esta guía, se explica cómo instalar la aplicación de muestra Online Boutique para demostrar el funcionamiento de Anthos Service Mesh.
Requisitos previos
En esta guía, suponemos que ya tienes lo siguiente:
- Un proyecto de Google Cloud.
- Una cuenta de facturación de Cloud
- Anthos Service Mesh implementado en un clúster
- Configura el entorno.
Descarga e implementa la muestra
Descarga la muestra mediante
kpt
:kpt pkg get \ https://github.com/GoogleCloudPlatform/microservices-demo.git/release \ online-boutique
Crea un espacio de nombres para la aplicación:
kubectl create namespace demo
Habilita la inserción automática del sidecar (inserción automática). Usa el siguiente comando para ubicar la etiqueta en el servicio
istiod
, que contiene el valor de la etiqueta de revisión que se usará en pasos posteriores.kubectl -n istio-system get pods -l app=istiod --show-labels
El resultado es similar al siguiente:
NAME READY STATUS RESTARTS AGE LABELS istiod-asm-186-8-5788d57586-bljj4 1/1 Running 0 23h app=istiod,istio.io/rev=asm-186-8,istio=istiod,pod-template-hash=5788d57586 istiod-asm-186-8-5788d57586-vsklm 1/1 Running 1 23h app=istiod,istio.io/rev=asm-186-8,istio=istiod,pod-template-hash=5788d57586
En el resultado, en la columna
LABELS
, observa el valor de la etiqueta de revisiónistiod
, que está después del prefijoistio.io/rev=
. En este ejemplo, el valor esasm-186-8
.Aplica la etiqueta de revisión a los espacios de nombres. En el siguiente comando, REVISION es el valor de la etiqueta de revisión
istiod
que anotaste en el paso anterior.kubectl label namespace demo istio-injection- istio.io/rev=REVISION --overwrite
Puedes ignorar el mensaje
"istio-injection not found"
en el resultado. Esto significa que el espacio de nombres no tenía la etiquetaistio-injection
, que debería aparecer en las nuevas instalaciones de Anthos Service Mesh o en implementaciones nuevas. Debido a que la inserción automática falla si un espacio de nombres tiene tanto laistio-injection
como la etiqueta de revisión, todos los comandoskubectl label
de la documentación de Anthos Service Mesh incluyen la acción de quitar la etiquetaistio-injection
.Implementa la muestra en el clúster:
kubectl apply -n demo -f online-boutique
Busca la dirección IP externa de tu aplicación:
kubectl get service frontend-external -n demo
Visita la aplicación en tu navegador para confirmar la instalación:
http://EXTERNAL_IP/
En GKE, puedes explorar las características de observabilidad de Anthos Service Mesh en la consola de Google Cloud. Ten en cuenta que pueden pasar hasta 10 minutos hasta que gráfico de topología muestre los servicios de tu malla.
Cuando termines de explorar, quita la muestra de Online Boutique:
kubectl delete namespaces demo