Nesta página, explicamos como implantar um aplicativo de amostra no Anthos Service Mesh. Se você não tiver instalado o Anthos Service Mesh, veja a seção Guias de instalação para escolher o guia certo para você.
Vários aplicativos de exemplo vêm com a instalação do Anthos Service Mesh. Neste
guia, você verá como implantar a
amostra do BookInfo. Ele simula um aplicativo
simples de livraria composto de quatro serviços que oferecem uma página de produto
da Web, detalhes do livro, avaliações (com várias versões do serviço de avaliação) e
classificações, tudo gerenciado com o Anthos Service Mesh. É possível encontrar o código-fonte e os
demais arquivos usados neste exemplo no diretório da instalação do
Anthos Service Mesh em samples/bookinfo
.
Como implantar o aplicativo
Siga as etapas abaixo para implantar os serviços do aplicativo BookInfo com os proxies sidecar injetados junto com cada serviço.
Na linha de comando do computador em que você instalou o Anthos Service Mesh, acesse a raiz do diretório de instalação do Anthos Service Mesh.
Rotule o namespace que hospedará o aplicativo com
istio-injection=enabled
:kubectl label namespace default istio-injection=enabled
Implante o aplicativo usando
kubectl
:kubectl apply -f samples/bookinfo/platform/kube/bookinfo.yaml
Confirme se o aplicativo foi implantado corretamente executando os seguintes comandos:
kubectl get services
Saída:NAME CLUSTER-IP EXTERNAL-IP PORT(S) AGE details 10.0.0.31 <none> 9080/TCP 6m kubernetes 10.0.0.1 <none> 443/TCP 7d productpage 10.0.0.120 <none> 9080/TCP 6m ratings 10.0.0.15 <none> 9080/TCP 6m reviews 10.0.0.170 <none> 9080/TCP 6m
e
kubectl get pod
Saída:NAME READY STATUS RESTARTS AGE details-v1-1520924117-48z17 2/2 Running 0 6m productpage-v1-560495357-jk1lz 2/2 Running 0 6m ratings-v1-734492171-rnr5l 2/2 Running 0 6m reviews-v1-874083890-f0qf0 2/2 Running 0 6m reviews-v2-1343845940-b34q5 2/2 Running 0 6m reviews-v3-1813607990-8ch52 2/2 Running 0 6m
Finalmente, defina o roteamento do gateway de entrada para o aplicativo:
kubectl apply -f samples/bookinfo/networking/bookinfo-gateway.yaml
Como validar a implantação do aplicativo
Para ver se o aplicativo BookInfo está funcionando, envie o tráfego para o gateway de entrada.
Se você instalou o Anthos Service Mesh no GKE no VMware, guarde o endereço IP externo do gateway de entrada que você configurou depois de instalar o Anthos Service Mesh
Se você instalou o Anthos Service Mesh no GKE, veja o endereço IP externo do gateway de entrada da seguinte maneira:
kubectl get svc istio-ingressgateway -n istio-system
Saída:NAME TYPE CLUSTER-IP EXTERNAL-IP PORT(S) AGE istio-ingressgateway LoadBalancer 10.19.247.233 35.239.7.64 80:31380/TCP,443:31390/TCP,31400:31400/TCP 27m
Nesse exemplo, o endereço IP do serviço de entrada é
35.239.7.64
.
Como testar o aplicativo
Verifique se o aplicativo BookInfo está sendo executado com
curl
:curl -I http://EXTERNAL_IP/productpage
Se a resposta mostrar
200
, significa que o aplicativo está funcionando corretamente com o Anthos Service Mesh.Para visualizar a página da Web do BookInfo, insira o seguinte endereço no navegador:
http://EXTERNAL_IP/productpage
Se você atualizar a página várias vezes, verá diferentes versões das avaliações mostradas na página do produto, apresentadas em estilo round-robin (estrelas vermelhas, estrelas pretas, sem estrelas).
Agora que você tem um aplicativo que está gerando tráfego, é possível explorar as páginas do Anthos Service Mesh no Console do Google Cloud para ver métricas e os outros recursos de observabilidade.
A seguir
Saiba mais sobre a amostra do Bookinfo.
Limpar
Quando terminar de testar a amostra do Bookinfo, remova-a do cluster.
Desinstale o Bookinfo usando o seguinte script:
samples/bookinfo/platform/kube/cleanup.sh
Confirme o encerramento:
kubectl get services
kubectl get pods
Os pods do Bookinfo precisam ser excluídos.