Todos os produtos
Search
Central de documentação

Microservices Engine:Configurar roteamento baseado em tags

Última atualização: Jun 28, 2026

Use o recurso de roteamento baseado em tags para marcar tráfego ou máquinas. Isso permite direcionar o tráfego com características específicas para nós determinados. Esse recurso é ideal para cenários como blue-green deployments e canary releases.

Pré-requisitos

Limites

Nota

Esta seção descreve os limites aplicáveis às aplicações com o Microservices Governance habilitado.

Para mais informações sobre as versões do Java e os frameworks compatíveis com o roteamento baseado em tags, consulte Frameworks Java compatíveis com o Microservices Governance.

Cenários

Desenvolvimento e teste de múltiplas versões

O desenvolvimento simultâneo de várias versões exige um ambiente específico para cada uma, o que eleva os custos. Para reduzir despesas, use o roteamento baseado em tags e implemente o ajuste de tráfego ponta a ponta. Esse mecanismo direciona fluxos específicos para ambientes de desenvolvimento dedicados. Por exemplo, no Ambiente de Desenvolvimento 1, crie a Tag 1 para a Aplicação B (V1.1) e a Aplicação D (V1.1) e configure uma regra de roteamento baseada em tags. Assim, quando a Aplicação A chamar a Aplicação B, o sistema verificará se o tráfego atende às condições da regra. Em caso positivo, o tráfego será roteado para a Aplicação B (V1.1) no Ambiente de Desenvolvimento 1; caso contrário, seguirá para a Aplicação B (V1) no ambiente base. Nas chamadas da Aplicação C para a Aplicação D, o roteamento ocorrerá para a versão V1 ou V1.1 conforme a regra definida.

Ajuste de tráfego para aplicação com múltiplas versões

Se diversas versões de uma aplicação estiverem online simultaneamente e implantadas em ambientes distintos, como comum e especial, use o roteamento baseado em tags para isolar o tráfego destinado a cada versão. É possível, por exemplo, enviar pedidos de promoções relâmpago ou de canais específicos para o ambiente especial e manter o tráfego regular no ambiente comum. Isso garante que falhas no ambiente especial não afetem o ambiente comum, pois o isolamento impede o redirecionamento indevido de requisições.

Testes A/B

Com múltiplas versões da aplicação rodando simultaneamente online, use o ajuste de tráfego ponta a ponta para realizar testes A/B. Direcione o tráfego originado na Região A para a Aplicação V1 e o da Região B para a Aplicação V1.1. Essa estratégia valida diferentes versões com segurança, reduz riscos no lançamento de novos produtos ou recursos e facilita a inovação.

Habilitar o Microservices Governance para a aplicação no cluster ACK e adicionar tags às instâncias

Nesta seção, adicione as tags tag1 e tag2 às instâncias de uma aplicação chamada spring-cloud-a e divida-as em dois grupos. Se uma requisição corresponder a uma regra, ela será roteada para a instância com a tag específica. Caso nenhuma regra seja atendida, o roteamento seguirá a porcentagem de tráfego configurada.

  1. Faça login no console do ACK.

  2. No painel de navegação à esquerda, clique em Clusters. Em seguida, clique no nome do cluster que deseja gerenciar.

  3. No painel de navegação à esquerda, escolha Workloads > Deployments.

  4. No canto superior direito da página Deployments, clique em Create from Image.

  5. No assistente Create, crie dois deployments chamados spring-cloud-a-tag1 e spring-cloud-a-tag2. Para mais informações, consulte Criar uma carga de trabalho sem estado (Deployment).

    Parâmetro

    Descrição

    Replicas

    Defina este parâmetro como 1.

    Type

    Selecione Deployment.

    Image Name

    Escolha a imagem criada. Clique em Select images ao lado do campo Image Name. Na caixa de diálogo Select images and image tags, selecione China (Hangzhou) na lista suspensa de região e escolha registry.cn-hangzhou.aliyuncs.com/mse-governance-demo/spring-cloud-a:3.0.1.

  6. Habilite o Microservices Governance para spring-cloud-a-tag1 e spring-cloud-a-tag2 e adicione tags a ambos.

    1. Acesse a página Deployments. Selecione o namespace ao qual spring-cloud-a-tag1 pertence na lista suspensa Namespace. Localize spring-cloud-a-tag1 e escolha More > View in YAML na coluna Actions. Repita as mesmas operações para spring-cloud-a-tag2.

    2. Na caixa de diálogo Edit YAML, adicione os seguintes rótulos em spec > template > metadata para spring-cloud-a-tag1. Execute a mesma operação para spring-cloud-a-tag2. Após esta etapa, o Microservices Governance estará habilitado para ambas as aplicações.

      labels:
        msePilotAutoEnable: "on"
        msePilotCreateAppName: <your-app-name>
        alicloud.service.tag: <tag>
      Nota
      • Substitua <your-app-name> pelo nome da aplicação utilizado no Microservices Governance. Neste exemplo, o nome é spring-cloud-a.

      • Substitua <tag> por tag1 ou tag2.

    3. Clique em Update.

Criar regras de roteamento baseado em tags para a aplicação no console MSE

  1. Faça login no console do MSE e selecione uma região na barra de navegação superior.

  2. No painel de navegação à esquerda, escolha Microservices Governance > Application Governance.

  3. Na página Application list, selecione o namespace desejado, pesquise a aplicação spring-cloud-a criada no cluster ACK e clique nela.

  4. No painel de navegação à esquerda, clique em Traffic management. Na página exibida, clique na aba Label routing para visualizar as configurações de roteamento baseado em tags.

  5. Na aba Label Routing, configure a Flow ratio específica para tags e clique em Save.

    image

  6. Localize a tag à qual deseja adicionar uma regra de tráfego e clique em Add na coluna Traffic rules. No painel Create Tag-based Routing, configure os parâmetros e clique em OK.

    image

    Nota

    Ao usar o roteamento baseado em tags, as condições de roteamento definidas na regra têm prioridade. Se o tráfego atender à regra, ele será direcionado ao pod correspondente à tag especificada. Caso contrário, o roteamento seguirá a porcentagem de tráfego definida.

    Parâmetro

    Descrição

    Routing Rule Name

    Nome da regra de roteamento baseada em tags. Exemplo: test-springcloud.

    Application

    Nome da aplicação. Exemplo: spring-cloud-a.

    Tag

    Tag adicionada à aplicação no cluster ACK. Exemplo: tag2.

    Application Instance

    Endereço IP e número da porta da instância da aplicação associada a esta tag.

    Traffic Rules

    Framework Type

    Selecione Spring Cloud ou Dubbo conforme o framework da aplicação.

    • Spring Cloud: Escolha um caminho de URL na lista suspensa, como /getIp, ou especifique um caminho personalizado.

    • Dubbo: Selecione um serviço e uma interface específicos.

    Condition Mode

    Escolha Meet All Conditions ou Meet One of Conditions de acordo com seus requisitos de negócio.

    Conditions

    • Se Framework Type estiver definido como Spring Cloud, selecione Parameter, Cookie, Header ou Body Content na lista suspensa Parameter Type. Exemplos de configuração: name=xiaoming para Parameter e hello = "world" or hello = "world2" para Cookie.

    • Para Framework Type definido como Dubbo, configure o parâmetro Expression for Getting Parameter Values.

Verificar o resultado

Valide o resultado conforme seus requisitos de negócio.

  • Crie uma regra para rotear todo o tráfego para spring-cloud-a-tag1.

    image

  • Configure uma regra para direcionar o tráfego que atenda a condições específicas para aplicações determinadas.

    image

Referências

Para mais detalhes sobre como implementar canary releases ponta a ponta, consulte Canary release ponta a ponta.