Service Mesh (ASM) oferece suporte a dois modos sem sidecar: modo Ambient Mesh e modo Alibaba Centralized Mesh Gateway (ACMG). Este tópico descreve como implantar aplicações de exemplo nesses dois modos. Prepare o ambiente antecipadamente para experimentar os recursos dos modos sem sidecar o mais rápido possível.
Pré-requisitos
Cluster Container Service for Kubernetes (ACK) criado que atenda às condições especificadas. Para obter mais informações, consulte a seção "Clusters e configurações Kubernetes suportados" em Limites.
-
Instância ASM criada com o modo Ambient Mesh ou modo ACMG ativado.
Na seção Dataplane Mode da página Create Service Mesh, selecione Enable Ambient Mesh mode ou Enable ACMG Mode. Configure as demais definições conforme seus requisitos de negócios. Para obter mais informações, consulte Criar uma instância ASM.
Cluster ACK adicionado à instância ASM. Para obter mais informações, consulte Adicionar um cluster a uma instância ASM.
Gateway de entrada criado. Para obter mais informações, consulte Criar um gateway de entrada.
Implantar aplicações de exemplo
Neste exemplo, a aplicação Bookinfo é implantada. Para obter mais informações, consulte Implantar uma aplicação em um cluster associado ao ASM.
Implantar aplicações de exemplo no cluster ACK
Faça login no console ASM. No painel de navegação à esquerda, escolha .
Na página Mesh Management, clique em o nome da instância ASM. No painel de navegação à esquerda, escolha .
-
Ative o modo Ambient Mesh ou o modo ACMG.
-
Modo Ambient Mesh
Na página Global Namespace, localize o namespace default e clique em Switch to Ambient Mesh Mode na coluna Dataplane Mode. Na mensagem Submit, clique em OK.
-
Modo ACMG
-
Conecte-se à instância ASM via kubectl usando as informações do arquivo kubeconfig e ative o modo ACMG.
kubectl label namespace default istio.io/dataplane-mode=acmg
-
-
-
Baixe o arquivo YAML da aplicação Bookinfo no repositório Istio no GitHub. Em seguida, execute o comando a seguir para implantar a aplicação Bookinfo no namespace default:
kubectl apply -f bookinfo.yaml -
Implante uma aplicação sleep.
-
Crie um arquivo sleep.yaml com o seguinte conteúdo:
-
Execute o comando a seguir para implantar a aplicação sleep no namespace default:
kubectl apply -f sleep.yaml
-
-
Implante uma aplicação notsleep.
-
Crie um arquivo notsleep.yaml com o seguinte conteúdo:
-
Execute o comando a seguir para implantar a aplicação notsleep no namespace default:
kubectl apply -f notsleep.yaml
-
Implantar recursos de malha na instância ASM
-
Crie um arquivo bookinfo-gateway.yaml com o seguinte conteúdo.
Este arquivo YAML cria um gateway Istio e um serviço virtual.
-
Conecte-se à instância ASM via kubectl usando as informações do arquivo kubeconfig e execute o comando a seguir para implantar os recursos de malha:
kubectl apply -f bookinfo-gateway.yaml
Verificar recursos básicos
-
Configure as variáveis de ambiente para o gateway de entrada executando os comandos a seguir:
export GATEWAY_HOST=istio-ingressgateway.istio-system export GATEWAY_SERVICE_ACCOUNT=ns/istio-system/sa/istio-ingressgateway -
Teste se a aplicação Bookinfo funciona corretamente com ou sem um gateway de entrada executando os comandos a seguir.
-
Execute o seguinte comando:
kubectl exec deploy/sleep -- curl -s "http://$GATEWAY_HOST/productpage" | grep -o "<title>.*</title>"Saída esperada:
<title>Simple Bookstore App</title> -
Execute o seguinte comando:
kubectl exec deploy/sleep -- curl -s http://productpage:9080/ | grep -o "<title>.*</title>"Saída esperada:
<title>Simple Bookstore App</title> -
Execute o seguinte comando:
kubectl exec deploy/notsleep -- curl -s http://productpage:9080/ | grep -o "<title>.*</title>"Saída esperada:
<title>Simple Bookstore App</title>A saída anterior indica que a aplicação Bookinfo funciona corretamente com ou sem um gateway de entrada.
-