Discuss the key differences between ClusterIP vs LoadBalancer vs NodePort?
In Kubernetes, services are a fundamental concept used to expose applications running on a set of Pods.
The three primary types of services, ClusterIP, LoadBalancer, and NodePort, differ primarily in how they expose applications to network traffic.
ClusterIP:
Exposes the service internally within the cluster, making it reachable only from within the cluster.
LoadBalancer:
Exposes the service externally using a cloud provider’s load balancer, automating the creation of an external IP address.
NodePort:
Exposes the service on each Node’s IP at a static port, making the service accessible externally through `<NodeIP>:<NodePort>`
The illustration below simplifies the understanding of this concept