如果部署的应用需要对公网提供访问,需要部署一个入口网关到集群中。本文介绍如何为ASM实例中的ACK集群添加入口网关。

前提条件

已创建至少一个ASM实例,并已添加至少一个ACK集群到该实例中。

背景信息

入口网关(Ingress Gateway)为Kubernetes集群提供了七层网关功能,对外提供一个统一的七层服务入口,根据HTTP请求的内容将来自同一个TCP端口的请求分发到不同的Kubernetes服务。

操作步骤

  1. 登录ASM控制台
  2. 在左侧导航栏中,选择网格管理,在右侧打开的页面中,单击要配置的ASM实例或操作列的管理
  3. 数据平面区域,单击入口网关服务,然后单击部署入口网关
  4. 部署入口网关页面,为集群添加入口网关。
    1. 部署集群列表中选择要部署入口网关的集群。
    2. 指定负载均衡的类型,公网访问内网访问
    3. 选择负载均衡。
      • 使用已有负载均衡:从已有负载均衡列表中选择。
      • 新建负载均衡:单击新建负载均衡,从下拉列表中选择所需的负载均衡规格。
      说明 建议您为每个Kubernetes服务分配一个SLB。如果多个Kubernetes服务复用同一个SLB,存在以下风险和限制:
      • 使用已有的SLB会强制覆盖已有监听,可能会导致您的应用不可访问。
      • Kubernetes通过Service创建的SLB不能复用,只能复用您手动在控制台(或调用OpenAPI)创建的SLB。
      • 复用同一个SLB的多个Service不能有相同的前端监听端口,否则会造成端口冲突。
      • 复用SLB时,监听的名字以及虚拟服务器组的名字被Kubernetes作为唯一标识符。请勿修改监听和虚拟服务器组的名字。
      • 不支持跨集群复用SLB。
      部署入口网关
  5. 配置端口映射。
    1. 单击添加端口
    2. 在新增端口行中,输入服务端口和容器端口。
      说明
      • 建议容器端口与服务端口一致,并在Istio网关资源定义中启用了该端口。
      • 控制台默认提供了4个Istio常用的端口,但并不意味着必须从中选择,您可以根据需要自行添加或删除端口。
  6. 单击确定

执行结果

添加入口网关之后,可登录容器服务控制台查看详情。
  • 查看新添加的入口网关的服务信息。
    1. 登录容器服务控制台,在左侧导航栏中选择路由与负载均衡 > 服务
    2. 服务(Service)页面,从集群下拉列表中选择对应的集群,从命名空间下拉列表中选择istio-system
    3. 如需查看详细信息,单击操作列的详情
    入口网关
  • 查看新添加的入口网关的Pod信息。
    1. 登录容器服务控制台,在左侧导航栏中选择应用 > 容器组
    2. 容器组(Pod)页面,从集群下拉列表中选择对应的集群,从命名空间下拉列表中选择istio-system
    3. 如需查看详细信息,单击操作列的详情