Todos os produtos
Search
Central de documentação

Alibaba Cloud Service Mesh:Configure um gateway de entrada unificado para múltiplos clusters

Última atualização: Jun 28, 2026

O gateway do ASM oferece suporte à implantação em vários clusters para aumentar a disponibilidade do serviço. Implante seus serviços em múltiplos clusters e configure um gateway de entrada unificado para atuar como proxy de todo o tráfego de entrada. Este tópico descreve como configurar um gateway de entrada unificado para múltiplos clusters.

Pré-requisitos

Visão geral da configuração

Ao implantar um gateway do ASM em múltiplos clusters, o sistema cria pods de gateway e Services correspondentes em cada cluster e anexa uma instância CLB a cada Service. Consequentemente, um gateway multicluste possui vários endereços IP.

O gateway do ASM permite reutilizar instâncias CLB existentes, mas não utilize a mesma instância CLB para múltiplos Services.

Este tópico aborda os métodos de configuração para os dois cenários a seguir:

Cenário 1: As configurações de recursos relacionados ao gateway são idênticas em todos os clusters

Quando os recursos relacionados ao gateway são idênticos em todos os clusters, crie um gateway multicluste pelo console do ASM ou converta um gateway de cluster único existente em um gateway multicluste. O ASM cria gateways com configurações idênticas em todos os clusters especificados, com base na sua configuração.

Método 1: Criar um gateway multicluste

Crie um gateway multicluste pelo console do ASM utilizando as opções de configuração da interface ou um arquivo YAML.

  1. Faça login no console do ASM. No painel de navegação à esquerda, escolha Service Mesh > Mesh Management.

  2. Na página Mesh Management, clique em nome da instância do ASM. No painel de navegação à esquerda, escolha ASM Gateways > Ingress Gateway.

  3. Crie um gateway multicluste.

    • Método 1: Criar um gateway multicluste usando as opções de configuração da interface

      1. Na página Ingress Gateway, clique em Create.

      2. Na página Create, selecione vários clusters de destino em Cluster, defina as outras configurações conforme necessário e clique em Create.

        Para obter detalhes sobre outras opções de configuração, consulte Criar um gateway de entrada. 入口网关配置

    • Método 2: Criar um gateway multicluste usando um arquivo YAML

      1. Na página Ingress Gateway, clique em Create from YAML.

      2. Na página Create, configure o seguinte YAML e clique em Create.

        apiVersion: istio.alibabacloud.com/v1beta1
        kind: IstioGateway
        metadata:
          name: ingressgateway-multi-cluster
          namespace: istio-system
        spec:
          affinity: {}
          autoCreateGatewayYaml: false
          clusterIds:
            - c87e370627c3f4e62ac77a7*********
            - c877e9b78610a419e833f22*********
          compression: {}
          cpu: {}
          dnsPolicy: ClusterFirst
          externalTrafficPolicy: Local
          gatewayType: ingress
          hostNetwork: false
          kernel:
            parameters: {}
          memory: {}
          ports:
            - name: http-0
              port: 80
              protocol: HTTP
              targetPort: 80
            - name: https-1
              port: 443
              protocol: HTTPS
              targetPort: 443
          readinessProbe: {}
          replicaCount: 2
          resources:
            limits:
              cpu: '2'
              memory: 4G
            requests:
              cpu: 200m
              memory: 256Mi
          runAsRoot: true
          sds: {}
          serviceAnnotations:
            service.beta.kubernetes.io/alibaba-cloud-loadbalancer-spec: slb.s1.small
            service.beta.kubernetes.io/alicloud-loadbalancer-address-type: internet
          serviceType: LoadBalancer

Método 2: Converter um gateway de cluster único em um gateway multicluste

Caso já possua um gateway de cluster único, adicione os IDs dos clusters necessários ao array spec.clusterIds no YAML do gateway para convertê-lo em um gateway multicluste.

  1. Faça login no console do ASM. No painel de navegação à esquerda, escolha Service Mesh > Mesh Management.

  2. Na página Mesh Management, clique em nome da instância do ASM. No painel de navegação à esquerda, escolha ASM Gateways > Ingress Gateway.

  3. Na página Ingress Gateway, clique em View YAML ao lado do gateway de destino.

  4. Na caixa de diálogo Edit, adicione o ID do cluster de destino ao campo spec.clusterIds e clique em OK.

    YAML示例

Verificar se o gateway multicluste foi criado com sucesso

Verifique os recursos relacionados ao gateway, como Services e Deployments, no namespace istio-system de ambos os clusters do plano de dados. Se ambos os clusters contiverem recursos configurados de forma idêntica, o gateway multicluste foi criado com sucesso.

Cenário 2: As configurações de recursos relacionados ao gateway diferem entre os clusters

Talvez seja necessário ter configurações de gateway diferentes para cada um dos dois clusters onde o gateway está implantado. Por exemplo, um cluster pode exigir um CLB criado automaticamente, enquanto o outro reutiliza um CLB existente. Ou um cluster precisa de três réplicas de gateway, enquanto o outro requer cinco. Para personalizar as configurações do gateway multicluste, modifique o arquivo YAML correspondente. O exemplo a seguir mostra como configurar tipos diferentes de CLB para um novo gateway multicluste: um cluster usa um CLB criado automaticamente e o outro reutiliza um CLB existente.

  1. Faça login no console do ASM. No painel de navegação à esquerda, escolha Service Mesh > Mesh Management.

  2. Na página Mesh Management, clique em nome da instância do ASM. No painel de navegação à esquerda, escolha ASM Gateways > Ingress Gateway.

  3. Na página Ingress Gateway, clique em Create from YAML.

  4. Na página Create, configure o seguinte YAML e clique em Create.

    apiVersion: istio.alibabacloud.com/v1beta1
    kind: IstioGateway
    metadata:
      name: ingressgateway2
      namespace: istio-system
    spec:
      autoCreateGatewayYaml: false
      clusterIds:
        - c0ed16dbd6c5e429faca464**********
        - c7d5fba8f3c974353b56522**********
      compression: {}
      cpu: {}
      dnsPolicy: ClusterFirst
      externalTrafficPolicy: Local
      gatewayType: ingress
      hostNetwork: false
      kernel:
        parameters: {}
      memory: {}
      overrides:
        c0ed16dbd6c5e429faca464***********:
          serviceAnnotations:
            service.beta.kubernetes.io/alibaba-cloud-loadbalancer-spec: slb.s1.small
            service.beta.kubernetes.io/alicloud-loadbalancer-address-type: internet
        c7d5fba8f3c974353b56522**********:
          serviceAnnotations:
            service.beta.kubernetes.io/alibaba-cloud-loadbalancer-id: lb-bp1lv01rlga********
      ports:
        - name: http-0
          port: 80
          protocol: HTTP
          targetPort: 80
        - name: https-2
          port: 443
          protocol: HTTPS
          targetPort: 443
      readinessProbe: {}
      replicaCount: 1
      resources:
        limits:
          cpu: '2'
          memory: 4G
        requests:
          cpu: 200m
          memory: 256Mi
      rollingMaxSurge: 25%
      rollingMaxUnavailable: 25%
      runAsRoot: true
      sds: {}
      serviceType: LoadBalancer

    O campo overrides utiliza uma estrutura de mapa. As chaves são os IDs dos clusters e os valores usam os mesmos nomes de campos presentes no spec do gateway. É possível definir parâmetros relacionados ao CLB, o número de réplicas do gateway, especificações de recursos do gateway e outras configurações individualmente para cada cluster no campo overrides. As definições neste campo têm precedência sobre as configurações de nível superior do gateway. Para mais informações sobre esses campos, consulte Referência de CRD do gateway do ASM.

  5. Verifique se o gateway multicluste foi criado com sucesso.

    Confira o Service relacionado ao gateway no namespace istio-system de cada cluster. Se o Service de um cluster utilizar o IP de um CLB criado automaticamente e o outro usar o IP de um CLB especificado, o gateway multicluste foi criado com sucesso.