Cette page montre comment assigner un Pod à un nœud particulier dans un cluster Kubernetes.
Vous devez disposer d’un cluster Kubernetes et l’outil de ligne de commande kubectl doit être configuré pour communiquer avec votre cluster. Si vous ne possédez pas déjà de cluster, vous pouvez en créer un en utilisant Minikube, ou vous pouvez utiliser l’un de ces environnements Kubernetes:
Pour consulter la version, entrez kubectl version.
Listez les nœuds de votre cluster :
kubectl get nodesLa sortie est la suivante :
NAME STATUS ROLES AGE VERSION
worker0 Ready <none> 1d v1.13.0
worker1 Ready <none> 1d v1.13.0
worker2 Ready <none> 1d v1.13.0Choisissez l’un de vos nœuds et ajoutez-y un label :
kubectl label nodes <your-node-name> disktype=ssdoù <your-node-name> est le nom du noeud que vous avez choisi.
Vérifiez que le nœud que vous avez choisi a le label disktype=ssd :
kubectl get nodes --show-labelsLa sortie est la suivante :
NAME STATUS ROLES AGE VERSION LABELS
worker0 Ready <none> 1d v1.13.0 ...,disktype=ssd,kubernetes.io/hostname=worker0
worker1 Ready <none> 1d v1.13.0 ...,kubernetes.io/hostname=worker1
worker2 Ready <none> 1d v1.13.0 ...,kubernetes.io/hostname=worker2Dans la sortie précédente, vous constatez que le nœud worker0 possède le label disktype=ssd.
Le fichier de configuration de pod décrit un pod qui possède un selector de nœud de type disktype:ssd. Cela signifie que le pod sera planifié sur un nœud ayant le label disktype=ssd.
pods/pod-nginx.yaml
|
|---|
|
Utilisez le fichier de configuration pour créer un pod qui sera ordonnancé sur votre nœud choisi :
kubectl apply -f https://k8s.io/examples/pods/pod-nginx.yamlVérifiez que le pod fonctionne sur le nœud que vous avez choisi :
kubectl get pods --output=wideLa sortie est la suivante :
NAME READY STATUS RESTARTS AGE IP NODE
nginx 1/1 Running 0 13s 10.200.0.4 worker0Vous pouvez également ordonnancer un pod sur un nœud spécifique via le paramètre nodeName.
pods/pod-nginx-specific-node.yaml
|
|---|
|
Utilisez le fichier de configuration pour créer un pod qui sera ordonnancé sur foo-node uniquement.
Pour en savoir plus sur labels et selectors.
Cette page est elle utile ?
Thanks for the feedback. If you have a specific, answerable question about how to use Kubernetes, ask it on Stack Overflow. Open an issue in the GitHub repo if you want to report a problem or suggest an improvement.