DEV Community

Cover image for Kubernetes Cheatsheet: Essential Commands and Concepts for Efficient Container Orchestration
Shamim Ansari
Shamim Ansari

Posted on

Kubernetes Cheatsheet: Essential Commands and Concepts for Efficient Container Orchestration

Kubernetes Cheatsheet

Kubernetes Basics:

  • kubectl version: Check the Kubernetes client and server versions.
  • kubectl cluster-info: View cluster details.
  • kubectl get pods: List all pods in the current namespace.
  • kubectl get nodes: List all nodes in the cluster.
  • kubectl describe pod [pod-name]: Get detailed information about a pod.

Creating and Managing Resources:

  • kubectl create -f [yaml-file]: Create a resource from a YAML file.
  • kubectl apply -f [yaml-file]: Apply changes to a resource.
  • kubectl delete [resource-type] [resource-name]: Delete a resource.
  • kubectl edit [resource-type] [resource-name]: Edit a resource in the default text editor.
  • kubectl get [resource-type]: List resources of a specific type.
  • kubectl logs [pod-name]: View logs of a pod.

Scaling:

  • kubectl scale deployment [deployment-name] --replicas=[num-replicas]: Scale a deployment.
  • kubectl autoscale deployment [deployment-name] --min=[min-replicas] --max=[max-replicas]: Autoscale a deployment.

Networking:

  • kubectl expose [resource-type] [resource-name] --port=[port] --target-port=[target-port] --type=[service-type]:Expose a resource as a service.
  • kubectl get svc: List services.
  • kubectl port-forward [pod-name] [local-port]:[pod-port]: Forward ports from a local machine to a pod.

Configuration:

  • kubectl config view: View the current configuration.
  • kubectl config use-context [context-name]: Set the current context.

Pods:

  • kubectl exec -it [pod-name] -- [command]: Execute a command in a pod.
  • kubectl run [pod-name] --image=[image-name]: Create a new pod running a specific image.

Namespaces:

  • kubectl create namespace [namespace-name]: Create a new namespace.
  • kubectl get namespaces: List namespaces.
  • kubectl config set-context --current --namespace=[namespace-name]: Set the default namespace.

Secrets and ConfigMaps:

  • kubectl create secret generic [secret-name] --from-literal=[key]=[value]: Create a secret.
  • kubectl create configmap [configmap-name] --from-literal=[key]=[value]: Create a ConfigMap.
  • kubectl describe secret [secret-name]: View secret details.
  • kubectl describe configmap [configmap-name]: View ConfigMap details.

Storage:

  • kubectl get pv: List persistent volumes.
  • kubectl get pvc: List persistent volume claims.

Advanced Troubleshooting:

  • kubectl describe [resource-type] [resource-name]: Get detailed information about a resource.
  • kubectl top [resource-type] [resource-name]: Display resource usage statistics.

Remember to replace placeholders like [resource-type], [resource-name], [pod-name], etc., with your actual resource and object names.

This cheatsheet should help you get started with Kubernetes and serve as a handy reference as you work with containers and orchestration in Kubernetes.

Follow me on Linkedin, Twitter

Top comments (1)

Collapse
 
bcouetil profile image
Benoit COUETIL 💫

The official cheatsheet is pretty straightforward, and there is a community A4 cheatsheet.