Kubernetes Pod creation

kubernetes-pods-tutorial-for-beginners

There are two ways of creating a Kubernetes pod.

Kubernetes pod creation way 1

kubectl run nginx --image=nginx : creates a deployment nginx which creates a pod from the image nginx

create-kubernetes-pod-way-1

When we run the command kubectl get pods, we see our created pod. Its name is nginx-6b489d4b7-9qghk.

kubectl-get-pods

To display the informations of the created deployment, we run this command:kubectl get deployments. The result of executing this command is the following:

kubectl-get-deployments

Kubernetes pod creation way2 : using pod definition file

Kubernetes pod definition file

The kubernetes pod definition file is composed from 3 parts :

  • apiVersion
  • kind
  • metadata
  • spec

Example of kubernetes pod definition file

apiVersion: v1
kind: Pod
metadata:
  name: nginx
  labels:
    name: nginx
    app: nginx-app
spec:
  containers:
  - name: nginx
    image: nginx
    ports:
     - containerPort: 80

In the case of a pod, the kind section is always equal to Pod.

The labels part is used to distinguish the pods created by this definition file (it is used by replication set to monitor a subset of pods having a label)

The spec part contains the containers which will be created in the pod.

We notice that the containers section contains an array of objects : this means that we can run multiple containers in the same pod.

Her ewe specified a unique container created using the nginx image and running on the port 80.

In order to create the pod, we run this command :

kubectl create pod -f pod-definition-file.yml

This command creates only a pod resource based on the pod definition file described above.

It doesn't create any resource other than the pod.

Displaying informations about kubernetes pods:

kubectl describe pod <pod_name> : checks informations about a pod (image name, node name, how many containers are running on the pod, get the state of the container in the pod,  etc)

Container image name: we find it in the containers section of the out put of the describe command

kubectl-describe-pod-container-image

Here we figure out that there is one container running in the pod and the corresponding image is the nginx image.

kubectl get pods -o wide : displays on which node each kubernetes pod is running

kubectl-get-pods-o-wide
Here the pod is running on the node vps-a45eb589.

This kubernetes pod tutorial for beginners arrives at its end.

To check our others tutorials, you can like our how to program facebook page.

Post a Comment

Previous Post Next Post