如何在L7上的GKE上为GRPC服务进行负载平衡(通过HTTP / 2 + TLS接入)?
我知道我可以选择使用L4(TCP层)将服务配置为“ LoadBalancer”类型。但是我想知道是否可以在HTTP / 2 + TLS上使用Ingress + L7负载平衡。
我还看到“ GKE不支持HTTP / 2到后端。” (在https://cloud.google.com/load-balancing/docs/backend-service#HTTP2-limitations上)。但是我不知道这是不是真的。
答案 0 :(得分:1)
GKE Ingress可以load balance with HTTP/2。
要在负载均衡器(入口控制器)和pod之间获得HTTP / 2,您的服务需要额外的注释:
apiVersion: v1
kind: Service
metadata:
annotations:
cloud.google.com/app-protocols: '{"my-port":"HTTP2"}'
此外,您的Pod大多使用TLS,并配置了ALPN h2。这可以例如完成HAProxy作为http2 configuration的辅助工具。我已经在GKE上成功使用了此设置。