Services provide stable endpoints for pod groups. Pods change. Service IPs stay constant.
Service types:
ClusterIP: Internal IP only. Other pods can reach it.
NodePort: Static port on every node. External clients connect to any node.
LoadBalancer: Cloud load balancer with external IP.
ExternalName: Maps to external DNS name.
How it works:
Service gets stable ClusterIP
kube-proxy programs iptables or IPVS
Traffic routes to healthy pods
Clients talk to Service IP. Kubernetes handles routing.