MikroLB - A load balancer controller for Kubernetes

I want to share a project I've been working on for a few weeks: GitHub - gerolf-vent/mikrolb: Kubernetes Load Balancer controller for MikroTik RouterOS · GitHub

It's a full-blown load balancer implementation for Kubernetes and MikroTik RouterOS v7. It dynamically programs DNAT and SNAT firewall rules via the HTTP(S) REST API.

To preserve real source IPs, it targets pod IPs directly instead of node IPs. This means your router needs to know the pod CIDR routes — you can set this up via BGP with kube-router or Calico. I might write a guide for this as well.

This is the initial release. I've tested the codebase thoroughly, but there might still be some bugs. Please open an issue on GitHub or write here if you encounter one.

I'm excited to hear about your experience with it!

Documentation is available at https://mikrolb.de.

I’ve just release the first batch of fixes (for kustomization, mangle rule management) and also added support for gratuitous ARP/NDP advertisements when assigning the ip addresses to the interfaces.

Release v0.1.1 - Major fixes, new features, improved documentation · gerolf-vent/mikrolb · GitHub