Frequent command use with K8s
kubectl cluster-info
kubectl get pods -n defaul
kubectl get pods -n namespacename
kubectl get nodes
kubectl describe pods podname
Create a pod with and wiothout pod yml
kubectl run nginx --image nginx
kubectl create -f pod.yml
kubectl create -f replicaset-definition.yml
kubectl get replicaset
kubectl delete replicaset nginx-replicaset
kubectl replace -f replicaset-definition.yml
kubectl scale --replicas=6 -f replicaset-definition.yml
kubectl create -f deployment-definition.yml
kubectl get deployments
kubectl delete deployment nginx-deployment
kubectl create namespace dev
kubectl create -f namespace-definition.yml
kubectl get namespaces
Check pods in all namespace
kubectl get pods -all
kubectl get services
kubectl create -f service-definition.yml
Good to know the commands
Create an Nginx Pod
kubectl run nginx --image=nginx
Generate POD manifest YAML file (-o yaml). DRY run
kubectl run nginx --image= nginx --dry-run=client -o yaml
Create Deployment
kubectl create deployment --image=nginx nginx
Generate Deployment YAML file. DRY run
kubectl create deployment --image=nginx nginx --dry-run=client -o yaml
Create a Service
kubectl expose pod redis --port=6379 --name=redis --dry-run=client -o yaml
kubectl create service clusterip redis --tcp=6379:6379 --dry-run=client -o yaml
kubectl expose pod nginx --port=80 --name nginx --type=Nodeport --dry-run=client -o yaml
kubectl create service nodeport nginx --tcp=80:80 --node-port=30080 --dry-run=client -o yaml
kubectl taint nodes node01 spray=mortein:NoSchedule
kubectl taint nodes master node-role.kubernetes.io/master:NoSchedule-
kubectl label node node-name key=value
kubectl get daemonsets name
kubectl create secret generic app-secret --from-literal=DB_HOST=mysql --from
echo -n "mysql" | base64
to decode
echo -n "mysql base64 decode"
kubectl describe secrets
kubectl get secrets
kubectl drain node-1
# To make node schedulable
kubectl uncordon node-1
# To make mark node unschedulable
kubectl cordon node-1