将Kubernetes节点设置为不可用

将Kubernetes节点设置为不可用,kubernetes,Kubernetes,有人能告诉我如何设置Kubernetes节点不可用和重新安排时间吗 所有的吊舱都在上面运行 我已经尝试过排空节点,但我不确定排空节点是否真的会将其上运行的pod重新安排到其他节点 通过使用--force选项,我唯一的现有pod被逐出/删除。从排水系统将现有pod重新调度到其他节点,并使用NoSchedule污点将节点标记为不可调度,这样就不会在该节点上调度新pod。如果使用Kubernetes 1.5+,kubectl排水管应该可以做到这一点。(见此处:) 也许没有剩下节点,可以启动你的吊舱?这

有人能告诉我如何设置Kubernetes节点不可用和重新安排时间吗 所有的吊舱都在上面运行

我已经尝试过排空节点,但我不确定排空节点是否真的会将其上运行的pod重新安排到其他节点


通过使用--force选项,我唯一的现有pod被逐出/删除。

从排水系统将现有pod重新调度到其他节点,并使用
NoSchedule
污点将节点标记为不可调度,这样就不会在该节点上调度新pod。

如果使用Kubernetes 1.5+,
kubectl排水管
应该可以做到这一点。(见此处:)

也许没有剩下节点,可以启动你的吊舱?这并不意味着已经没有节点了,但是调度程序可能无法在另一个节点上重新调度Pod


关于

如果您正在使用Kubernetes部署/复制集,他们应该为您这样做。您的部署配置了一组要为每个pod创建的副本。当您删除节点时,计划程序将看到当前活动数量小于所需数量,并自动创建新的副本

如果您只是在没有部署的情况下部署POD,那么这不会发生,唯一的解决方案是手动重新部署-这就是为什么您应该使用部署

注意:

当您运行新的吊舱时,您不会移动以前运行的吊舱。以前POD中所有未持久化的状态都将消失

看一看:

但是,使用命令
$kubectl drain
也是一个好主意:

看看答案-

来自官方:

“排水”会逐出或删除除镜像之外的所有吊舱 POD(不能通过API服务器删除)。 如果存在守护程序管理的POD,则不会继续进行排放 没有--忽略守护程序,不管怎样它都不会 删除任何守护程序管理的播客,因为这些播客将 将立即替换为守护程序控制器,该控制器将忽略不可计划的标记。如果有豆荚 既不是镜像吊舱也不是由ReplicationController管理的, 复制集、守护程序集、StatefulSet或作业,然后排空 不会删除任何播客 除非你使用武力--强制也允许删除 如果管理一个或多个资源的 豆荚不见了

您可以使用它来说明在使用
$kubectl drain
命令时会发生什么

还可以尝试将
$kubectl drain
--dry run
参数一起使用,以便在应用任何更改之前查看其结果:

$ kubectl drain <node-name> --force --dry-run
$kubectl排水管——强制——干运行

注意:它不会显示任何有关现有本地数据或守护程序的错误,您可以在不使用
--dry run
参数的情况下看到这些错误。

请将您的帖子的格式设置为清晰易懂。格式化文本。