acassen/keepalived
FreeKeepalived
About acassen/keepalived
Keepalived is a routing software written in C that provides simple and robust load balancing and high availability to Linux systems and Linux-based infrastructures. It runs in production across data centers, ISPs, and hardware vendors worldwide. Keepalived builds load balancing on top of the Linux Virtual Server (IPVS) kernel module for Layer 4 load balancing, and runs health checkers that watch each server pool to manage real server membership in real time. High availability is achieved through the VRRP protocol (v2 and v3 for IPv4 and IPv6), with sync groups to maintain routing path consistency and IPSEC-AH security for protocol advertisements. It also implements BFD for sub-second link and peer failure detection, enabling fast VRRP failover. The daemon uses a central I/O multiplexer driving a multi-threaded framework, with separate child processes for VRRP, health checking, and BFD stacks, and a minimalistic parent process for monitoring.
Key Features
Pros & Cons
- Robust, production-proven software used across data centers, ISPs, and hardware vendors
- Open-source with active community and long history on GitHub (4.6k stars, 774 forks)
- Written in C for performance and low resource usage
- Combines load balancing, high availability, and health checking in a single daemon
- Supports both IPv4 and IPv6, and multiple VRRP versions
- BFD integration enables sub-second failover for critical infrastructure
- Available as a package in most major Linux distributions
- Configuration can be complex for advanced setups (requires understanding of VRRP, IPVS, and Keepalived syntax)
- Limited to Layer 4 load balancing (though health checkers can reach Layer 7)
- Not a fully AI-driven or automated solution; requires manual configuration and tuning