RKE version: Rancher v2.0.7
Docker version: (docker version,docker info preferred) 17.3.2
Type/provider of hosts: (VirtualBox/Bare-metal/AWS/GCE/DO) OpenStack
We setup our K8s cluster using Rancher 2 with OpenStack cloud provider. Multiple nodes have been created and we are using NodePort or Ingress to expose our services. This gives us redundancy on service level, so when a pod fails, the service is still up. However, we are currently binding our DNS entries to an arbitrary node (VM) with worker role. Thus, if this node fails all services would be down although there are other nodes that are still available.
When deploying GitLab with the official Helm chart I noticed that they are creating their own Ingress instance and place a L4 load balancer in front of it that has all nodes as members. We can now route or DNS to the load balancer and have redundancy even if a node fails.
I am wondering, wouldn't it be a nice option to create a L4 load balancer also for the default Ingress when creating the cluster?
@galal-hussein I guess we can add alternative support via ingress options. @stieler-it note that it would work only when RKE cluster is backed up by the cloud provider as L4 is not supported out of the box on baremetal clusters
@alena1108 Yes I'm aware of that limitation, I think it would still be a nice feature.
@alena1108 I think adding MetalLb load-balancer when there is no cloudprovider would be a good solution to the baremetal installation
Most helpful comment
@alena1108 I think adding MetalLb load-balancer when there is no cloudprovider would be a good solution to the baremetal installation