MetalLB二层模式使用指南
2022-8-8
测试组件的版本情况 #
- kubernetes: v1.22.8
- metellb: v0.10.3
- nginx: latest
创建测试应用 #
创建一个nginx服务和service资源:
|
|
测试分配IP #
创建loadbalancer类型的service:
...创建一个nginx服务和service资源:
|
|
创建loadbalancer类型的service:
...Kubernetes没有提供适用于裸金属集群的网络负载均衡器实现, 也就是LoadBalancer
类型的Service. Kubernetes 附带的网络负载均衡器的实现都是调用各种 IaaS 平台(GCP、AWS、Azure ……)的胶水代码。 如果您没有在受支持的 IaaS 平台(GCP、AWS、Azure…)上运行,LoadBalancers 在创建时将一直保持在pending
状态。
裸金属集群的运维人员只剩下两个方式来将用户流量引入集群内: NodePort
和externalIPs
. 这两种在生产环境使用有很大的缺点, 这样, 裸金属集群也就成了 Kubernetes 生态中的第二类选择, 并不是首选.
MetalLB 的目的是实现一个网络负载均衡器来与标准的网络设备集成, 这样这些外部服务就能尽可能的正常工作了.
...