We at Kumina have extensive real-world experience using Kubernetes. Although many projects start from scratch on top of Kubernetes, an equal amount of projects need to migrate from a different paradigm onto Kubernetes. This can create some very particular requirements, like keeping your URLs the same even though you switch to a different system, as that has advantages for SEO and existing bookmarks.
We looked for several solutions to these problems, but could not find one that truly fitted our needs. So we developed our own: Kumina HyperRouter.
Kumina HyperRouter can run next to an Ingress Controller (currently only Traefik 2+ is supported) to resolve URLs into their actual destinations, either on the same Kubernetes cluster or, using an external service, on anything else that can be proxied from within the Kubernetes cluster. Although most Ingress Controllers have some support for this, it tends to either break or severely slow down routing if you want to add several hundreds of routing rules or even more.
Kumina HyperRouter has been benchmarked at an average of 75 req/s answered on a single 2GHz CPU with 1GB of RAM while using a dataset of 1 million routes. Scaling is linear, so if you require more power, the setup can scale horizontally while keeping the same average requests per CPU.
Currently, Kumina HyperRouter is exclusively available for Kumina managed Kubernetes clusters. Interested? Reach out to us! We’re always happy to talk to you.
Features:
- Allows millions of routing rules and rewrites within a single database while keeping latency low,
- Support for regular expressions for searching in both the domain and the path of a request,
- Support for regular expression callbacks when performing a rewrite,
- Average 75 requests per second on a single 2Ghz Intel CPU, 1GB of RAM,
- Scales horizontally, practically limitless,
- Automatically scales on top of Kubernetes, based on the amount of incoming requests,
- Fully API controlled using a REST interface,
- Integrates with Traefik 2+.