更新时间:2025-02-28 GMT+08:00
为ELB Ingress配置HTTP/2
Ingress支持HTTP/2的方式暴露服务,在默认情况下,客户端与负载均衡之间采用HTTP1.X协议,若需开启HTTP2功能,可在annotation字段中加入如下配置:
kubernetes.io/elb.http2-enable: 'true'
- 当负载均衡端口使用HTTPS协议时,支持使用HTTP/2功能。
- 该特性从v1.23.13-r0、v1.25.8-r0、v1.27.5-r0、v1.28.3-r0集群版本开始支持。
- 配置HTTP/2后,如果您在CCE控制台删除开启HTTP/2的高级配置或在YAML中删除对应的annotation,ELB侧的配置将会保留。
以关联已有ELB为例,yaml配置文件如下。
apiVersion: networking.k8s.io/v1
kind: Ingress
metadata:
name: ingress-test
annotations:
kubernetes.io/elb.id: <your_elb_id> #替换为您已有的ELB ID
kubernetes.io/elb.ip: <your_elb_ip> #替换为您已有的ELB IP
kubernetes.io/elb.port: '443'
kubernetes.io/elb.http2-enable: 'true' # 开启HTTP/2功能
spec:
tls:
- secretName: ingress-test-secret
rules:
- host: ''
http:
paths:
- path: '/'
backend:
service:
name: <your_service_name> #替换为您的目标服务名称
port:
number: 8080 #替换为您的目标服务端口
property:
ingress.beta.kubernetes.io/url-match-mode: STARTS_WITH
pathType: ImplementationSpecific
ingressClassName: cce
|
参数 |
是否必填 |
参数类型 |
描述 |
|---|---|---|---|
|
kubernetes.io/elb.http2-enable |
否 |
String |
表示HTTP/2功能的开启状态。开启后,可提升客户端与ELB间的访问性能,但ELB与后端服务器间仍采用HTTP1.X协议。 取值范围:
注意:只有当监听器的协议为HTTPS时,才支持开启或关闭HTTP/2功能。当监听器的协议为HTTP时,该字段无效,默认将其设置为false。 |
父主题: ELB Ingress管理