Ana içeriğe atla

Kubernetes Komutları

Kubelet Durum Kontrolü

Kubelet servis durumunu kontrol etme:
systemctl status kubelet
Kubelet hatalarını Linux sistem üzerinden görüntüleme:
journalctl -xeu kubelet
Kubelet hatalarını Kubernetes üzerinden görüntüleme:
kubectl get events --all-namespaces --sort-by='.metadata.creationTimestamp'

Pod Log ve Durum Kontrolü

Pod loglarını görüntüleme:
kubectl logs <POD_NAME> -n <NAMESPACE>
Önceki Pod loglarını görüntüleme (Pod yeniden başlatıldıysa):
kubectl logs --previous <POD_NAME> -n apinizer
Pod detaylarını görüntüleme:
kubectl describe pod <POD_NAME> -n apinizer

Pod İşlemleri

Pod içine girme:
kubectl exec -it <POD_NAME> -n prod /bin/bash
Pod içine girmeden istek atma:
kubectl exec -it <POD_NAME> -n prod -- curl x.y.gov.tr

Deployment İşlemleri

Deployment’ı restart etme:
kubectl rollout restart deployment manager -n apinizer
Deployment replica sayısını ayarlama:
kubectl scale deploy cache -n prod --replicas=0
Deployment silme:
kubectl delete -f apinizer-deployment.yaml
Terminating durumundaki Pod’u zorla silme:
kubectl delete pod <POD_NAME> -n apinizer --grace-period=0 --force
Versiyon güncelleme:
Image’ları sunuculara çektikten sonra aşağıdaki komutlar kullanılır. Bu komutlar “vi” editörü gibi çalışır, kaydederek çıkmak için “:wq” kullanılmalıdır.
kubectl edit deployment manager -n apinizer
kubectl edit deployment cache -n prod
kubectl edit deployment worker -n prod
Evicted durumdaki Pod’ları temizleme:
kubectl get pod -n prod | grep Evicted | awk '{print $1}' | xargs kubectl delete pod -n prod

Node Affinity Yapılandırması

Pod’un belirli node’lar üzerinde çalışmasını engelleme:
affinity:
  nodeAffinity:
    requiredDuringSchedulingIgnoredDuringExecution:
      nodeSelectorTerms:
        - matchExpressions:
            - key: kubernetes.io/hostname
              operator: NotIn
              values:
                - kuberdemo55
                - kuberdemo56

Docker Komutları

Image İşlemleri

Image listeleme:
docker images
Tüm container’ları listeleme:
docker ps -a
Image pull işlemi:
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 Komutları

Namespace İşlemleri

Namespace listeleme:
sudo ctr namespaces list
Container’ları namespace’e göre listeleme:
sudo ctr --namespace k8s.io containers ls

Image İşlemleri

Apinizer image’larını listeleme:
sudo ctr -n k8s.io images list | grep apinizer
Image pull işlemi:
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