Como implantar o aplicativo de amostra Online Boutique no Anthos Service Mesh

Neste guia, explicamos como instalar o aplicativo de amostra Online Boutique para demonstrar o Anthos Service Mesh.

Pré-requisitos

Veja o que é necessário para seguir este guia:

Como fazer o download e implantar a amostra

  1. Faça o download da amostra usando kpt:

    kpt pkg get \
    https://github.com/GoogleCloudPlatform/microservices-demo.git/release \
    online-boutique
    
  2. Crie um namespace para o aplicativo:

    kubectl create namespace demo
    
  3. Ative a injeção automática de arquivo secundário (injeção automática). Use o comando a seguir para localizar o rótulo no serviço istiod, que contém o valor do rótulo de revisão a ser usado em etapas posteriores.

    kubectl -n istio-system get pods -l app=istiod --show-labels
    

    A saída será assim:

    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

    Na saída, na coluna LABELS, observe o valor do rótulo de revisão istiod, que segue o prefixo istio.io/rev=. Neste exemplo, o valor é asm-178-10.

  4. Aplique o rótulo de revisão ao namespace. No comando a seguir, REVISION é o valor do rótulo de revisão istiod que você anotou na etapa anterior.

    kubectl label namespace demo istio-injection- istio.io/rev=REVISION --overwrite
    

    Você pode ignorar a mensagem "istio-injection not found" na saída. Isso significa que o namespace não tinha o rótulo istio-injection anteriormente, que é esperado em novas instalações do Anthos Service Mesh ou em novas implantações. Como a injeção automática falha se um namespace tiver o istio-injection e o rótulo de revisão, todos os comandos kubectl label na documentação do Anthos Service Mesh incluem a remoção do rótulo istio-injection

  5. Implante a amostra no cluster:

    kubectl apply -n demo -f online-boutique
    
  6. Encontre o endereço IP externo do aplicativo:

    kubectl get service frontend-external -n demo
    
  7. Acesse o aplicativo no navegador para confirmar a instalação:

    http://EXTERNAL_IP/
    

Para o GKE, é possível explorar os recursos de observabilidade do Anthos Service Mesh no Console do Cloud. Pode levar até 10 minutos para o gráfico de topologia exibir os serviços na malha.

Quando terminar de explorar, remova a amostra Online Boutique:

kubectl delete namespaces demo