检测到您已登录华为云国际站账号,为了您更好的体验,建议您访问国际站服务网站 https://www.huaweicloud.com/intl/zh-cn
不再显示此消息
ImplementationSpecific ingressClassName: nginx 表1 跨域访问配置说明 参数 说明 配置示例 nginx.ingress.kubernetes.io/enable-cors 启用CORS设置,允许跨域访问。 nginx.ingress.kubernetes.io/enable-cors:
参数值为'HTTPS',表示使用HTTPS协议转发请求到后端业务容器。 具体使用场景和说明请参见为Nginx Ingress配置HTTPS协议的后端服务。 创建一致性哈希负载均衡规则 表5 一致性哈希负载均衡注解 参数 类型 描述 nginx.ingress.kubernetes.io/upstream-hash-by
为Nginx Ingress配置GRPC协议的后端服务 本文介绍如何使用Nginx Ingress将流量路由到gRPC后端服务。 gRPC介绍 gRPC是一种高性能、通用的RPC开源软件框架,使用Protocol Buffer作为其接口定义语言(IDL)以及底层消息交换格式。同时
kubernetes.io/elb.id 是 String ELB的ID,仅支持使用已有ELB实例。 kubernetes.io/elb.class 是 String ELB类型。只能使用独享型ELB,即取值必须为performance。 kubernetes.io/elb.multicluster
Nginx Ingress Controller高级配置 高并发业务场景参数优化 针对高并发业务场景,可通过参数配置进行优化: 通过ConfigMap对Nginx Ingress Controller整体参数进行优化。 通过InitContainers对Nginx Ingress
可以选择Nginx Ingress。 ELB Ingress:基于弹性负载均衡ELB(Elastic Load Balance),全托管,免运维,支持千万级并发连接,百万级新建连接。支持对接共享型负载均衡、独享型负载均衡实例。 典型应用场景 类型 典型应用场景 Nginx Ingress
为负载均衡类型的Service配置gzip数据压缩 ELB支持开启数据压缩,通过数据压缩可缩小传输文件大小,提升文件传输效率减少带宽消耗。 该功能依赖ELB能力,使用该功能前请确认当前区域是否支持。ELB已支持的区域请参见数据压缩。 配置数据压缩后,如果您在CCE控制台删除数据压
为负载均衡类型的Service配置HTTP/HTTPS协议 约束与限制 Service使用HTTP/HTTPS协议仅v1.19.16及以上版本集群支持。 表1 ELB支持HTTP/HTTPS协议的场景 ELB类型 使用场景 是否支持HTTP/HTTPS协议 说明 共享型ELB 对接已有ELB
io/elb.security-policy-id String 自定义安全策略的ID,优先级高于系统预置的安全策略。更新时,通过指定空字符串""来移除。 获取方法:在CCE控制台,单击顶部的“服务列表 > 网络 > 弹性负载均衡 > TLS安全策略”,并选择“自定义策略”页签。在列表中复制对应策略名称下的ID即可。
为负载均衡类型的Service配置获取客户端IP 使用共享型ELB创建负载均衡类型的服务时,您可以通过配置annotation配置ELB的监听器获取客户端IP的能力。 使用独享型ELB时默认开启获取客户端IP,无需配置。 配置获取客户端IP后,如果您在YAML中删除对应的annotation,ELB侧的配置将会保留。
-f nginx-deployment.yaml 创建负载均衡类型的Service,并设置“kubernetes.io/elb.pass-through”为“true”。关于负载均衡类型的Service具体创建方法,请参见自动创建负载均衡类型Service。 创建nginx-elb-svc
kubernetes.io/elb.id: <your_elb_id> #本示例中使用已有的独享型ELB,请替换为您的独享型ELB ID kubernetes.io/elb.class: performance # ELB类型 kubernetes.io/elb.protocol-port:
其余参数可保持默认。 如果已有负载均衡(ELB)实例,可以选择已有ELB。 如果没有可选择“自动创建”,创建一个负载均衡器,并同时绑定弹性公网IP。关于参数的详细说明,请参见创建负载均衡类型的服务。 端口配置 协议:TCP 容器端口:80 服务端口:8080 协议:负载均衡监听器端口协议。
String nginx:表示使用Nginx Ingress,未安装NGINX Ingress控制器插件时无法使用。 通过API接口创建Ingress时必须增加该参数。 ingressClassName 是 (仅1.23及以上集群) String nginx:表示使用Nginx Ingress,未安装NGINX
kubernetes.io/elb.class: performance #需使用独享型ELB kubernetes.io/elb.id: <your_elb_id> #替换为您已有的ELB ID kubernetes.io/elb.port-ranges:
ELB类型,仅支持performance,即独享型ELB kubernetes.io/elb.id: 35cb350b-23e6-4551-ac77-10d5298f5204 # 已有ELB的ID kubernetes.io/elb.protocol-port: http:80
为Nginx Ingress配置HTTPS协议的后端服务 Ingress可以代理不同协议的后端服务,在默认情况下Ingress的后端代理通道是HTTP协议的,若需要建立HTTPS协议的通道,可在annotation字段中加入如下配置: nginx.ingress.kubernetes
为负载均衡类型的Service配置自定义EIP 通过CCE自动创建的带有EIP的ELB,可以通过添加Service的annotation(kubernetes.io/elb.custom-eip-id)完成ELB的EIP的自定义配置。 前提条件 已创建Kubernetes集群,且集群版本满足以下要求:
NGINX Ingress控制器插件升级导致集群内Nginx类型的Ingress路由访问异常 问题现象 集群中存在未指定Ingress类型(annotations中未添加kubernetes.io/ingress.class: nginx)的Nginx Ingress路由,NGINX
为负载均衡类型的Service配置HTTP/2 Service支持HTTP/2的方式暴露服务。在默认情况下,客户端与负载均衡之间采用HTTP1.X协议,使用HTTP/2可提升客户端与ELB间的访问性能,但ELB与后端服务器间仍采用HTTP1.X协议。 当负载均衡端口使用HTTPS协议时,支持使用HTTP/2功能。