kuberneteshigh-availabilitykeepalived

Why do i need keepalived in kubernetes?


I have got a Kubernetes cluster with nginx installed. Nginx makes K8s fault tolerant. In case of a K8s component failure, the standby one will be taken.

So what is the point of keepalived?


Solution

  • One thing you might need to consider is that they both are performing similar functions. Both NGINX and Keepalived provide similar functionality in terms of failover, but at different layers.

    While NGINX handles application-level failover and load balancing, Keepalived manages network-level failover with a Virtual IP (VIP).

    In a setup where both are used, they might overlap, but Keepalived is more focused on the availability of the IP address, while NGINX ensures smooth traffic routing at the application layer. If you're already using NGINX effectively for fault tolerance, Keepalived might be redundant unless you specifically need the network-level failover.

    Together, I believe they provide both network and application-level fault tolerance.