Peta dunia

 

EN: Read in English

Dunia K1: Medan Selera

Label dan selector

Anda akan belajar: cara label tandakan pod anda, dan cara selector memilihnya.

Teks BM belum disemak oleh penutur asli.

Disemak dengan Kubernetes 1.37 pada 31 Okt 2026

Masalahnya

Medan selera anda ada 20 dulang: dulang shop dan dulang api. Nombor pesanan shop mesti sampai ke dulang shop sahaja. Macam mana ia cari?

Pilih satu jawapan.

Tengok

Anda di sini: kluster kind-dev namespace default
Tiga pod dengan label: api-1 ada app=api, shop-1 ada app=shop dan tier=web, shop-2 ada app=shop. Output terminal: $ kubectl get pods --show-labels NAME READY STATUS RESTARTS AGE LABELS api-1 1/1 Running 0 16s app=api shop-1 1/1 Running 0 16s app=shop,tier=web shop-2 1/1 Running 0 16s app=shop

label (pelekat) (label): Pelekat pada dulang: kunci dan nilai, contohnya app=shop. ialah pelekat: satu kunci dan satu nilai, contohnya app=shop. Satu dulang boleh pakai banyak. --show-labels tunjuk semuanya.

Cuba

selector (pemilih) (selector): Peraturan yang pilih dulang ikut pelekatnya, contohnya app=shop. pilih dulang ikut pelekatnya. Tunjuk dulang shop sahaja: kubectl get pods -l app=shop.

Anda di sini: kluster kind-dev namespace default
Gerai: 3. Dulang: 3 (3 sedia). Menunggu gerai: 0.
dev-control-planeBukaPengurus

Tiada dulang di sini.

dev-workerBuka
  • api-1
  • shop-2
dev-worker2Buka
  • shop-1
Masa: +0s (dipercepat)

Teka

Pod mana yang padan dengan -l app=shop,tier=web?

Pilih satu jawapan.

Cuba

Nombor pesanan shop pilih app=shop dan tier=web. Lekatkan label supaya kedua-dua dulang shop menjawab, tapi api-1 tidak.

Seret label ke atas dulang, atau tekan label, kemudian dulang.

Service shop (nombor giliran)

selector:app=shoptier=web

Memilih 1 dulang.

Label

  • shop-1

    • app=shop
    • tier=web

    shop memilih dulang ini.

  • shop-2

    • app=shop

    Tidak dipilih: perlu tier=web.

  • api-1

    • app=api

    Tidak dipilih: perlu app=shop.

kubectl get endpointslices -l kubernetes.io/service-name=shopNAME         ADDRESSTYPE   PORTS   ENDPOINTS     AGEshop-2jl8t   IPv4          80      10.244.1.84   12s

Cuba

Sekarang buat dengan kubectl: kubectl label pod shop-2 tier=web. Kemudian semak dengan kubectl get pods -l tier=web.

Anda di sini: kluster kind-dev namespace default
Gerai: 3. Dulang: 3 (3 sedia). Menunggu gerai: 0.
dev-control-planeBukaPengurus

Tiada dulang di sini.

dev-workerBuka
  • api-1
  • shop-2
dev-worker2Buka
  • shop-1
Masa: +0s (dipercepat)

Semak

Label yang baik, atau perlu diperbaiki? Leret setiap satu.

Leret ke kanan untuk bagus, ke kiri untuk perlu baiki. Atau guna butang.

1 / 4app=shop
app=shop

Anda berjaya!

Kini anda boleh lekatkan label pada dulang dan pilihnya dengan selector.

Nak tahu lebih (pilihan)

Deployment pun guna selector. Templat pod-nya mesti pakai label yang selector minta. Cuba:

Beri templat pod label yang sepadan dengan selector. Kemudian tekan Apply.

Deployment shop (arahan tetap)

selector:app=shop

Label templat pod:
  • app=web

Label

Latihan sebenar (pilihan): kubectl get pods -l app!=shop tunjuk setiap dulang tanpa pelekat itu.