If you are preparing for a DevOps interview or for Kubernetes Interview questions or Kubernetes Certification, consider marrying this Ultimate Kubernetes Interview questions for Kubernetes Certification (CKA) tutorial, which will help you forever in any Kubernetes interview.
Without further delay, let’s get into this Kubernetes Interview questions for Kubernetes Certification (CKA).
Table of Content
Related: Kubernetes Tutorial for Kubernetes Certification [PART-1]
Related: Kubernetes Tutorial for Kubernetes Certification [PART-2]
PAPER-1
Q1. How to create kubernetes namespace using kubectl command.
Answer: Kubernetes namespace can be created using the kubectl create command.
kubectl create namespace namespace-name
Q2. How to create a kubernetes namespace named my-namespace using a manifest file?
Answer: Create the file named namespace.yaml as shown below.
apiVersion: v1
kind: Namespace
metadata:
name: my-namespace
- Now execute the below kubectl command as shown below.
kubectl create -f namespace.yaml

Q3. How to switch from one Kubernetes namespace to another Kubernetes namespace ?
Answer: To switch beetween two kubernetes namespaces run the kubectl config set command.
kubectl config set-context $(kubectl config current-context) --namespace my-namespace2

Q4. How To List the Kubernetes namespaces in a Kubernetes cluster ?
Answer: Run the kubectl get command as shown below.
kubectl get namespaces
Q5. How to create the Kubernetes namespaces in a Kubernetes cluster ?
Answer: Execute the below kubectl command.
kubectl create namespace namespace-name
Q6. To delete kubernetes namespace using kubectl command ?
Answer: kubectl delete command allows you to delete the Kubernetes API objects.
kubectl delete namespaces namespace-name
Q7. How to create a new Kubernetes pod with nginx image?
Answer: Use Kubectl run command to launch a new Kubernetes Pod.
kubectl run nginx-pod --image=nginx

Q8. How to Create a new Kubernetes pod in different Kubernetes namespace?
Answer: Use Kubectl run command to launch a new Kubernetes Pod followed by namspace flag.
kubectl run nginx-pod --image=nginx --namespace=kube-system

Q9. How to check the running Kubernetes pods in the Kubernetes cluster?
Answer:
kubectl get pods

Q10. How to check the running Kubernetes pods in the Kubernetes cluster in different kubernetes namespace?
Answer:
kubectl get pods --namespace=kube-system | grep nginx

Q11. How to check the Docker image name for a running Kubernetes pod and get all the details?
Answer: Execute the kubernetes describe command.
kubectl describe pod-name

Q12. How to Check the name of the Kubernetes node on which Kubernetes pods are deployed?
Answer:
kubectl get pods -o wide

Q13. How to check the details of docker containers in the Kubernetes pod ?
Answer:
kubectl describe pod pod-name

Q14. What does READY status signify in kubectl command output?
Answer: The READY status gives the stats of the number of running containers and the total containers in the cluster.
kubectl get pod -o wide command

Q15. How to delete the Kubernetes pod in the kubernetes cluster?
Answer: Use the kubectl delete command.
kubetcl delete pod webapp

Q16. How to edit the Docker image of the container in the Kubernetes Pod ?
Answer: Use the Kubernetes edit command.
kubectl edit pod webapp
Q17. How to Create a manifest file to launch a Kubernetes pod without actually creating the Kubernetes pod?
Answer: –dry-run=client flag should be used
kubectl run nginx --image=nginx --dry-run=client -o yaml > my-file.yaml

Q18. How to check the number of Kubernetes Replicasets running in the kubernetes cluster ?
Answer: Run Kubectl get command.
kubectl get rs
kubectl get replicasets

Q19. How to find the correct version of the Kubernetes Replicaset or in Kubernetes deployments ?
Answer:
kubectl explain rs | grep VERSION

Q20. How to delete the Kubernetes Replicasets in the Kubernetes cluster?
Answer: Run the below command.
kubectl delete rs replicaset-1 replicaset-2

Q21. How to edit the Kubernetes Replicasets in the Kubernetes cluster?
Answer: Run the below command.
kubectl edit rs replicaset-name
Q22. How to Scale the Kubernetes Replicasets in the Kubernetes cluster?
Answer: To scale the Kubernetes Replicasets you can use any of three below commands.
kubectl scale --replicas=5 rs rs_name
kubectl scale --replicas=6 -f file.yml # Doesnt change the number of replicas in the file.
kubectl replace -f file.yml
Q23. How to Create the Kubernetes deployment in the kubernetes Cluster?
Answer: Use the kubernetes create command.
kubectl create deployment nginx-deployment --image=nginx

kubectl create deployment my-deployment --image=httpd:2.4-alpine

Note: Deployment strategy are of two types:
- Recreate strategy where we replace all the pods of deployment together and create new pods
- Rolling update Strategy where we replace few pods with newly created pods.
To Update the deployment use the below commands.
- To update the deployments
kubectl apply deployment-definition.yml
- To update the deployment such as using
nginx:1.16.1
instead ofnginx:1.14.2
kubectl set image deployment/nginx-deployment nginx=nginx:1.16.1 --record
Q24. How to Scale the Kubernetes deployment in the kubernetes Cluster?
Answer:
kubectl scale deployment my-deployment --replicas=3

Q25. How to Edit the Kubernetes deployment in the kubernetes Cluster?
Answer:
kubectl edit deployment my-deployment

Q26. How to Describe the Kubernetes deployment in the kubernetes Cluster?
Answer:
kubectl describe deployment my-deployment

Q27. How to pause the Kubernetes deployment in the kubernetes Cluster?
Answer: Use the Kubectl rollout command.
kubectl rollout pause deployment.v1.apps/my-deployment


- To check the status of Rollout and then check all the revisions and rollouts you can check using below command.
kubectl rollout status deployment.v1.apps/my-deployment
kubectl rollout history deployment.v1.apps/my-deployment
Q28. How to resume the Kubernetes deployment in the kubernetes Cluster?
Answer:
kubectl rollout resume deployment.v1.apps/my-deployment

Q29. How to check the history the Kubernetes deployment in the kubernetes Cluster?
Answer:
For Incorrect Kubernetes deployments such as an incorrect image the deployment crashes. Make sure to stop the deployment using cltr + c and execute rollout history command.
kubectl rollout history deployment.v1.apps/nginx-deployment
Q30. How to rollback to the previous kubernetes deployment version which was stable in the kubernetes Cluster?
Answer: Run the undo command as shown below.
kubectl rollout undo deployment.v1.apps/nginx-deployment
Q31. How to Create a manifest file to create a Kubernetes deployment without actually creating the Kubernetes deployment?
Answer: use the –dry-run=client command.
kubectl create deployment nginx --image=nginx --dry-run=client -o yaml

Q32. How to Create a manifest file to create a Kubernetes deployment with Replicasets without actually creating the Kubernetes deployment?
Answer: use the –dry-run=client command.
kubectl create deployment nginx --image=nginx --replicas=4 --dry-run=client -o yaml

Q33. How to Create a Kubernetes service using manifest file ?
Answer: Create the kubernetes file and then run kubernetes create commnad.
kubectl create -f service-defination.yml
Q34. How to Check running Kubernetes service in the kubernetes cluster?
Answer: To check the running Kubernetes services in the kubernetes cluster run below command.
kubectl get svc
kubectl get services

Q35. How to Check details of kubernetes service such as targetport, labels, endpoints in the kubernetes cluster?
Answer:
kubectl describe service

Q36. How to Create a Kubernetes NodePort service in the kubernetes cluster?
Answer: Run kubectl expose command.
kubectl expose deployment nginx-deploy --name=my-service --target-port=8080 --type=NodePort --port=8080 -o yaml -n default # Make sure to add NodePort seperately

Q37. How to Create a Kubernetes ClusterIP service named nginx-pod running on port 6379 in the kubernetes cluster?
Answer: Create a pod then expose the Pod using kubectl expose command.
kubectl run nginx --image=nginx --namespace=kube-system
kubectl expose pod --port=6379 --name nginx-pod -o yaml --namespace=kube-system



Q38. How to Create a Kubernetes ClusterIP service named redis-service in the kubernetes cluster?
Answer:
kubectl create service clusterip --tcp=6379:6379 redis-service --dry-run=client -o yaml

Q39. How to Create a Kubernetes NodePort service named redis-service in the kubernetes cluster?
Answer: kubectl expose command.
kubectl create service nodeport --tcp=6379:6379 redis-service -o yaml

Q40. How to save a Kubernetes manifest file while creating a Kubernetes depployment in the kubernetes cluster?
Answer: Use > nginx-deployment.yaml
kubectl create deployment nginx --image=nginx --dry-run=client -o yaml > nginx-deployment.yaml
Related: Kubernetes Tutorial for Kubernetes Certification [PART-1]
Related: Kubernetes Tutorial for Kubernetes Certification [PART-2]
Conclusion
In this Ultimate guide (Kubernetes Interview questions for Kubernetes Certification (CKA), you had a chance to revise everything you needed to pass and crack the Kubernetes interview.
Now that you have sound knowledge of Kubernetes and are ready for your upcoming interview.