A load balancer distributes incoming network traffic across multiple backend servers (pool members) to ensure no single server is overwhelmed, improving availability and reliability.
Key concepts (F5 terminology)
| Term | Description |
|---|---|
| Virtual Server (VIP) | The IP:port clients connect to. The “front door” |
| Pool | A group of backend servers |
| Pool member / Node | An individual backend server |
| SNAT Pool | IPs used as source when the F5 talks to pool members |
| Monitor / Health check | Checks if a pool member is healthy |
| iRule | Custom traffic logic (like firewall rules for traffic) |
Traffic flow
Client → VIP (Virtual Server) → F5 rewrites src IP to SNAT → Pool member
The pool member sees the F5’s SNAT IP, not the client’s IP (unless X-Forwarded-For is used).
Health checks
The F5 uses monitors to periodically check if pool members are up. If a check fails, traffic is no longer sent to that member.
- HTTP monitor — sends a GET request and checks response
- TCP monitor — checks if the port is open
- Custom monitor — custom string sent/received