Layer 4 load-balancer without Cloud-Provider?

Hi,
I am currently switching my Rancher Cluster from Single-Node to Multi-Node HA mode.
Now I am running a cluster with 3 Nodes from 3 different providers.
I and my colleagues are currently creating a system to rent Docker containers and also want to provide high availability solutions, so each node should ideally run 24/7, so cloud providers are not suitable for our purposes. The price performance ratio of most cloud-providers also does not meet our expectations.

Hosting all nodes at one provider didn’t make sense for me, because if my hoster has to do maintenance work and all my VMs are on the same server, all of them are offline.
High availability? no :rofl:
I am rent some vservers by Contabo and I already was in souch situation.

And now I am searching for an Load-Balancing solution. I already have a DNS server and plan to rent a 4th server just as LoadBalancer, the choice of the provider is very decisive, because the server really has to be 99.9% fail-safe. In the Racher documentation I read that Layer 4 load balancing would only be possible via cloud providers, so I am very indecisive and looking for advice.

Has anyone of you been in a similar situation? I would be glad if someone shares his experiences.

Thank you very much!

MetalLB which is layer 2.

I set something up using Kubernetes external-dns https://github.com/kubernetes-incubator/external-dns and a seperate NGINX load balancer - https://github.com/2stacks/terraform-nginx-lb

Thank you very much for your suggestions.

I use k8s.gcr.io/kube-keepalived-vip
because MetalLB is not better on Layer 2 mode