ClusterIP expose service nội bộ trong cluster. NodePort mở port trên nodes. LoadBalancer yêu cầu cloud/load balancer provider tạo load balancer bên ngoài. ExternalName map service sang DNS name ngoài cluster.
Ví dụ ClusterIP:
yaml
apiVersion: v1
kind: Service
metadata:
name: api
spec:
selector:
app: api
ports:
- port: 80
targetPort: 8000Phần quan trọng là selector phải match labels của Pods, nếu không Service sẽ không có endpoints.