配置负载均衡器
负载均衡器是一种将流量分发到容器实例的服务。通过利用负载均衡功能,它会自动分配访问流量到计算组件,并转发到这些组件的容器实例。负载均衡可以提升计算组件的容错能力,扩展这些组件的外部服务能力,并增强应用的可用性。
平台管理员可以为平台上的任意集群创建单点或高可用负载均衡器,并统一管理和分配负载均衡器资源。例如,可以将负载均衡分配给项目,确保只有具有相应项目权限的用户才能使用负载均衡。
本节相关概念说明请参考下表。
目录
前提条件
Load Balancer 的高可用需要 VIP,详情请参考配置 VIP。
ALB2 自定义资源(CR)示例
- 当
enableLbSvc为 true 时,会为负载均衡器的访问地址创建一个内部 LoadBalancer 类型服务。lbSvcAnnotations配置参考 LoadBalancer 类型服务注解。 - 查看下方网络模式配置。
- 查看下方资源分配方式。
- 查看下方分配项目。
- 查看下方规格说明。
通过 Web 控制台创建负载均衡器
-
进入 平台管理。
-
在左侧导航栏点击 网络管理 > 负载均衡器。
-
点击 创建负载均衡器。
-
按照以下说明完成网络配置。
-
按照以下说明完成资源配置。
-
点击 创建,创建过程需要一定时间,请耐心等待。
通过 CLI 创建负载均衡器
通过 Web 控制台更新负载均衡器
更新负载均衡器会导致服务中断 3 到 5 分钟,请选择合适时间进行操作!
-
进入 平台管理。
-
在左侧导航栏点击 网络管理 > 负载均衡器。
-
点击 ⋮ > 更新。
-
根据需要更新网络和资源配置。
-
请根据业务需求合理设置规格,也可参考相关如何合理分配 CPU 和内存资源。
-
内部路由 仅支持从禁用状态更新为启用状态。
-
-
点击 更新。
通过 Web 控制台删除负载均衡器
删除负载均衡器后,相关端口和规则也会被删除且无法恢复。
-
进入 平台管理。
-
在左侧导航栏点击 网络管理 > 负载均衡器。
-
点击 ⋮ > 删除,并确认。
通过 CLI 删除负载均衡器
配置监听端口(Frontend)
负载均衡器支持通过监听端口及对应协议接收客户端连接请求,协议包括 HTTPS、HTTP、gRPC、TCP 和 UDP。
前提条件
若需添加 HTTPS 监听端口,还应联系管理员为当前项目分配 TLS 证书以实现加密。
Frontend 自定义资源(CR)示例
- 必填,表示该
Frontend所属的 ALB 实例。 - 格式为
$alb_name-$port。 - 格式为
$secret_ns/$secret_name。 - 该
Frontend本身的协议。http|https|grpc|grpcs用于七层代理。tcp|udp用于四层代理。
- 四层代理时,
serviceGroup必填;七层代理时,serviceGroup可选。当请求到达时,ALB 会先尝试匹配与该Frontend关联的规则,只有请求未匹配任何规则时,才会转发到Frontend配置的默认serviceGroup。 weight配置适用于轮询和加权轮询调度算法。
ALB 监听 ingress 并自动创建 Frontend 或 Rule。source 字段定义如下:
spec.source.type当前仅支持ingress。spec.source.name为 ingress 名称。spec.source.namespace为 ingress 命名空间。
通过 Web 控制台创建监听端口(Frontend)
-
进入 容器平台。
-
在左侧导航栏点击 网络 > 负载均衡。
-
点击负载均衡器名称进入详情页。
-
点击 添加监听端口。
-
参考以下说明配置相关参数。
-
点击 确定。
通过 CLI 创建监听端口(Frontend)
后续操作
对于 HTTP、gRPC 和 HTTPS 端口的流量,除默认内部路由组外,还可设置更多丰富的后端服务匹配规则。负载均衡器会先根据设置的规则匹配对应后端服务,规则匹配失败时再匹配上述内部路由组对应的后端服务。
相关操作
可在列表页右侧点击 ⋮ 图标,或在详情页右上角点击 操作,根据需要更新默认路由或删除监听端口。
若负载均衡器资源分配方式为端口,仅管理员可在平台管理视图中删除相关监听端口。
配置规则
为 HTTPS、HTTP 和 gRPC 协议的监听端口添加转发规则。负载均衡器将根据规则匹配后端服务。
TCP 和 UDP 协议不支持添加转发规则。
Rule 自定义资源(CR)示例
- 必填,表示该规则所属的
Frontend。 - 必填,表示该规则所属的 ALB。
- 同
Frontend。 - 同
Frontend。 - 数值越小优先级越高。
- 同
Frontend。
dslx
dslx 是一种领域专用语言,用于描述匹配条件。
例如,以下规则匹配满足所有条件的请求:
- URL 以 /app-a 或 /app-b 开头
- 请求方法为 POST
- URL 参数 group 等于 vip
- Host 以 .app.com 结尾
- Header 中 LOCATION 值为 east-1 或 east-2
- 存在名为 uid 的 Cookie
- 源 IP 地址在 1.1.1.1 到 1.1.1.100 范围内
通过 Web 控制台创建规则
-
进入 容器平台。
-
在左侧导航栏点击 网络 > 负载均衡。
-
点击负载均衡器名称。
-
点击监听端口名称。
-
点击 添加规则。
-
参考以下说明配置相关参数。
-
点击 添加。
通过 CLI 创建规则
日志与监控
结合可视化日志和监控数据,可快速定位和解决负载均衡器的问题或故障。
查看日志
-
进入 平台管理。
-
在左侧导航栏点击 网络管理 > 负载均衡器。
-
点击 负载均衡器名称。
-
在 日志 标签页,从容器视角查看负载均衡器运行日志。
监控指标
负载均衡器所在集群必须部署监控服务。
-
进入 平台管理。
-
在左侧导航栏点击 网络管理 > 负载均衡器。
-
点击 负载均衡器名称。
-
在 监控 标签页,从节点视角查看负载均衡器的指标趋势信息。
-
使用率:当前节点负载均衡器 CPU 和内存的实时使用情况。
-
吞吐量:负载均衡器实例的整体进出流量。
-