DEV Community

Ibrahim S
Ibrahim S

Posted on

ClusterIP - Kubernetes

ClusterIP --> The default service type, accessible only within the cluster. It's used for internal communication between services.
For example, communication between the front-end and back-end components of your application.

Create a 3 file

  1. nginx-pod.yml
  2. nginx-deployment.yml
  3. nginx-svc.yml
apiVersion: v1 kind: Pod metadata: name: nginx-pod spec: containers: - image: nginx name: nginx-ctr 
Enter fullscreen mode Exit fullscreen mode

Execute the pod

kubectl apply -f nginx-pod.yml kubectl get pods 
Enter fullscreen mode Exit fullscreen mode

Get the pod full details

kubectl get pods -o wide 
Enter fullscreen mode Exit fullscreen mode

Create a deployment file

apiVersion: apps/v1 kind: Deployment metadata: name: nginx-deployment spec: replicas: 2 selector: matchLabels: app: nginx template: metadata: labels: app: nginx spec: containers: - image: nginx name: nginx-ctr 
Enter fullscreen mode Exit fullscreen mode

Execute the deployment file

kubectl apply -f nginx-deployment.yml kubectl get pods 
Enter fullscreen mode Exit fullscreen mode

Create a service file

apiVersion: v1 kind: Service metadata: name: nginx-svc spec: selector: app: nginx ports: - name: nginx-port protocol: TCP port: 32767 targetPort: 80 
Enter fullscreen mode Exit fullscreen mode

Get the full information on pods

kubectl get all 
Enter fullscreen mode Exit fullscreen mode

Get the pod IP address

kubectl get pods -o wide (or) kubectl get endpoints 
Enter fullscreen mode Exit fullscreen mode

POD → 1

POD → 2

Login to the container and change the Nginx file

kubectl -it exec nginx-deployment-7bb9945d7c-75nc5 -- /bin/sh 
Enter fullscreen mode Exit fullscreen mode

Get the services IP

kubectl get svc 
Enter fullscreen mode Exit fullscreen mode

Automatically load balancing selected

  • Accessible only within the cluster → ClusterIP → Internal load balancer.

  • Cluster IP service identifies pods using the selector → How pods are identified.

  • Target port helps in identifying pod port → how port is identified.

Top comments (0)