Wenn Sie in einer Echtzeitumgebung arbeiten, wird es Zeiten geben, in denen Sie eine bestimmte Art von Workloads (oder Anwendungen) auf einem bestimmten Worker-Knoten ausführen möchten.
Beispielsweise sollten Produktions-Workloads auf bestimmten Worker-Knoten ausgeführt werden und nicht mit Staging- oder Entwicklungs-Workloads vermischt werden.
Hier ist das Hinzufügen von Labels zum Knoten hilfreich.
Lassen Sie mich Ihnen zeigen, wie Sie Labels zu Knoten in Kubernetes hinzufügen, die Labels ändern und diese Labels später entfernen.
So lesen Sie Knotenlabels in Kubernetes
So können Sie Kubernetes-Knotendetails zusammen mit ihren Bezeichnungen auflisten:
kubectl get nodes --show-labels
Wenn Sie die Details für einen bestimmten Knoten wissen möchten, verwenden Sie Folgendes:
kubectl label --list nodes node_name
Die Labels haben die Form eines Schlüssel-Wert-Paares. Sie müssen mit einem Buchstaben oder einer Zahl beginnen und dürfen Buchstaben, Zahlen, Bindestriche, Punkte und Unterstriche mit jeweils bis zu 63 Zeichen enthalten.
Wie man einem Knoten ein Label zuweist
Nehmen wir nun an, Sie möchten kworker-rj1
Knoten zum Hosten aller produktionsbezogenen Workloads.
Lassen Sie uns diesen Knoten mit einem geeigneten Namen (wie Produktion) kennzeichnen:
[email protected]:~# kubectl label nodes kworker-rj1 workload=production
node/kworker-rj1 labeled
Bestätigen Sie die Pod-Kennzeichnung:
[email protected]:~# kubectl label --list nodes kworker-rj1 | grep -i workload
workload=production
Ich habe den grep-Befehl verwendet, um unnötige Details auszusortieren und mich auf das Label zu konzentrieren.
So überschreiben Sie das Knotenlabel
Wenn Sie sich später dazu entschließen, einige Labels basierend auf den Anforderungen zu überschreiben, erfahren Sie, wie Sie dies erreichen können.
[email protected]:~# kubectl label --overwrite nodes kworker-rj1 workload=staging
node/kworker-rj1 labeled
Sie können die Umbenennung des Pods bestätigen:
[email protected]:~# kubectl label --list nodes kworker-rj1 | grep -i workload
workload=staging
So entfernen Sie die Knotenlabels
Um das Label von einem Knoten zu entfernen, geben Sie den Schlüssel ohne Wert an.
[email protected]:~# kubectl label --overwrite nodes kworker-rj1 workload-
node/kworker-rj1 labeled
Sie können das Entfernen des Knotenlabels bestätigen:
[email protected]:~# kubectl label --list nodes kworker-rj1 | grep -i workload
[email protected]:~#
Das ist alles! Ich hoffe, Sie haben sich mit diesem Tutorial mit dem Befehl kubectl label vertraut gemacht.
Rakesh Jain
DevOps-Profi | RCA | Jenkins | Git | Docker | Kubernetes | Ansible | Prometheus | Grafana | AWS-Cloud