๐Ÿง  Kubernetes CLI Cheatsheet

๐Ÿš€ Cluster & Context Management

CommandDescription
kubectl versionShow client/server versions
kubectl cluster-infoDisplay cluster endpoints
kubectl config viewView kubeconfig details
kubectl config get-contextsList available contexts
kubectl config current-contextShow current context
kubectl config use-context <name>Switch context
kubectl config set-context --current --namespace=<ns>Set default namespace
kubectl config set-cluster <name>Define cluster in kubeconfig
kubectl config set-credentials <user>Add user credentials
kubectl config unset <property>Remove config entry

๐Ÿง  Node Management

CommandDescription
kubectl get nodesList all nodes
kubectl describe node <name>Node details
kubectl cordon <name>Mark node unschedulable
kubectl uncordon <name>Mark node schedulable
kubectl drain <name>Evict pods for maintenance
kubectl top nodeShow node resource usage
kubectl label node <name> key=valueAdd label to node
kubectl taint nodes <name> key=value:NoScheduleTaint node
kubectl get nodes -o wideExtended node info
kubectl get nodes --show-labelsShow node labels

๐Ÿ“ฆ Namespace Management

CommandDescription
kubectl get namespacesList namespaces
kubectl create namespace <name>Create namespace
kubectl delete namespace <name>Delete namespace
kubectl describe namespace <name>Namespace details
kubectl edit namespace <name>Edit namespace

๐Ÿ“ Resource Creation & Management

CommandDescription
kubectl apply -f <file.yaml>Apply config
kubectl create -f <file.yaml>Create from file
kubectl create deployment <name> --image=<img>Create deployment
kubectl create service clusterip <name> --tcp=80:80Create service
kubectl explain <resource>Show resource schema

๐Ÿ” Viewing & Describing Resources

CommandDescription
kubectl get <resource>List resources
kubectl get <resource> -o wideExtended info
kubectl get <resource> -n <ns>In specific namespace
kubectl get <resource> --all-namespacesAcross all namespaces
kubectl describe <resource> <name>Detailed info
kubectl get <resource> -l key=valueFilter by label
kubectl get <resource> --field-selector=key=valueFilter by field
kubectl get events --sort-by=.metadata.creationTimestampRecent events
kubectl api-resourcesList resource types
kubectl api-versionsList API versions

๐Ÿงน Deleting Resources

CommandDescription
kubectl delete <resource> <name>Delete resource
kubectl delete -f <file.yaml>Delete from file
kubectl delete <resource> --allDelete all of type
kubectl delete <resource> -l key=valueDelete by label
kubectl delete pod <name> --grace-period=0 --forceForce delete pod

๐Ÿงฌ Pod Management

CommandDescription
kubectl get podsList pods
kubectl describe pod <name>Pod details
kubectl logs <pod>View logs
kubectl logs -f <pod>Stream logs
kubectl logs <pod> -c <container>Logs from container
kubectl exec -it <pod> -- /bin/bashShell into pod
kubectl port-forward <pod> 8080:80Forward port
kubectl attach <pod>Attach to pod
kubectl delete pod <name>Delete pod
kubectl get pod -n <ns>Pods in namespace

๐Ÿ“ˆ Deployment & Rollout

CommandDescription
kubectl get deploymentsList deployments
kubectl describe deployment <name>Deployment details
kubectl rollout status deployment/<name>Rollout status
kubectl rollout undo deployment/<name>Rollback
kubectl set image deployment/<name> <container>=<image>Update image
kubectl scale deployment <name> --replicas=<n>Scale deployment
kubectl edit deployment <name>Edit deployment
kubectl get rsList ReplicaSets
kubectl get hpaList autoscalers
kubectl autoscale deployment <name> --min=2 --max=5 --cpu-percent=80Create HPA

๐Ÿงช Job & CronJob Management

CommandDescription
kubectl create job <name> --image=<img> -- <cmd>Create job
kubectl get jobsList jobs
kubectl describe job <name>Job details
kubectl delete job <name>Delete job
kubectl create cronjob <name> --image=<img> --schedule="*/1 * * * *" -- <cmd>Create cronjob
kubectl get cronjobsList cronjobs
kubectl delete cronjob <name>Delete cronjob

๐Ÿ” Secrets & ConfigMaps

CommandDescription
kubectl create secret generic <name> --from-literal=key=valueCreate secret
kubectl get secretsList secrets
kubectl describe secret <name>Secret details
kubectl create configmap <name> --from-file=<file>Create configmap
kubectl get configmapsList configmaps
kubectl describe configmap <name>Configmap details
kubectl edit configmap <name>Edit configmap
kubectl delete configmap <name>Delete configmap

๐ŸŒ Services & Networking

CommandDescription
kubectl get svcList services
kubectl describe svc <name>Service details
kubectl expose deployment <name> --port=80 --target-port=8080Expose deployment
kubectl port-forward svc/<name> 8080:80Forward service port
kubectl get endpointsList endpoints