Když pracujete v prostředí reálného času, nastanou chvíle, kdy budete chtít spouštět konkrétní typ úloh (nebo aplikace) na určeném pracovním uzlu.
Například produkční úlohy by měly běžet na konkrétních pracovních uzlech a neměly by se mísit s pracovními zátěžemi ve fázi přípravy nebo vývoje.
Zde bude užitečné přidávání štítků do uzlu.
Dovolte mi, abych vám ukázal, jak přidat štítky k uzlům v Kubernetes, změnit štítky a později tyto štítky odstranit.
Jak číst popisky uzlů v Kubernetes
Podrobnosti o uzlu Kubernetes spolu s jejich štítky můžete uvést tímto způsobem:
kubectl get nodes --show-labels
Pokud chcete znát podrobnosti o konkrétním uzlu, použijte toto:
kubectl label --list nodes node_name
Štítky jsou ve formě páru klíč-hodnota. Musí začínat písmenem nebo číslicí a mohou obsahovat písmena, čísla, pomlčky, tečky a podtržítka, každé až 63 znaků.
Jak přiřadit štítek k uzlu
Nyní předpokládejme, že chcete kworker-rj1
uzel pro hostitele všech úloh souvisejících s výrobou.
Označme tento uzel vhodným názvem (např. production):
[email protected]:~# kubectl label nodes kworker-rj1 workload=production
node/kworker-rj1 labeled
Potvrďte označení pod:
[email protected]:~# kubectl label --list nodes kworker-rj1 | grep -i workload
workload=production
Použil jsem příkaz grep, abych odstranil nepotřebné detaily a zaměřil se na štítek.
Jak přepsat štítek uzlu
Pokud se později rozhodnete přepsat některé štítky na základě požadavků, podívejte se, jak toho můžete dosáhnout.
[email protected]:~# kubectl label --overwrite nodes kworker-rj1 workload=staging
node/kworker-rj1 labeled
Můžete potvrdit přeznačení pod:
[email protected]:~# kubectl label --list nodes kworker-rj1 | grep -i workload
workload=staging
Jak odstranit štítky uzlů
Chcete-li odstranit štítek z uzlu, zadejte klíč bez jakékoli hodnoty.
[email protected]:~# kubectl label --overwrite nodes kworker-rj1 workload-
node/kworker-rj1 labeled
Odstranění štítku uzlu můžete potvrdit:
[email protected]:~# kubectl label --list nodes kworker-rj1 | grep -i workload
[email protected]:~#
To je vše! Doufám, že jste se s tímto návodem seznámili s příkazem kubectl label.
Rakesh Jain
DevOps Professional | RHCA | Jenkins | Git | Docker | Kubernetes | Ansible | Prometheus | Grafana | AWS Cloud