Todos os produtos
Search
Central de documentação

Container Service for Kubernetes:Configure hybrid, cross-region, and on-premises backends

Última atualização: Jun 27, 2026

O ALB Ingress permite usar a anotação alb.ingress.kubernetes.io/actions.<service-name> para configurar grupos de servidores de backend. É possível associar esses grupos pelo nome do serviço ou pelo ID do grupo de servidores, o que viabiliza a associação híbrida de Pods em um cluster K8s e instâncias ECS fora do cluster. Ao combinar produtos como ALB, Cloud Enterprise Network (CEN) e roteadores de trânsito, o ALB encaminha requisições para servidores em VPCs de outras regiões (associação entre regiões) ou para servidores em data centers on-premises (associação on-premises). Este tópico descreve como usar o ALB Ingress para implementar associações híbridas, entre regiões e on-premises.

Sumário

Observações de uso

  • O nome do serviço na anotação alb.ingress.kubernetes.io/actions.<service-name> deve corresponder ao nome do serviço do backend no campo rule.

  • Ao configurar um grupo de servidores de backend no campo rule, defina o nome da porta de serviço em backend como use-annotation.

  • Use a anotação alb.ingress.kubernetes.io/actions.<service name> para associar vários grupos de servidores a uma instância ALB.

  • Uma instância ALB básica suporta no máximo cinco grupos de servidores.

  • Se você associar um grupo de servidores usando tanto ServerGroupID quanto ServiceName+ServicePort, o sistema prioriza o ServerGroupID para identificar o grupo de servidores de backend.

Cenário 1: Encaminhar requisições para múltiplos serviços

Pré-requisitos

Cenário

Conforme ilustrado na figura a seguir, a ação de encaminhamento para múltiplos grupos de servidores do ALB Ingress permite criar ou associar vários grupos de servidores de backend. Configure ServiceName+ServicePort para encaminhar requisições a múltiplos Services no cluster.

image

Procedimento

  1. Configure o ALB Ingress.

    Implante o conteúdo a seguir no arquivo tea-ingress.yaml. Essa configuração define como as requisições são encaminhadas para múltiplos Services no cluster.

    # This Ingress forwards requests to different backend server groups based on the hostname and path, with traffic distributed according to weights.
    apiVersion: networking.k8s.io/v1
    kind: Ingress
    metadata:
      name: tea-ingress
      annotations:
        alb.ingress.kubernetes.io/actions.forward: |
           [{
               "type": "ForwardGroup",
               "ForwardConfig": {
                 "ServerGroups" : [{
                   "ServiceName": "tea-svc",
                   "Weight": 80,
                   "ServicePort": 80
                 },
                 {
                   "ServiceName": "coffee-svc",
                   "Weight": 20,
                   "ServicePort": 80
                 }]
               }
           }]
    spec:
      ingressClassName: alb
      rules:
       - host: demo.domain.ingress.top
         http:
          paths:
          - path: /path
            pathType: Prefix
            backend:
              service:
                name: forward
                port:
                  name: use-annotation
  2. Acesse o serviço pela linha de comando. Para mais informações, consulte Acessar o serviço.

Cenário 2: Encaminhar para pods do cluster e ECS externo

Pré-requisitos

Cenário

Este cenário mostra como encaminhar requisições tanto para pods no cluster quanto para instâncias ECS externas na mesma VPC. Crie um grupo de servidores no console ALB ou via API, adicione a instância ECS externa a ele e referencie seu ServerGroupID na anotação do Ingress. Essa configuração cria um backend híbrido, conforme mostrado na figura a seguir.

image

Procedimento

  1. Configure o ALB Ingress.

    Implante o conteúdo a seguir no arquivo tea-ingress.yaml. Essa configuração define um serviço que encaminha requisições tanto para Pods no cluster quanto para instâncias ECS fora do cluster.

    apiVersion: networking.k8s.io/v1
    kind: Ingress
    metadata:
      name: tea-ingress
      annotations:
        alb.ingress.kubernetes.io/actions.forward: |
           [{
               "type": "ForwardGroup",
               "ForwardConfig": {
                 "ServerGroups" : [{
                   "ServiceName": "tea-svc",
                   "Weight": 30,
                   "ServicePort": 80
                 },
                 {
                   "ServiceName": "coffee-svc",
                   "Weight": 20,
                   "ServicePort": 80
                 },
                 {
                   "ServerGroupID": "sgp-71aexb9y93ypo*****",
                   "Weight": 30
                 },
                 {
                   "ServerGroupID": "sgp-slygpbvm2cydo*****",
                   "Weight": 20
                 }]
               }
           }]
    spec:
      ingressClassName: alb
      rules:
       - host: demo.domain.ingress.top
         http:
          paths:
          - path: /path
            pathType: Prefix
            backend:
              service:
                name: forward
                port:
                  name: use-annotation
  2. Acesse o serviço pela linha de comando. Para mais informações, consulte Acessar o serviço.

Cenário 3: Encaminhar para pods do cluster e ECS entre regiões

Pré-requisitos

Cenário

Este cenário demonstra como usar o CEN para estabelecer uma conexão entre regiões de VPCs. Isso permite adicionar uma instância ECS de uma região diferente a um grupo de servidores. Ao referenciar o ServerGroupID no Ingress, é possível rotear tráfego tanto para pods no cluster quanto para a instância ECS entre regiões, conforme mostrado nas figuras a seguir.

image

Por exemplo, se um cluster ACK ou ACK Serverless e uma instância ALB estiverem implantados na VPC1 na região China (Chengdu), use uma combinação de ALB e CEN para encaminhar requisições a uma instância ECS na VPC2, na região China (Hangzhou).

image

Procedimento

  1. Configure o CEN e crie uma conexão VPC entre regiões.

    Para mais informações, consulte Associar servidores entre regiões a uma instância ALB.

    Nota

    Para ALB Ingress, não é necessário configurar listeners para a instância ALB no console ALB. Configure listeners usando um ALB Ingress na Etapa3.

  2. Adicione a instância ECS entre regiões ao grupo de servidores ALB.

    Para mais informações, consulte Adicionar ou remover servidores de backend.

  3. Use a anotação alb.ingress.kubernetes.io/actions.<service-name> para configurar uma ação de encaminhamento e associar um grupo de servidores existente. Quando um serviço for requisitado, essa ação encaminhará requisições para Pods no cluster e para servidores ECS em uma VPC entre regiões fora do cluster.

    Implante o conteúdo a seguir no arquivo tea-ingress.yaml.

    apiVersion: networking.k8s.io/v1
    kind: Ingress
    metadata:
      name: tea-ingress
      annotations:
        alb.ingress.kubernetes.io/actions.forward: |
           [{
               "type": "ForwardGroup",
               "ForwardConfig": {
                 "ServerGroups" :  [{
                   "ServiceName": "tea-svc",
                   "Weight": 30,
                   "ServicePort": 80
                 },
                 {
                   "ServiceName": "coffee-svc",
                   "Weight": 20,
                   "ServicePort": 80
                 },
                 {
                   "ServerGroupID": "sgp-71aexb9y93ypo*****",
                   "Weight": 30
                 },
                 {
                   "ServerGroupID": "sgp-slygpbvm2cydo*****",
                   "Weight": 20
                 }]
               }
           }]
    spec:
      ingressClassName: alb
      rules:
       - host: demo.domain.ingress.top
         http:
          paths:
          - path: /path
            pathType: Prefix
            backend:
              service:
                name: forward
                port:
                  name: use-annotation

Cenário 4: Encaminhar para pods do cluster e servidores on-premises

Pré-requisitos

Observações de uso

Para limitações sobre a associação de servidores on-premises a uma instância ALB, consulte Limitações.

Cenário

Este cenário mostra como usar CEN, Express Connect e VBR para conectar seu data center on-premises à Alibaba Cloud. Isso permite adicionar servidores on-premises a um grupo de servidores. Ao referenciar o ServerGroupID no Ingress, é possível rotear tráfego tanto para pods no cluster quanto para seus servidores on-premises, conforme mostrado nas figuras a seguir.

image

Por exemplo, se um cluster ACK ou ACK Serverless e uma instância ALB estiverem implantados na VPC1 na região China (Chengdu), use uma combinação de ALB, CEN, VBR e Express Connect para encaminhar requisições a servidores on-premises na mesma região.

image

Procedimento

  1. Configure o CEN para conectar a VPC onde a instância ALB reside e o VBR ao roteador de trânsito. Isso conecta seu data center on-premises à Alibaba Cloud por meio do VBR. Para mais informações, consulte Associar servidores on-premises na mesma região a uma instância ALB.

    Nota

    Para ALB Ingress, não é necessário configurar listeners para a instância ALB no console ALB. Configure listeners usando um ALB Ingress na Etapa2.

  2. Use a anotação alb.ingress.kubernetes.io/actions.<service-name> para configurar uma ação de encaminhamento e associar um grupo de servidores existente especificado. Isso encaminha requisições para Pods no cluster e para servidores de Internet Data Center (IDC) on-premises fora do cluster.

    Implante o conteúdo a seguir no arquivo tea-ingress.yaml.

    apiVersion: networking.k8s.io/v1
    kind: Ingress
    metadata:
      name: tea-ingress
      annotations:
        alb.ingress.kubernetes.io/actions.forward: |
           [{
               "type": "ForwardGroup",
               "ForwardConfig": {
                 "ServerGroups" :  [{
                   "ServiceName": "tea-svc",
                   "Weight": 30,
                   "ServicePort": 80
                 },
                 {
                   "ServiceName": "coffee-svc",
                   "Weight": 20,
                   "ServicePort": 80
                 },
                 {
                   "ServerGroupID": "sgp-ihydxb9y93ypo*****",
                   "Weight": 30
                 },
                 {
                   "ServerGroupID": "sgp-pd0ipbvm2cydo*****",
                   "Weight": 20
                 }]
               }
           }]
    spec:
      ingressClassName: alb
      rules:
       - host: demo.domain.ingress.top
         http:
          paths:
          - path: /path
            pathType: Prefix
            backend:
              service:
                name: forward
                port:
                  name: use-annotation