How to create the first POD in kubernetes?

Kubernetes

How to create the POD in K8s?

In this blog, we will show you the steps to create your first POD in Google Kubernetes Environment.

Requirements

  • 2 Node Cluster ( 1 Master VM with 2 Nodes)
  • Kubernetes Components

Infrastructure overview

  • Firstly, we need to install and configure the 2-node cluster in our environment. We had already installed and configured the 2 Node cluster in our demo environment. To learn more check our blog post.

Working with PODs

  • The smallest unit of scheduling in the kubernetes world is POD.
  • PODs can contain one or more containers.
  • We deploy a POD in a cluster using the manifest file.
  • We provide the manifest file to the API server. It will be scheduled to deploy in a node. Based on the manifest file, the POD will have one (or) more containers.
  • irrespective of how many containers are inside a POD, the POD will get only a single IP. It’s like one IP to one POD relationship.
  • Every container inside a POD shares a single Network Namespace.
  • All the containers inside POD share the same CGROUP Limits, Volumes, Network and IPC namespaces.

Inter POD Communication

  • All the POD addresses are fully routable on the POD Network.
  • Every POD gets its own IP and it’s routable to that Network.
  • PODs can communicate with each other without any port mapping.
  • Inside the POD, the multiple containers will communicate through a shared local network interface.
  • The containers will be available outside the POD by exposing them through ports.
  • Two containers cannot use the same port.
  • Pods will either run as fully functional (or) it’s down completely.

POD Lifecycle

  • First, we will create a manifest file (YAML or JSON) about POD and container information.
  • Provide the manifest file to the API server and it will get scheduled to a node.
  • Once it’s scheduled, it goes into a Pending state. During this time it will be downloading the images and files.
  • It will be in a pending state till all the containers are up and running.
  • After the containers are up and running, They change to a running state.
  • Once it’s completed its job, it changes the status to succeed.
  • If it’s holding on to a pending state (or) Crashed for a long time, then it will be changed to a failed state.
  • We cannot bring back the death POD. Need to replace them with a new one.

Creating a Manifest file

  • Log in to the Kubernetes master server through Putty.
Steps to create your First POD in Google Kubernetes
  • Create a new manifest file using the vi editor.

Note: We are using the YAML type to create the manifest files

Steps to create your First POD in Google Kubernetes
  • We are using the Ngnix image for this demo purpose. Add the below code in the YAML file.

apiVersion: v1
kind: Pod
metadata:
   name: hello-pod
   labels:
      zone: pod
      version: v1
spec:
   containers:
      - name: hello-ctr
        image: nginx:latest

Steps to create your First POD in Google Kubernetes
  • Save and close the file.

Note: Make sure that the manifest will be on right YAML format. Or else, it will show the error during POD deployment.

Deploying the POD

kubectl create -f pod.yml

Steps to create your First POD in Kubernetes
  • A new POD will be created in a few seconds.
Steps to create your First POD in Kubernetes
  • We can get the PODs status using the below command.

kubectl get pods

Steps to create your First POD in Kubernetes
  • You can also get the POD events information through the describe command.

kubectl describe pods <pod name>

Steps to create your First POD in Kubernetes
Steps to create your First POD in Kubernetes
  • You can find the POD IP using the wide option.

kubectl get pods -o wide

  • We can able to browse the container using the POD IP inside the cluster.

curl -v http://<Pod IP>

Steps to create your First POD in Google Kubernetes

Video Tutorial

View Post>>

View Post>>