Skip to content

kubectl Pod management

kubectl is the command-line interface for managing Kubernetes clusters, which includes the ability to create, inspect, and delete [[Pods]].^[400-devops-06-kubernetes-k8s-learning-03pod-readme.md]

Creating Pods

A new Pod can be instantiated using the kubectl run command^[400-devops-06-kubernetes-k8s-learning-03pod-readme.md:7]. This command requires a name for the Pod and the container image to run^[400-devops-06-kubernetes-k8s-learning-03pod-readme.md:7]. For example, to create a Pod named mynginx using the official nginx image, you would run:

[kubectl](<./kubectl.md>) run mynginx --image=nginx

Once created, the Pod is assigned a unique IP address within the cluster network and scheduled to a specific node^[400-devops-06-kubernetes-k8s-learning-03pod-readme.md:15].

Listing Pods

To verify that a Pod is running and to see its status, use the kubectl get pods command^[400-devops-06-kubernetes-k8s-learning-03pod-readme.md:10]. This displays a list of pods in the current namespace, showing columns such as NAME, READY, STATUS, RESTARTS, and AGE^[400-devops-06-kubernetes-k8s-learning-03pod-readme.md:12].

Inspecting Pod Details

Detailed information about a specific Pod can be retrieved using kubectl describe [Pod](<./pod.md>) <pod-name>^[400-devops-06-kubernetes-k8s-learning-03pod-readme.md:14]. This command provides a comprehensive overview of the Pod's state, including:

  • Metadata: Namespace, priority, and node assignment^[400-devops-06-kubernetes-k8s-learning-03pod-readme.md:15].
  • Status: Current lifecycle phase (e.g., Running), IP address, and restart counts^[400-devops-06-kubernetes-k8s-learning-03pod-readme.md:19].
  • Containers: Container IDs, image digests, and mount points^[400-devops-06-kubernetes-k8s-learning-03pod-readme.md:22].
  • Conditions: Health status indicators such as Initialized, Ready, and PodScheduled^[400-devops-06-kubernetes-k8s-learning-03pod-readme.md:35].
  • Events: A chronological log of significant occurrences, such as image pulling and container creation^[400-devops-06-kubernetes-k8s-learning-03pod-readme.md:46].

Deleting Pods

To remove a Pod from the cluster, use the kubectl delete [Pod](<./pod.md>) <pod-name> command^[400-devops-06-kubernetes-k8s-learning-03pod-readme.md:52]. The system will respond with a confirmation message indicating that the Pod was deleted^[400-devops-06-kubernetes-k8s-learning-03pod-readme.md:53].

Sources

^[400-devops-06-kubernetes-k8s-learning-03pod-readme.md]