首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往
您找到你想要的搜索结果了吗?
是的
没有找到

Node节点禁止调度(平滑维护)方式- cordon,drain,delete

cordon、drain和delete三个命令都会使node停止被调度,后期创建的pod不会继续被调度到该节点上,但操作的暴力程度却不一样。...一、cordon 停止调度(不可调度,临时从K8S集群隔离) 影响最小,只会将node标识为SchedulingDisabled不可调度状态。 之后K8S再创建的pod资源,不会被调度到该节点。...禁止调度命令"kubectl cordon node_name"。 恢复调度命令"kubectl uncordon node_name"。...禁止调度命令"kubectl drain node_name --force --ignore-daemonsets --delete-local-data" 恢复调度命令"kubectl uncordon...正确的操作: cordon临时从K8S集群隔离出来,标识为SchedulingDisabled不可调度状态。 drain排干该节点上的pod资源到其他node节点上。

3.1K40

K8S常用命令合集

create -f - # 不过一般可能更常用下面的命令来创建资源 kubectl apply -f /path/to/deployment.yaml # 通过kubectl命令直接创建 kubectl...run nginx_app --image=nginx:1.9.1 --replicas=3 kubectl还提供了一些更新资源的命令,比如kubectl edit、kubectl patch和kubectl...# kubectl edit:相当于先用get去获取资源,然后进行更新,最后对更新后的资源进行apply kubectl edit deployment/nginx_app # kubectl patch...4.1 cordon & uncordon命令 设置是否能够将pod调度到该节点上。...# 不可调度 kubectl cordon node-0 # 当某个节点需要维护时,可以驱逐该节点上的所有pods(会删除节点上的pod,并且自动通过上面命令设置 # 该节点不可调度,然后在其他可用节点重新启动

42420

Kubectl命令大全

kubectl 常用命令 获取资源信息 获取所有 Pod:kubectl get pods 获取所有 Service:kubectl get services 获取特定 Namespace 中的...> --replicas=3 查看节点信息 获取节点列表:kubectl get nodes 管理配置文件 列出当前配置信息:kubectl config view 切换到另一个上下文:kubectl...驱逐节点上的所有 Pod:kubectl drain 取消维护模式:kubectl uncordon 滚动更新历史和回滚 查看滚动更新历史:kubectl...Pod:kubectl drain 取消维护模式:kubectl uncordon 在容器内交互 附加到正在运行的容器:kubectl attach -...查看节点的 CPU 和内存使用情况:kubectl top nodes 查看 Pod 的 CPU 和内存使用情况:kubectl top pods 快速创建 Pod 快速创建一个 Pod:kubectl

24830

K8S常用命令合集

create -f - # 不过一般可能更常用下面的命令来创建资源 kubectl apply -f /path/to/deployment.yaml # 通过kubectl命令直接创建 kubectl...run nginx_app --image=nginx:1.9.1 --replicas=3 kubectl还提供了一些更新资源的命令,比如kubectl edit、kubectl patch和kubectl...# kubectl edit:相当于先用get去获取资源,然后进行更新,最后对更新后的资源进行apply kubectl edit deployment/nginx_app # kubectl patch...4.1 cordon & uncordon命令 设置是否能够将pod调度到该节点上。...# 不可调度 kubectl cordon node-0 # 当某个节点需要维护时,可以驱逐该节点上的所有pods(会删除节点上的pod,并且自动通过上面命令设置 # 该节点不可调度,然后在其他可用节点重新启动

34610

kubectl 高效技巧

是否有过因为使用 kubectl 经常需要重复输入命名空间而苦恼?是否觉得应该要有个记住命名空间的功能,自动记住上次使用的命名空间,不需要每次都输入?...$nsarg $@" echo "$cmd" $cmd return done cmd="kubectl $@" echo "$...就可以将 k 命令注册到当前终端,dash snippets 配置如图所示: image.png 将 k 当作 kubectl 来用,只是不需要输入命名空间,它会调用 kubectl 并自动加上上次使用的非默认的命名空间...,如果想切换命名空间,再常规的使用一次 kubectl 就行,下面是示范: image.png 哈哈,是否感觉可以少输入很多字符,提高 kubectl 使用效率了?...这是目前我探索解决 kubectl 重复输入命名空间的最好方案,一开始是受 fuck命令 的启发,想用 go 语言开发个 k 命令,但是发现两个缺点: 需要安装二进制才可以使用(对于需要在多个地方用kubectl

1.3K41

使用插件扩展 kubectl

由于笔者所维护的集群规模较大,经常需要使用 kubectl 来排查一些问题,但是 kubectl 功能有限,有些操作还是需要写一个脚本对 kubectl 做一些封装才能达到目的。...的插件机制做了一些改进,对 kubectl 的扩展也比较容易,所以下文会带你了解一下 kubectl 的扩展功能。...一、编写 kubectl 插件 kubectl 命令从 v1.8.0 版本开始支持插件机制,之后的版本中我们都可以对 kubectl 命令进行扩展,kubernetes 在 v1.12 以后插件可以直接是以...如 kubernetes 官方文档中描述,只要将二进制文件放在系统 PATH 下,kubectl 即可识别,二进制文件类似 kubectl-foo-bar,并且在使用时 kubectl 会匹配最长的二进制文件...参考: kubectl 插件命明规范 https://kubernetes.io/docs/tasks/extend-kubectl/kubectl-plugins/ https://github.com

1K00
领券