kubectl drain |
Vidange |
---|---|
Kubernetes |
Syntaxe
kubectl drain NODE [options] |
Description
Cette commande permet d'indiquer le noeud de vidange en préparation de la maintenance.
Remarques
- La commande drain indique que le noeud de vidange en préparation de la maintenance.
- Le noeud donné sera marqué comme non planifiable pour empêcher l'arrivée de nouveaux pod. La commande drain expulse les pod si l'APIServer est prise en charge. Sinon, il utilisera le DELETE normal pour supprimer les pod. La commande drain expulse ou supprime tous les pod à l'exception des pod miroir (ne pouvant pas être supprimés via le serveur API). S'il y a des pod gérés par DaemonSet, le drain ne se poursuivra pas sans --ignore-daemonsets, et quoi qu'il en soit, il ne supprimera aucun pod géré par DaemonSet, car ces pod seraient immédiatement remplacés par le contrôleur DaemonSet, ignorant les marquages non programmables. S'il existe des pod n'étant ni des pod miroirs ni gérés par ReplicationController, ReplicaSet, DaemonSet, StatefulSet ou Job, le drain ne supprimera aucun pod sauf si vous utilisez --force. --force autorisera également la suppression si la ressource de gestion d'un ou plusieurs pod est manquante.
- La commande drain attend une fin normale. Vous ne devez pas utiliser la machine tant que la commande n'est pas terminée.
- Lorsque vous êtes prêt à remettre le noeud en service, utilisez kubectl uncordon, ce qui rendra le noeud planifiable à nouveau.
Exemples
L'exemple suivant permet de faire la vidange de noeud "gladir", même s'il y a des pod non gérés par un ReplicationController, ReplicaSet, Job, DaemonSet ou StatefulSet dessus :
kubectl drain gladir --force |
L'exemple suivant est comme ci-dessus, mais abandonne s'il y a des pod non gérés par un ReplicationController, ReplicaSet, Job, DaemonSet ou StatefulSet, et utilisez une période de grâce de 15 minutes :
kubectl drain gladir --grace-period=900 |
Dernière mise à jour : Lundi, le 1 Février 2021