Exactly! You use service of the type LoadBalancer to expose something to the public Internet. You need something that will respond to your LoadBalancer request.
While Metallb is a nice tool for small clusters. Netris offers a way of leveraging open source ecosystem but provide a production grade cloud-like LoadBalancer service together with bunch of other essential things you will need when you are building a private cloud.
What is your use-case?
Metallb is a good product for small use cases. When you consider production, something scalable to 10s 100s or 1000s of nodes then:
auto-add: Every time you add/remove k8s node, you need to tweak your BGP configs to add/remove BGP neighbor (both on Metallb and your router/switch)
ip-address-sharing: MetalLB can share Ip address only when backends are the same, it isn't pure IP address sharing
What do you think?
> Expose default type of services (ClusterIP) external
What's the use case of this? ClusterIP, by API definition, is used within the cluster. If I need to expose something to external, I use a LoadBalancer service.
> Frontend IP Address sharing
The table says MetalLB cannot do this. But isn't it just: https://metallb.universe.tf/usage/#ip-address-sharing ?
> Auto-add Kubernetes nodes
MetalLB speakers are commonly deployed as daemonsets. When a new node joins a cluster, the speaker will be deployed onto it by the daemonset controller. Isn't that what "auto-add" means? What kind of auto-add functionality does MetalLB miss?
With that said, software LBs do have a lot of issues, and this is a pretty interesting approach.