检测到您已登录华为云国际站账号,为了您更好的体验,建议您访问国际站服务网站 https://www.huaweicloud.com/intl/zh-cn
不再显示此消息
负载均衡(LoadBalancer) 创建负载均衡类型的服务 使用Annotation配置负载均衡类型的服务 为负载均衡类型的Service配置HTTP/HTTPS协议 为负载均衡类型的Service配置服务器名称指示(SNI) 为负载均衡类型的Service配置跨集群的后端 为
使用独享型ELB时,ELB可以直通Pod(即Pod直接作为ELB的后端服务器组),因此Service开启基于源IP的会话保持无需配置服务亲和及应用反亲和。 使用共享型ELB时,不支持开启会话保持。 操作步骤 独享型ELB场景 以使用已有的ELB为例,Service的负载均衡配置源IP地址会话保持的YAML示例如下。
当集群使用共享VPC时,不支持自动创建共享型ELB。 表1 ELB配置 创建方式 配置 选择已有 仅支持选择与集群在同一个VPC下的ELB实例。如果没有可选的ELB实例,请单击“创建负载均衡器”跳转到ELB控制台创建。 自动创建 实例名称:请填写ELB名称。 企业项目:该参数仅对开通企业
为负载均衡类型的Service配置HTTP/HTTPS协议 约束与限制 Service使用HTTP/HTTPS协议仅v1.19.16及以上版本集群支持。 表1 ELB支持HTTP/HTTPS协议的场景 ELB类型 使用场景 是否支持HTTP/HTTPS协议 说明 共享型ELB 对接已有ELB
kubernetes.io/elb.id 是 String ELB的ID,仅支持使用已有ELB实例。 kubernetes.io/elb.class 是 String ELB类型。只能使用独享型ELB,即取值必须为performance。 kubernetes.io/elb.multicluster
为负载均衡类型的Service配置gzip数据压缩 ELB支持开启数据压缩,通过数据压缩可缩小传输文件大小,提升文件传输效率减少带宽消耗。 该功能依赖ELB能力,使用该功能前请确认当前区域是否支持。ELB已支持的区域请参见数据压缩。 配置数据压缩后,如果您在CCE控制台删除数据压
kubernetes.io/elb.class: performance # ELB类型,TLS监听器仅支持performance,即独享型ELB kubernetes.io/elb.id: 35cb3
为负载均衡类型的Service配置HTTP/2 Service支持HTTP/2的方式暴露服务。在默认情况下,客户端与负载均衡之间采用HTTP1.X协议,使用HTTP/2可提升客户端与ELB间的访问性能,但ELB与后端服务器间仍采用HTTP1.X协议。 当负载均衡端口使用HTTPS协议时,支持使用HTTP/2功能。
union:共享型负载均衡。 performance:独享型负载均衡,仅支持1.17及以上集群,详情请参见共享型弹性负载均衡与独享型负载均衡的功能区别。 v1.9及以上 kubernetes.io/elb.id String 仅关联已有ELB的场景:必填。 为负载均衡实例的ID。 获取方法:
kubernetes.io/elb.class: performance #需使用独享型ELB kubernetes.io/elb.id: <your_elb_id> #替换为您已有的ELB ID kubernetes.io/elb.port-ranges:
为负载均衡类型的Service配置获取客户端IP 使用共享型ELB创建负载均衡类型的服务时,您可以通过配置annotation配置ELB的监听器获取客户端IP的能力。 使用独享型ELB时默认开启获取客户端IP,无需配置。 配置获取客户端IP后,如果您在YAML中删除对应的annotation,ELB侧的配置将会保留。
io/elb.class: performance # ELB类型 kubernetes.io/elb.id: 65318265-4f01-4541-a654-fa74e439dfd3 # 已有ELB的ID kubernetes.io/elb.protocol-port:
kubernetes.io/elb.class: union # 负载均衡类型 kubernetes.io/elb.id: <your_elb_id> # ELB ID,替换为实际值 kubernetes.io/elb.lb-algorithm:
kubernetes.io/elb.class: performance # ELB类型,仅支持performance,即独享型ELB kubernetes.io/elb.id: 35cb350b-23e6
kubernetes.io/elb.id: <your_elb_id> #本示例中使用已有的独享型ELB,请替换为您的独享型ELB ID kubernetes.io/elb.class: performance # ELB类型 kubernetes.io/elb.protocol-port:
”,在弹出的窗口中选择负载,然后单击“确定”。 负载均衡器: 选择对接的ELB实例,仅支持与集群在同一个VPC下的ELB实例。如果没有可选的ELB实例,请单击“创建负载均衡器”跳转到ELB控制台创建。或者选择“自动创建”一个ELB实例,配置参数请参见表1。 健康检查:默认为“全局检查”,您可根据需求进行设置。
kubernetes.io/elb.id: <your_elb_id> #替换为您已有的ELB ID kubernetes.io/elb.ip: <your_elb_ip> #替换为您已有的ELB IP kubernetes.io/elb.class: performance
Service四层转发:不同类型的Service获取源IP的方式及原理不同。 负载均衡类型Service:将弹性负载均衡器作为流量入口,支持使用共享型或独享型的弹性负载均衡器。 共享型弹性负载均衡器需要在监听器上开启“获取客户端IP”功能。 独享型弹性负载均衡器在监听器上默认启用“获取客户端IP”功能,无需用户手动设置。
本文以绑定ELB类型Service的nginx应用为例,详细步骤如下: ELB侧开启获取客户端IP 独享型ELB默认开启源地址透传功能,无需手动开启。 在管理控制台左上角单击图标,选择区域和项目。 选择“服务列表 > 网络 > 弹性负载均衡 ELB”。 在“弹性负载均衡器”界面,单击需要操作的负载均衡名称。
ELB Ingress出现告警:Invalid input for rules 问题现象 创建或更新ELB Ingress时出现告警,信息如下: Update elb(*****) listener(*****)error: status_code: 400, resp_body