A LoadBalancer service requests a cloud provider’s load balancer (e.g., AWS ELB, GCP LB, or MetalLB in bare metal).
🧠 Characteristics
- Automatically provisions a public IP
- Routes traffic to the service via the cloud provider
- Ideal for production workloads
- Requires compatible controller (or MetalLB)
flowchart LR client[Client] lb[LoadBalancer IP] svcLB[LoadBalancer Service] pod[Pod] client -->|Public IP| lb --> svcLB --> pod style svcLB fill:#bbf,stroke:#333 style pod fill:#ddd,stroke:#333 style lb fill:#eee,stroke:#333
🧪 Example
apiVersion: v1
kind: Service
metadata:
name: my-lb-service
spec:
type: LoadBalancer
selector:
app: my-app
ports:
- port: 80
targetPort: 8080