Implementa la aplicación de muestra Online Boutique en Anthos Service Mesh

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:

Descarga e implementa la muestra

  1. Descarga la muestra mediante kpt:

    kpt pkg get \
    https://github.com/GoogleCloudPlatform/microservices-demo.git/release \
    online-boutique
    
  2. Crea un espacio de nombres para la aplicación:

    kubectl create namespace demo
    
  3. 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ón istiod, que está después del prefijo istio.io/rev=. En este ejemplo, el valor es asm-186-8.

  4. 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 etiqueta istio-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 la istio-injection como la etiqueta de revisión, todos los comandos kubectl label de la documentación de Anthos Service Mesh incluyen la acción de quitar la etiqueta istio-injection.

  5. Implementa la muestra en el clúster:

    kubectl apply -n demo -f online-boutique
    
  6. Busca la dirección IP externa de tu aplicación:

    kubectl get service frontend-external -n demo
    
  7. 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