Comment définir l'étiquette de Kubernetes nœud au moment de la création?
Je suis guide [1] pour créer des multi-nœud K8S cluster qui a master 1 et 2 nœuds. Aussi, une étiquette doit définir pour chaque nœud, respectivement.
Node 1 - label name=orders
Node 2 - label name=payment
Je sais que ci-dessus pourrait être atteint en cours d'exécution kubectl commande
kubectl get nodes
kubectl label nodes <node-name> <label-key>=<label-value>
Mais je voudrais savoir comment mettre une étiquette lors de la création d'un nœud. La création d'un nœud d'orientation en [2].
Apprécions vos commentaires.
[1] https://coreos.com/kubernetes/docs/latest/getting-started.html
[2] https://coreos.com/kubernetes/docs/latest/deploy-workers.html
Vous devez vous connecter pour publier un commentaire.
Cette réponse est maintenant incorrect (et a été pendant plusieurs versions de Kubernetes). Veuillez voir la réponse correcte par Radek 'Gobelin' Pieczonka
Il y a quelques options qui s'offrent à vous. Le plus simple à mon avis serait d'utiliser un systemd unité à installer et à configurer kubectl, puis exécutez le
kubectl label
de commande. Alternativement, vous pouvez simplement utilisercurl
de mettre à jour les étiquettes dans le du nœud les métadonnées directement.Cela dit, bien que je ne sais pas exactement à vos cas d'utilisation, la façon dont vous utilisez les étiquettes sur les noeuds semble être un effort pour contourner certains de Kubernetes principales caractéristiques, comme la programmation dynamique de composants sur les nœuds. Je dirais plutôt que le travail sur l'étiquetage des nœuds automatiquement que vous essayez d'expliquer pourquoi vous avez besoin pour identifier les nœuds en premier lieu.
En fait, il existe un moyen trivial à réaliser que depuis la 1.3 ou quelque chose comme ça.
Ce qui est responsable de l'enregistrement de votre nœud est le kubelet processus lancé sur elle, tout ce que vous devez faire est de passer un indicateur comme ce
--node-labels 'role=kubemaster'
. C'est de cette façon que j'différencier les nœuds entre les différentes mise à l'échelle automatique des groupes dans mon AWS k8s cluster.v1.7.3+coreos.0
cluster de ne pas détecter que la CLI argument de kubelet a changé.--node-labels mapStringString <Warning: Alpha feature> Labels to add when registering the node in the cluster. Labels must be key=value pairs separated by ','.