使用多个CLB访问ASM网关

您可以为ASM网关绑定多个CLB,实现多个CLB可以访问一个ASM网关。本文介绍如何为ASM网关绑定多个CLB后,使用多个CLB访问ASM网关。

前提条件

操作步骤

您需要通过创建Service的方式为ASM网关创建额外的CLB。

说明

如果您删除了额外绑定的Service,CLB也会被删除。

  1. 登录容器服务管理控制台

  2. 在控制台左侧导航栏,单击集群

  3. 集群列表页面,单击目标集群名称或者目标集群右侧操作列下的详情

  4. 在集群管理页左侧导航栏,选择网络 > 服务

  5. 服务页面顶部,设置命名空间istio-system,在右上角单击使用YAML创建资源

  6. 创建页面,设置示例模板自定义,将以下内容复制到模板文本框中,单击创建

    重要

    nodePort不能与已有端口重复。

    apiVersion: v1
    kind: Service
    metadata:
      annotations:
        service.beta.kubernetes.io/alibaba-cloud-loadbalancer-spec: slb.s1.small
        service.beta.kubernetes.io/alicloud-loadbalancer-address-type: internet
      labels:
        app: istio-ingressgateway
        asm-system: 'true'
        istio: ingressgateway
      name: istio-ingressgateway-2
      namespace: istio-system
    spec:
      externalTrafficPolicy: Cluster
      ports:
        - name: http-0
          nodePort: 30544
          port: 80
          protocol: TCP
          targetPort: 80
        - name: https-2
          nodePort: 30682
          port: 443
          protocol: TCP
          targetPort: 443
      selector:
        app: istio-ingressgateway
        asm-system: 'true'
        istio: ingressgateway
        provider: asm
      sessionAffinity: None
      type: LoadBalancer
    • name:服务的名称,本文设置为istio-ingressgateway-2

    • service.beta.kubernetes.io/alibaba-cloud-loadbalancer-spec:设置CLB规格。可选:slb.s1.smallslb.s2.smallslb.s2.mediumslb.s3.smallslb.s3.mediumslb.s3.large

    • service.beta.kubernetes.io/alicloud-loadbalancer-address-type:设置CLB的网络类型。可选:

      • internet:公网。

      • intranet:私网。

    Service创建成功后,会自动创建新的CLB。

  7. 使用多个CLB访问ASM网关。

    1. 在ACK集群的服务页面获取istio-ingressgateway和istio-ingressgateway-2 External IP列下的80端口的IP地址。

    2. 在浏览器地址栏中分别输入http://<istio-ingressgateway的IP地址>/productpagehttp://<istio-ingressgateway-2的IP地址}>/productpage

      Bookinfo

      2个地址都返回以上Bookinfo应用页面,说明使用多个CLB访问ASM网关成功。