Load Balancers¶
OpenStack Octavia load balancers distribute inbound traffic across multiple servers. A load balancer consists of a VIP (virtual IP), one or more listeners, backend pools, and optional health monitors.
Endpoints¶
| Method | Path | Description |
|---|---|---|
GET | /cloud/loadbalancers?project_id=<uuid> | List load balancers |
GET | /cloud/loadbalancers/{id}?project_id=<uuid> | Show a load balancer |
GET | /cloud/lb_listeners?project_id=<uuid> | List listeners |
GET | /cloud/lb_pools?project_id=<uuid> | List pools |
GET | /cloud/lb_pools?project_id=<uuid>&loadbalancer_id=<id> | List pools for a load balancer |
GET | /cloud/lb_pool_members?project_id=<uuid>&pool_id=<id> | List members of a pool |
GET | /cloud/lb_health_monitors?project_id=<uuid> | List health monitors |
GET | /cloud/lb_health_monitors?project_id=<uuid>&pool_id=<id> | List monitors for a pool |
List load balancers¶
Show a load balancer¶
Key response fields:
| Field | Description |
|---|---|
id | Load balancer UUID |
name | Display name |
provisioning_status | ACTIVE, PENDING_CREATE, PENDING_UPDATE, ERROR |
operating_status | ONLINE, DEGRADED, OFFLINE, ERROR |
vip_address | Virtual IP address |
vip_subnet_id | Subnet the VIP is allocated from |
vip_network_id | Network the VIP belongs to |
provider | Octavia provider (e.g. amphora) |
listeners | Array of listener summary objects |
pools | Array of pool summary objects |
Concepts¶
Listener — a port/protocol binding (e.g. TCP:443) that accepts inbound connections and forwards them to a pool.
Pool — a set of backend servers sharing a load-balancing algorithm (round-robin, least-connections, source-IP).
Member — a single backend server within a pool, identified by IP and port.
Health monitor — periodic probes (HTTP, HTTPS, TCP, PING) that mark members ONLINE or OFFLINE based on their response.
Creating load balancers¶
Create and modify load balancer resources through the dashboard or OpenStack CLI. The b'nerd API currently exposes read operations for observability — use provisioning_status and operating_status to monitor rollout progress from your automation.