CLOUD OBJECTIVE ASSESSMENT
TEST(OBJECTIVE 1-4) GRADED A+ (500+
QUESTINS AND ANSWERS)
Objective 1:Use the kubect tool
kubectl (pronounced "kube-control" or "kube-cuttle") is
the command-line interface (CLI) tool for interacting
with Kubernetes clusters. It allows you to deploy, inspect,
manage, and troubleshoot applications and resources in a
Kubernetes environment.
Why Use kubectl?
Kubernetes (K8s) is the leading container orchestration
platform, and kubectl is the primary way to:
✔ Deploy applications (Pods, Deployments, Services)
✔ Inspect cluster state (logs, events, resource usage)
✔ Modify & delete resources (scaling, updates, rollbacks)
✔ Debug issues (checking Pod failures, networking)
Basic kubectl Commands
Command What It Does Example
Lists resources (Pods, Nodes,
kubectl get kubectl get pods
Deployments)
kubectl Shows detailed info about a kubectl describe
describe resource pod/my-pod
kubectl Applies a configuration file kubectl apply -f
apply (YAML/JSON) deploy.yaml
,Command What It Does Example
kubectl logs Displays logs from a Pod kubectl logs my-pod
kubectl kubectl exec -it my-
Runs a command inside a Pod
exec pod -- bash
kubectl kubectl delete
Removes a resource
delete pod/my-pod
How to Install kubectl?
Linux/macOS:
sh
Copy
curl -LO "https://dl.k8s.io/release/$(curl -L -s
https://dl.k8s.io/release/stable.txt)/bin/linux/amd64/kubectl"
chmod +x kubectl
sudo mv kubectl /usr/local/bin/
Windows (PowerShell):
powershell
Copy
curl.exe -LO
"https://dl.k8s.io/release/v1.28.0/bin/windows/amd64/kubectl.exe"
Verify Installation:
sh
Copy
kubectl version --client
When Would You Need kubectl?
, Deploying a microservice → kubectl apply -f
deployment.yaml
Checking why a Pod crashed → kubectl logs -f <pod-
name>
Scaling an app → kubectl scale deployment/my-app --
replicas=5
Connecting to a Pod for debugging → kubectl exec -it
<pod-name> -- sh
Pro Tips
🔹 Use kubectl config to switch between clusters (e.g., dev vs.
prod).
🔹 Alias kubectl to k for faster typing:
sh
Copy
alias k=kubectl
k get pods
🔹 Enable autocompletion for easier CLI use:
sh
Copy
echo 'source <(kubectl completion bash)' >> ~/.bashrc
1. Basic kubectl Concepts
Q1: What is kubectl?
A: kubectl is the command-line tool for interacting with
Kubernetes clusters. It lets you deploy, manage, and debug
applications and resources (Pods, Deployments, Services, etc.).
Q2: How do you check the kubectl version?
A:
, sh
Copy
kubectl version --client # Client version only
kubectl version # Client + Server (if connected to a cluster)
Q3: How do you get cluster info?
A:
sh
Copy
kubectl cluster-info # Shows cluster master and services
kubectl get nodes # Lists all worker nodes
2. Working with Pods & Deployments
Q4: How do you list all Pods?
A:
sh
Copy
kubectl get pods # Default namespace
kubectl get pods -A # All namespaces
kubectl get pods -n <namespace> # Specific namespace
Q5: How do you create a Pod?
A:
sh
Copy
kubectl run nginx --image=nginx # Imperative command
kubectl apply -f pod.yaml # Declarative (YAML file)