文档

使用CLB访问Kubernetes上的EDAS应用

更新时间:

当您使用EDAS将应用托管到Kubernetes上,并且需要统一流量入口时,您可以为EDAS应用绑定CLB实例,将应用Pod作为CLB的后端,由CLB根据转发策略将流量分发到不同的应用Pod。

背景信息

EDAS支持以容器的方式托管应用,EDAS代为构建镜像并部署到Kubernetes集群,有效简化流程降低使用门槛。阿里云上K8s集群中部署的CCM(Cloud Controller Manager)组件已支持将集群内一个应用的多个容器副本无缝对接到CLB后端,并支持应用进行弹性扩缩容时,自动将应用副本添加到CLB监听后端或从后端移除。

使用CLB的两种方式:

  • 在EDAS中部署的应用,可以在应用总览页选择配置新建CLB,使用由EDAS代购的CLB。通过这种方式使用CLB不支持在CLB控制台直接修改该CLB的配置。

  • 在EDAS中复用已有CLB,在应用总览页选择已经在CLB控制台创建的CLB,配置EDAS应用端口监听,在暴露EDAS应用同时不影响CLB已有监听。详细操作,请参考复用负载均衡CLB

约束限制

  • 禁止从负载均衡控制台直接修改EDAS代购的CLB实例的监听配置(含监听和证书),这可能导致CLB控制台修改的配置回退,引发应用入口相关的故障。

  • 若复用CLB来暴露K8s上EDAS应用,则创建的CLB要和K8s集群在同一个VPC内。

  • 新建CLB或复用CLB的使用限制及配额,请参考使用限制

前提条件

您已成功在EDAS控制台导入Kubernetes集群并部署了一个EDAS应用。

单应用独享负载均衡实例

使用CLB可以为一个应用的多个后端副本提供一个稳定的对外访问地址,并进行流量负载均衡。可以使用不同CLB为一个应用的不同程序端口提供对外访问,且不同的CLB可以配置不同的实例规格,以支持不同服务的不同业务流量需求。也可以使用多个CLB绑定同一组后端副本,以扩展单个CLB的规格限制,分担流量压力。

使用CLB访问ACK应用

K8s上EDAS应用支持使用公网CLB和私网CLB组合方式提供应用访问。能够使用公网CLB提供Web应用公网访问,使用私网CLB提供后端其他应用间内网访问。您可以根据业务实际需求配置各自的应用及负载均衡。

公司网CLB结合K8s应用

本文以公网CLB为例进行介绍。

  1. 登录EDAS控制台

  2. 在左侧导航栏,单击应用管理 > 应用列表,在顶部菜单栏选择地域并在页面上方选择微服务空间,在集群类型下拉列表中选择K8s集群,然后单击目标应用名称

  3. 基本信息页面中基本信息页签的应用设置区域,单击负载均衡(公网)右侧的添加

  4. 在弹出的页面中,选择CLB并完成端口配置。完成后单击确认

多应用共享负载均衡实例

为了降低成本,减少CLB的实例数,EDAS允许多个应用共享一个CLB来支持对外服务访问。

支持多个应用通过配置不同的监听端口使用一个CLB对外访问。您也可以配置基于域名及URL的转发,详情可参考创建应用路由(Nginx Ingress)

本文以基于不同端口的转发为例进行介绍。在EDAS中,找到需要使用CLB的应用,在进行访问配置时,选择同一个CLB并配置不同的端口映射,即可支持多个应用使用同一个CLB。

复用CLB

说明
  • 复用CLB需要您持有一个或多个处于运行中状态的CLB实例。具体操作,请参见创建和管理CLB实例

  • 如果需要使用公网CLB绑定应用,则需CLB网络类型为公网;如果需要使用私网CLB绑定应用,则需要CLB网络类型为私网。

  • CLB实例和K8s集群位于同一地域。

  • 如果CLB实例和K8s集群实例的网络类型均为专有网络,则必须位于同一专有网络。

本文以公网CLB为例进行介绍。

  1. 登录EDAS控制台

  2. 在左侧导航栏,单击应用管理 > 应用列表,在顶部菜单栏选择地域并在页面上方选择微服务空间,在集群类型下拉列表中选择K8s集群,然后单击目标应用名称

  3. 基本信息页面中基本信息页签的应用设置区域,单击负载均衡(公网)右侧的添加

  4. 在弹出的页面中,选择CLB并完成端口配置。完成后单击确认

  • 本页导读 (1)
文档反馈