k8s负载均衡器问题
老师,这一章节有点没明白。
k8s没有内置的负载均衡器吗?
能不能在service所在的节点上开通对外的端口?然后外界访问service,service再去访问多个pod,不就实现了负载均衡了吗?
设置了type=loadBalancer是什么意思?是在service外面又封装了一层腾讯云的负载均衡器?
25
收起
正在回答 回答被采纳积分+1
1回答
bobby
2022-12-02 11:21:42
目前k8s不支持grpc的负载均衡,主要支持http的负载均衡,你这里使用service的话配合着type=loadBalancer确实会有负载均衡的效果,但是注意:
service不会帮你维护grpc连接池,这就意味着你每次调用grpc服务的时候你都不得不去dial拨号,这样你每次拨号会给你做负载均衡选择一个节点连接,但是这样的话你的grpc长链接就变成短连接了,grpc长链接优势全无, 所以想要做grpc负载均衡你得自己去注册中心拉取服务地址并在本地维护连接池,这样每次调用的时候都会从连接池中获取一个连接而不用重连,所以你想用grpc的负载均衡你可以使用k8s的coredns作为服务发现的地址,但是你的程序也不能强依赖k8s的coredns,因为这样就意味着你的服务想要部署以后不得不部署一套k8s了
相似问题
登录后可查看更多问答,登录/注册
恭喜解决一个难题,获得1积分~
来为老师/同学的回答评分吧
0 星