CodeBlanks Logo Icon CodeBlanks

Node selector

DaemonSet'te nodeSelector kullanmayı öğrenirsin.

Node selector

DaemonSet'i yalnızca bazı node'larda çalıştırmak için şablona nodeSelector yazılır; yalnızca o etiketleri taşıyan node'lar uygun sayılır:

kubectl label node worker-2 disk=ssd

    spec:
      nodeSelector:
        disk: ssd
      containers:
        - name: ssd-izleyici
          image: ssd-izleyici:1.0

Daha esnek koşullar (ör. "gpu=a100 ya da gpu=h100") için affinity.nodeAffinity kullanılır.

Taint ve toleration

Bazı node'lar taint ile işaretlenir ve toleration'ı olmayan pod'ları iter (ör. control-plane node'u). Log toplayıcı gibi her node'da olması gereken DaemonSet'ler bu taint'lere toleration ekler:

$ kubectl describe node control-plane | grep Taints
Taints: node-role.kubernetes.io/control-plane:NoSchedule

    spec:
      tolerations:
        - key: node-role.kubernetes.io/control-plane
          operator: Exists
          effect: NoSchedule

Uygulama Seçili node'larda çalıştır

İki adım: worker-2 node'una disk=ssd etiketini ekleyen komutu yaz; ardından DaemonSet şablonunun spec bölümünü yaz (spec: ile başlayarak): nodeSelector altında disk: ssd; container adı ssd-izleyici, image ssd-izleyici:1.0.

Başlangıç kodu

terminal
# buraya yaz

Örnek çözüm

terminal
kubectl label node worker-2 disk=ssd

spec:
  nodeSelector:
    disk: ssd
  containers:
    - name: ssd-izleyici
      image: ssd-izleyici:1.0

Beklenen çıktı

node/worker-2 labeled
daemonset.apps/ssd-izleyici created
NAME           DESIRED   CURRENT   READY   NODE SELECTOR
ssd-izleyici   1         1         1       disk=ssd

Soru ve cevaplar

Dersin sorularını cevaplarıyla birlikte inceleyebilirsin. Kendini denemek istersen dersi interaktif olarak çöz.

1 Bir node'dan disk=ssd etiketi kaldırılırsa o node'daki DaemonSet pod'una ne olur?

  • Yeniden başlar
  • Pod kaldırılır Doğru cevap
  • Çalışmaya devam eder
  • Başka node'a taşınır

Açıklama: DaemonSet uygun node kümesini sürekli izler.

2 Pod'u yalnızca etiketli node'lara yerleştir.

Soru
    spec:
      ____:
        disk: ssd
Cevap
    spec:
      nodeSelector:
        disk: ssd

Açıklama: nodeSelector node etiketleriyle eşleşir.

3 Eşleştir.

Kavram Anlamı
nodeSelector Etiketli node'lar
nodeAffinity Esnek node koşulu
taint Node pod'u iter
toleration Taint'e izin

İleri seviye bölümündeki tüm dersler