kubernetes中的metalLB vs nodeport

时间:2019-03-16 11:48:04

标签: kubernetes load-balancing

https://kubernetes.github.io/ingress-nginx/deploy/baremetal/中 在metalLB模式下,一个节点为ingress-nginx吸引了所有流量 通过节点端口,我们可以按服务收集所有流量并进行负载均衡

节点端口和metalLB之间的区别是什么?

2 个答案:

答案 0 :(得分:1)

此处的Kubernetes服务中对此进行了详细的介绍:

Christophe's prompt

总结:

NodePort在端口上公开该服务,然后可以从外部对其进行访问。

LoadBalancer使用“云提供程序”选项公开端口。例如。使用Azure负载平衡器,并且可以潜在地公开多个公共IP地址,并针对较大的后端资源池(Kubernetes节点)进行负载平衡

答案 1 :(得分:0)

Nodeport通过节点上的端口(因此称为node + port)提供对服务的访问。分配了一个端口,您可以在群集的任何节点上通过该端口访问服务。

MetalLB是本地群集的负载平衡器。它使用从池中分配的单独专用IP地址分配服务。因此,如果您要访问专用IP上的服务(入口控制器或其他),则MetalLB允许您执行此操作。

MetalLB以两种方式工作,即BGP或第2层ARP。如果您在“实验室”环境中工作,则后者更容易设置。基本上,MetalLB会响应试图连接到为其分配了IP的服务的客户端发送的ARP请求。