Bird
Raised Fist0
Kubernetesdevops~5 mins

Creating Pods with kubectl in Kubernetes - Quick Revision & Summary

Choose your learning style10 modes available
Recall & Review
beginner
What is a Pod in Kubernetes?
A Pod is the smallest unit in Kubernetes that can run one or more containers together on the same host. It shares storage, network, and specifications for how to run the containers.
Click to reveal answer
beginner
Which command creates a Pod using kubectl with an image named nginx?
kubectl run my-nginx --image=nginx --restart=Never
Click to reveal answer
beginner
How do you check the status of Pods after creating them?
Use the command kubectl get pods to see the list and status of all Pods in the current namespace.
Click to reveal answer
beginner
What file format is commonly used to define a Pod configuration for kubectl?
YAML is commonly used to define Pod configurations, specifying details like containers, images, ports, and labels.
Click to reveal answer
beginner
How do you create a Pod from a YAML file named pod.yaml?
Use the command kubectl apply -f pod.yaml to create or update the Pod defined in the YAML file.
Click to reveal answer
Which kubectl command creates a Pod named 'test-pod' with the image 'busybox'?
Akubectl pod create test-pod --image busybox
Bkubectl create pod test-pod busybox
Ckubectl run test-pod --image=busybox --restart=Never
Dkubectl start pod test-pod busybox
What does the command 'kubectl get pods' show?
AConfiguration of a Pod
BLogs of a Pod
CDetails of a specific container
DList of all Pods and their status
Which file format is typically used to define a Pod for kubectl?
AJSON
BYAML
CXML
DTXT
How do you create a Pod from a YAML file named 'pod.yaml'?
Akubectl apply -f pod.yaml
Bkubectl run pod.yaml
Ckubectl create pod pod.yaml
Dkubectl start pod pod.yaml
What is the smallest deployable unit in Kubernetes?
APod
BNode
CService
DContainer
Explain how to create a Pod using kubectl from the command line and how to check its status.
Think about the command to start a Pod and the command to list Pods.
You got /4 concepts.
    Describe the role of a YAML file in creating a Pod and the kubectl command used to apply it.
    Consider how configuration files help manage Kubernetes resources.
    You got /3 concepts.

      Practice

      (1/5)
      1. What does the command kubectl run mypod --image=nginx --restart=Never do?
      easy
      A. Creates a single Pod named 'mypod' running the nginx image
      B. Creates a Deployment named 'mypod' running the nginx image
      C. Deletes the Pod named 'mypod' if it exists
      D. Updates the nginx image in all Pods

      Solution

      1. Step 1: Understand the kubectl run command

        The command kubectl run creates a resource to run containers. By default, it creates a Deployment unless specified otherwise.
      2. Step 2: Effect of --restart=Never

        Adding --restart=Never tells Kubernetes to create a Pod directly, not a Deployment.
      3. Final Answer:

        Creates a single Pod named 'mypod' running the nginx image -> Option A
      4. Quick Check:

        kubectl run + --restart=Never = Pod creation [OK]
      Hint: Use --restart=Never to create a Pod, not a Deployment [OK]
      Common Mistakes:
      • Assuming kubectl run always creates a Deployment
      • Forgetting --restart=Never creates a Pod
      • Confusing Pod creation with deletion
      2. Which of the following is the correct syntax to create a Pod named 'testpod' using the busybox image with kubectl?
      easy
      A. kubectl run testpod --image=busybox --restart=Never
      B. kubectl create pod testpod --image=busybox
      C. kubectl deploy testpod --image=busybox
      D. kubectl pod create testpod --image=busybox

      Solution

      1. Step 1: Identify the correct kubectl command for Pod creation

        The kubectl run command with --restart=Never creates a Pod directly.
      2. Step 2: Check each option's syntax

        kubectl create pod testpod --image=busybox uses kubectl create pod which is invalid. kubectl deploy testpod --image=busybox uses kubectl deploy which is not a kubectl command. kubectl pod create testpod --image=busybox uses kubectl pod create which is invalid. Only kubectl run testpod --image=busybox --restart=Never is correct syntax.
      3. Final Answer:

        kubectl run testpod --image=busybox --restart=Never -> Option A
      4. Quick Check:

        kubectl run + --restart=Never = Pod creation [OK]
      Hint: Use 'kubectl run name --image=img --restart=Never' for Pod creation [OK]
      Common Mistakes:
      • Using 'kubectl create pod' which is invalid
      • Confusing 'deploy' with 'run'
      • Omitting --restart=Never to create a Pod
      3. What will be the output of the command kubectl get pods immediately after running kubectl run demo --image=nginx --restart=Never?
      medium
      A. A Deployment named 'demo' will be listed instead of a Pod
      B. No Pods will be listed because the command creates a Deployment
      C. A Pod named 'demo' will be listed with STATUS 'Running' or 'ContainerCreating'
      D. An error message saying 'unknown command run'

      Solution

      1. Step 1: Understand the effect of the run command with --restart=Never

        This command creates a Pod named 'demo' running the nginx image.
      2. Step 2: Check what kubectl get pods shows

        It lists all Pods. Since the Pod was just created, it will appear with status 'Running' or 'ContainerCreating'.
      3. Final Answer:

        A Pod named 'demo' will be listed with STATUS 'Running' or 'ContainerCreating' -> Option C
      4. Quick Check:

        kubectl run + --restart=Never creates Pod listed by get pods [OK]
      Hint: Pods created with --restart=Never appear in 'kubectl get pods' [OK]
      Common Mistakes:
      • Expecting a Deployment to appear in pod list
      • Thinking no pods appear immediately
      • Confusing command output with error
      4. You run kubectl run app --image=nginx but no Pod named 'app' appears when you run kubectl get pods. What is the likely cause?
      medium
      A. The image name 'nginx' is invalid, so Pod creation failed
      B. The command created a Deployment, not a Pod named 'app', so no Pod named 'app' appears
      C. You need to add --restart=Always to create a Pod
      D. The Pod was created but immediately deleted by Kubernetes

      Solution

      1. Step 1: Understand default behavior of kubectl run without --restart=Never

        By default, kubectl run creates a Deployment, not a Pod.
      2. Step 2: Check why 'kubectl get pods' shows no Pod named 'app'

        Since a Deployment manages Pods, the Pod(s) are named like 'app-[hash]', not 'app'. The command kubectl get deployments would show the Deployment.
      3. Final Answer:

        The command created a Deployment, not a Pod named 'app', so no Pod named 'app' appears -> Option B
      4. Quick Check:

        kubectl run without --restart=Never creates Deployment [OK]
      Hint: Add --restart=Never to create a Pod, else Deployment is created [OK]
      Common Mistakes:
      • Assuming kubectl run always creates a Pod
      • Thinking image name caused failure without error
      • Confusing --restart=Always with Pod creation
      5. You want to create a Pod named 'webserver' running the nginx image that does NOT restart automatically if it crashes. Which command should you use?
      hard
      A. kubectl run webserver --image=nginx
      B. kubectl run webserver --image=nginx --restart=Always
      C. kubectl create pod webserver --image=nginx --restart=Never
      D. kubectl run webserver --image=nginx --restart=Never

      Solution

      1. Step 1: Understand restart policies in kubectl run

        Using --restart=Never creates a Pod with restart policy 'Never', so it won't restart automatically.
      2. Step 2: Evaluate each option

        kubectl run webserver --image=nginx --restart=Never correctly uses --restart=Never. kubectl run webserver --image=nginx --restart=Always uses --restart=Always which creates a Deployment that restarts Pods. kubectl create pod webserver --image=nginx --restart=Never uses invalid syntax. kubectl run webserver --image=nginx creates a Deployment by default.
      3. Final Answer:

        kubectl run webserver --image=nginx --restart=Never -> Option D
      4. Quick Check:

        --restart=Never means Pod won't auto-restart [OK]
      Hint: Use --restart=Never to prevent Pod auto-restart on failure [OK]
      Common Mistakes:
      • Using default restart which creates Deployment
      • Confusing --restart=Always with no restart
      • Trying invalid commands like kubectl create pod
      Recommended

      Ready to prove it?

      Pass the test and this pattern moves unknown strong while earning +1 Grip toward your certificate.

      10 questions~5 mineasy hard