CodeBlanks Logo Icon CodeBlanks

Equality ve set selector

Eşitlik ve küme tabanlı selector'leri öğrenirsin.

Equality ve set selector

Selector'ların iki türü vardır:

  • Eşitlik tabanlı: =, ==, !=.
  • Küme tabanlı: in, notin, varlık (anahtar) ve yokluk (!anahtar).
kubectl get pods -l 'ortam in (prod,staging)'
kubectl get pods -l 'katman notin (test)'
kubectl get pods -l 'surum'                  # surum etiketi olanlar
kubectl get pods -l 'app=web,ortam in (prod,staging),!eski'

Parantez ve ünlem kabukta özel anlam taşıdığı için ifade tırnak içine alınır.

YAML'daki karşılıklar

Komut satırındaki küme ifadeleri YAML'da matchExpressions operatörlerine karşılık gelir:

# -l 'ortam in (prod,staging)'
- key: ortam
  operator: In
  values: [prod, staging]
# -l '!eski'
- key: eski
  operator: DoesNotExist
# -l 'surum'
- key: surum
  operator: Exists

Uygulama Küme sorguları

Üç komut yaz: ortam değeri prod ya da staging olan pod'ları; katman değeri test olmayan pod'ları; eski etiketi olmayan pod'ları listele.

Başlangıç kodu

terminal
# buraya yaz

Örnek çözüm

terminal
kubectl get pods -l 'ortam in (prod,staging)'
kubectl get pods -l 'katman notin (test)'
kubectl get pods -l '!eski'

Beklenen çıktı

NAME                  READY   STATUS    RESTARTS   AGE
web-7c5b9f6d8-abcde   1/1     Running   0          2h
web-staging-9f8e7d    1/1     Running   0          1h

Soru ve cevaplar

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

1 katman notin (test) ifadesi katman etiketi hiç olmayan pod'ları seçer mi?

  • Hata verir
  • Evet; notin anahtarı olmayanları da kapsar Doğru cevap
  • Hayır
  • Yalnızca default namespace'te

Açıklama: Yalnızca etiketi olan ve test olmayanlar için katman,katman notin (test) yazılır.

2 Değeri bir kümede olanları seç.

Soru
kubectl get pods -l 'ortam ____ (prod,staging)'
Cevap
kubectl get pods -l 'ortam in (prod,staging)'

Açıklama: in küme tabanlı bir operatördür.

3 Eşleştir.

Kavram Anlamı
in In
notin NotIn
anahtar Exists
!anahtar DoesNotExist

Orta seviye bölümündeki tüm dersler