Kubernetes Pod Operations

From NovaOrdis Knowledge Base
Revision as of 02:06, 7 September 2019 by Ovidiu (talk | contribs) (→‎Create Pods)
Jump to navigation Jump to search

Internal

Get Information about Pods

get

All pods in a namespace (or the default namespace if -n is not used):

kubectl [-n namespace] get pods|po

Monitor a pod and be notified when the status of the pod is changing:

kubectl get --watch pod <pod-name>

Get more columns in the output:

kubectl get -o wide pod <pod-name>

Along the default columns, we get IP, NODE, NOMINATED NODE, READINESS GATES.

More general options:

kubectl get

describe

kubectl describe pod <pod-name>

Pod Log (Output)

kubectl log <pod-name>

"Follow" logging:

kubectl logs -f <pod-name>

This shell command could be used to log a pod in such a way logging survives a pod restart:

while ! kubectl -n my-namespace logs -f my-pod; do sleep 1; done

Create Pods

A singleton pod can be created by posting a pod manifest to the API server with:

kubectl apply -f <pod-manifest-file-name>.yaml

Execute Commands inside a Pod

kubectl exec [-it] <pod-name> <command>

Removing an Individual Pod

kubectl delete pod <pod-name>

Remove Immediately

kubectl delete pod <pod-name> --grace-period=0 --force