Kubernetes101 : Exposing a deployment and its pods through the Cluster IP service.

Creating a deployment resource:

A deployment is a kubernetes resource used for deploying pods.
Below is the Yaml file describing our deployment:

The above Yaml file is used to deploy two replicas of a pod using the "nginx" image.

Exposing the deployment:

To expose pods, making them reachable either from inside or from outside the kubernetes cluster we use a service.
A service is an entry point to pods in kubernetes.

By exposing a deployment resource using a service, we expose the pods mentioned in the deployment Yaml file.
The below command exposes the deployment "deploy-service" and its pods:

We can then check the service using the below command:


The application running inside the pods, will be accessible through the internal service (ClusterIP service)

ClusterIP, the default service:

Because we didn't mention the type of the service, the default one "ClusterIP" is created.
The ClusterIP service is accessible only from within the kubernetes cluster.


Leave as a comment: