Skip to main content

Kubernetes Commands

Kubelet Status Check

Checking kubelet service status:
systemctl status kubelet
Viewing kubelet errors from Linux system:
journalctl -xeu kubelet
Viewing kubelet errors from Kubernetes:
kubectl get events --all-namespaces --sort-by='.metadata.creationTimestamp'

Pod Log and Status Check

Viewing pod logs:
kubectl logs <POD_NAME> -n <NAMESPACE>
Viewing previous pod logs (if pod was restarted):
kubectl logs --previous <POD_NAME> -n apinizer
Viewing pod details:
kubectl describe pod <POD_NAME> -n apinizer

Pod Operations

Entering pod:
kubectl exec -it <POD_NAME> -n prod /bin/bash
Making request without entering pod:
kubectl exec -it <POD_NAME> -n prod -- curl x.y.gov.tr

Deployment Operations

Restarting deployment:
kubectl rollout restart deployment manager -n apinizer
Setting deployment replica count:
kubectl scale deploy cache -n prod --replicas=0
Deleting deployment:
kubectl delete -f apinizer-deployment.yaml
Force deleting pod in Terminating state:
kubectl delete pod <POD_NAME> -n apinizer --grace-period=0 --force
Version update:
After pulling images to servers, the following commands are used. These commands work like the “vi” editor, use “:wq” to save and exit.
kubectl edit deployment manager -n apinizer
kubectl edit deployment cache -n prod
kubectl edit deployment worker -n prod
Cleaning evicted pods:
kubectl get pod -n prod | grep Evicted | awk '{print $1}' | xargs kubectl delete pod -n prod

Node Affinity Configuration

Preventing pod from running on specific nodes:
affinity:
  nodeAffinity:
    requiredDuringSchedulingIgnoredDuringExecution:
      nodeSelectorTerms:
        - matchExpressions:
            - key: kubernetes.io/hostname
              operator: NotIn
              values:
                - kuberdemo55
                - kuberdemo56

Docker Commands

Image Operations

Listing images:
docker images
Listing all containers:
docker ps -a
Image pull operation:
sudo docker pull apinizercloud/manager:2024.xx.0
Image export:
sudo docker save apinizercloud/manager:2024.xx.0 > manager_2024.xx.0.tar
Image import:
sudo docker load < manager_2024.xx.0.tar

Containerd Commands

Namespace Operations

Listing namespaces:
sudo ctr namespaces list
Listing containers by namespace:
sudo ctr --namespace k8s.io containers ls

Image Operations

Listing Apinizer images:
sudo ctr -n k8s.io images list | grep apinizer
Image pull operation:
sudo ctr --namespace k8s.io images pull docker.io/apinizercloud/manager:2024.05.0
Image export:
sudo ctr -n k8s.io images export /tmp/manager:2024.05.0.tar docker.io/apinizercloud/manager:2024.05.0
Image import:
sudo ctr --namespace k8s.io images import /tmp/manager:2024.05.0.tar