k8s 设置Node节点驱逐pod的时间

2023-05-16

官方api-server参数具体作用

官方kube-controller-manager 参数具体作用

官方kubelet参数具体作用

官方kubelet参数具体作用

以下调整是需要加入到集群中的,最后效果验证pod的迁移时间为11-16s

kube-controller-manager调整

配置路径:/etc/kubernetes/manifests/kube-controller-manager.yaml

- --node-monitor-period=2s . #在NodeController中同步节点状态的周期。默认5s

- --node-monitor-grace-period=10s #我们允许运行的节点在标记为不健康之前没有响应的时间。必须是kubeletnodeStatusUpdateFrequency的N倍,其中N表示允许kubelet发布节点状态的重试次数默认40s。

- --node-startup-grace-period=30s #我们允许启动节点在标记为不健康之前没有响应的时间。默认1m0s。(这个其实不需要调整因为是启动节点的时间,业务并没有要求启动时间)

- --pod-eviction-timeout=1m #删除失败节点上的pods的宽限期。默认5m 失败立即删除,但是其实我是修改的pod的yaml文件所以这里不需要修改

kube-apiserver调整

配置路径: /etc/kubernetes/manifests/kube-apiserve.yaml

最终判断驱逐时间的调整还是根据kube-apiserver的参数(这个也没有设置,因为设置了下边pod单独制定,精确到了namespace级别)

- --default-not-ready-toleration-seconds=60 指示notReady:NoExecute的容忍秒数,默认情况下添加到没有这种容忍的每个pod中。

- --default-unreachable-toleration-seconds=60 指示对不可到达的:NoExecute的容忍秒数,默认情况下添加到没有这种容忍的每个pod中。

- --enable-admission-plugins=NodeRestriction,PodSecurityPolicy,DefaultTolerationSeconds 默认容忍的秒数开启

如果在全局中不增加此参数,那就需要在pod中单独指定,一般不建议此项操作,但是我们暴力设置了,节点出现问题直接迁移
使用全局方式定义驱逐方式来决定node节点not ready状态pod的迁移,在应用商店部署的时候直接设置

tolerations:
      - key: node.kubernetes.io/not-ready
        effect: NoExecute
        tolerationSeconds: 0
      - key: node.kubernetes.io/unreachable
        operator: Exists
        effect: NoExecute
        tolerationSeconds: 0

kubelet调整

配置路径: /var/lib/kubectl/conf.yaml

指定的频率连续报告节点状态更新,其默认值为 10s。
指定kubelet多长时间向master发布一次节点状态。注意: 它必须与kube-controller中的nodeMonitorGracePeriod一起协调工作。(默认 10s)
node-status-update-frequency: 10s

测试关闭一个node节点,停掉kubelet,查看默认驱逐的时候为60s,如果不设置的话,默认官方5m才会驱逐pod

创建一个nginx的示例测试,并停掉kubelet服务,查看pod的驱逐1m的变化情况

通过watch -n 1 "kubectl get pod -n kube-system |grep xxx "

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

k8s 设置Node节点驱逐pod的时间 的相关文章

  • K8s-yaml的使用及命令

    YAML配置文件管理对象 对象管理 创建deployment资源 kubectl create f nginx deployment yaml 查看deployment kubectl get deploy 查看ReplicaSet kub
  • npm、yarn、pnpm如何清除缓存?

    前端工程化创建项目会经常使用各种安装包管理工具 安装各种前端依赖包 例如 npm yarn pnpm等 时间一长 各种安装包管理工具的在安装依赖时 留下的缓存文件就会变得很大 以至于影响系统的运行 因此必要时清除缓存就是一个不错的选择 本文
  • Express初学之入门

    1 Express简介 基于Node的极简MVC框架 提供灵活的路由功能 提供强大的中间件机制 内核极小 扩展性很好 使用广泛 2 路由机制 Express概念 定义了Api的地址 请求 响应方式 方法 天然支持HTTP Method 中的
  • Prometheus监控 controller-manager scheduler etcd

    用prometheus插件监控kubernetes控制平面 例如 您使用kubeadm构建k8s集群 然后kube控制器管理器 kube调度程序和etcd需要一些额外的工作来进行发现 create service for kube cont
  • node环境实现console输出不同颜色

    一 输出规则分析 1 输出及打印如下 console log x1B 31m s x1B 0m 这是红色 console log x1B 36m s x1B 0m 这是青色 2 规则说明 x1B 31m 是一个转义序列 它将被您的终端拦截并
  • k8s删除Terminating 的命名空间等资源

    背景 在k8s中执行删除命名空间后 命名空间没有被删除而是处于Terminating状态 此时再执行删除仍然删除不掉 解决 将要删除的命名空间信息导出为json数据 下面traefik v2 替换成你需要删除的命名空间名称 kubectl
  • 单机版kubernetes

    Kubernetes 集群的搭建是有一定难度的 官方安装推荐了MiniKube作为单机调试 学习 1 centos安装 1 1 先决条件 安装VirtualBox KVM Note Minikube 也支持 vm driver none 选
  • docker下mysql镜像初始化

    目录 1 介绍 2 部署及验证 2 1 场景复现 2 2 创建dockerfile 2 3 初始化脚本 2 4 构建镜像并查看 2 5 创建容器并验证 2 6 完成 1 介绍 原理 当Mysql容器首次启动时 会在 docker entry
  • Deployment Controller 典型使用场景

    1 重新调度 Rescheduling 不管想运行 1 个副本还是 1000 个副本 副本控制器都能确保指定数量的副本存在于集群中 即使发生节点故障或 Pod 副本被终止运行等意外状况 2 弹性伸缩 Scaling 手动或者通过自动扩容代理
  • CentOS 7 下 minikube 部署 && 配置

    CentOS 7 下 minikube 部署 配置 文章目录 CentOS 7 下 minikube 部署 配置 下载 安装 下载安装脚本 安装 minikube 启动 minikube 环境 安装 kubectl 工具 启动 miniku
  • kubernetes最佳实践(三) - kubedns部署

    1 服务发现 kubernetes 提供了 service 的概念可以通过 VIP 访问 pod 提供的服务 但是在使用的时候还有一个问题 怎么知道某个应用的 VIP 比如我们有两个应用 一个 app 一个 是 db 每个应用使用 rc 进
  • 小白入坑-利用express构建一个简单的Node项目

    做了部分前端的东西 当然不能局限眼前的成果 梦想能成为全栈的大佬 然后左手一个小姐姐 右手一个富萝莉 走远了 奈于java对前端来说比较难 耗费的学习时间也比较长 所以先从node下手过一下瘾儿 首先 win r打开windows的运行框
  • Kubernetes 集群部署 ------ 二进制部署(二)

    单节点 https blog csdn net Yplayer001 article details 104234807 先具备单master1节点部署环境 三 master02部署 优先关闭防火墙和selinux服务 在master01上
  • Rancher 图形化管理K8S

    题外话 之前我们一直都是使用命令行来管理K8S的 这种做法虽然对程序员来说看起来很炫酷 但有时候用起来还是挺麻烦的 今天我们来介绍一个K8S可视化管理工具Rancher 使用它可以大大减少我们管理K8S的工作量 希望对大家有所帮助 简介 R
  • k8s 裸机安装 nginx1.19 ingrass

    k8s 裸机安装 nginx1 19 ingrass deploy yaml文件如下 apiVersion v1 kind Namespace metadata name ingress nginx labels app kubernete
  • express脚手架安装和使用,node添加跨域处理

    前言 node的脚手架 express generator 的安装和使用 安装 步骤一 全局安装脚手架 npm i express generator g cnpm i express generator g 可以运行命令 express
  • K8S暴露端口-dubbo应用远程Debug

    1 Dockerfile增加环境变量 ENV JAVA OPTS Xdebug Xrunjdwp transport dt socket address 9901 server y suspend n 2 暴露端口 template ser
  • Nodejs版本管理工具mvn部署

    部署mvn curl o https raw githubusercontent com creationix nvm v0 34 0 install sh bash 添加环境变量 vim zshrc export NVM DIR HOME
  • kubeadm 安装k8s

    关于k8s集群化部署 以下均是个人一步一步的完成部署 并且会罗列出在部署过程中遇到的各种问题及其解决方式 一 环境准备 环境准备阶段试用与master节点部署与work节点部署 即master和work节点全部都需要执行这些步骤 1 关闭防
  • DHorse v1.3.2 发布,基于 k8s 的发布平台

    版本说明 新增特性 构建版本 部署应用时的线程池可配置化 优化特性 构建版本跳过单元测试 解决问题 解决Vue应用详情页面报错的问题 解决Linux环境下脚本运行失败的问题 解决下载Maven安装文件失败的问题 升级说明 下载v1 3 2安

随机推荐

  • 布谷鸟算法详细讲解

    今天我要讲的内容是布谷鸟算法 xff0c 英文叫做Cuckoo search CS algorithm 首先还是同样 xff0c 介绍一下这个算法的英文含义 xff0c Cuckoo是布谷鸟的意思 xff0c 啥是布谷鸟呢 xff0c 是一
  • Linux c socket 实现http

    include lt stdio h gt include lt sys socket h gt include lt sys types h gt include lt time h gt include lt errno h gt in
  • 在latex中自动调整单词换行

    在latex中自动调整单词换行 xff0c LaTeX 特殊符号 加帽子符号 横线和波浪线 LaTeX 特殊符号 加帽子符号 横线和波浪线 xff1a https blog csdn net qq 17528659 article deta
  • 磁力机航向角计算与补偿

    地理坐标系下该点的磁场强度为 xff08 M 0 xff0c D xff09 xff0c 磁力计测得的三轴磁场强度为 xff08 mx my mz xff09 当我们认为飞机是完全水平放在地上的时候 xff0c 即Z轴和Zb轴是平行的时候
  • 自定义串口通信协议

    原题叙述 有若干个温度采集器 xff0c 每个温度采集器可实现8路温度的测量 试设计一个通信协议 xff0c 用于温度采集器与上位计算机的串行通信协议 xff0c 可实现温度采集数据上传 上位机控制每路温度测量通的开启功能 作业提交方式 x
  • APM:参数设置与启动

    APM agent 参数 Delastic apm service name 61 my test service Delastic apm application packages 61 com yiz Delastic apm serv
  • matlab入门4-mdlInitializeSizes解析

    文章目录 1 DirFeedthrough的设置2 DirFeedthrough的帮助文档3 参考链接 xff1a 1 DirFeedthrough的设置 sizes DirFeedthrough 61 0 1 简而言之 xff0c 只要在
  • 一个JAVA程序员成长之路分享

    我搞JAVA也有些日子了 因为我比较贪玩 上进心不那么强 总是逼不得已为了高薪跳槽才去学习 所以也没混成什么大牛 但好在现在也已经成家立业 小日子过的还算滋润 起码顶得住一月近万元的吃喝拉撒玩各种贷款信用卡 不为金钱过于发愁了 我特别感谢当
  • VIPER架构学习

    VIPER架构学习探索 编程准则资源下载什么是VIPER功能快捷键合理的创建标题 xff0c 有助于目录的生成如何改变文本的样式插入链接与图片如何插入一段漂亮的代码片生成一个适合你的列表创建一个表格设定内容居中 居左 居右SmartyPan
  • NVIDIA JETSON NANO三个版本核心的对比

    A02开发板目前还是在售状态 xff0c 不过不香了 2020年的新货B01版本支持NANO的商业版本16G EMMC那个 xff0c 也支持NX 价格799人刀还是依然和老版本很接近 香 NX和B01版本的NANO核心模块是pin 2 p
  • NVIDIA JETSON XAVIER NX TX2 NANO 比较及与显卡算力对比

    以上数据来源 xff1a CUDA GPU分数 xff0c GPU计算能力 Compute Capability 主要指GPU能够支持的计算类型的版本 xff0c 可以作为评估算力的主要参考 详细的各个版本的不同请查看CUDA Comput
  • JETSON NANO/TX2-NX/NX 商用模组的官方廉价2gb底板跑起来

    文章目录 前言一 NANO 2GB开发板的载板介绍二 性能对比总结 前言 去年 xff0c NVIDIA JETSON NANO NX XVAIER的开发板因为芯片上涨 AI大热 NVIDIA原厂断货等原因 xff0c NANO 2GB的开
  • VINS的折腾之路

    一直从事室内定位相关 xff0c 之前的研究方向都是惯性导航和滤波 xff0c 现在发现基于视觉能够和移动端的这些原有方法做很好的结合 xff0c 所以开始研究vins这个方向 xff0c 主要希望能在移动端上和原有技术结合 xff0c 完
  • 双系统装完之后,Ubuntu系统连不上WIFI的问题

    双系统装完之后 xff0c Ubuntu系统连不上WIFI的问题 产生该问题的一个原因是由于Ubuntu系统没有无线网卡驱动 在Ubuntu系统下 xff0c 使用命令 lshw C network 查询网卡状态 xff0c 查询结果分为两
  • Ubuntu系统安装分区

    一 U盘启动盘制作 1 U盘一个 xff0c U盘空间大小足够大 xff0c 8G够用了 xff0c U盘里面的内容提前转存备份 xff1b 2 UltraISO软碟通启动制作工具或Universal USB Installer xff1b
  • PyTorch查看网络模型的参数量params和FLOPs等

    在PyTorch中 xff0c 可以使用torchstat这个库来查看网络模型的一些信息 xff0c 包括总的参数量params MAdd 显卡内存占用量和FLOPs等 使用前需要先安装torchstat包 xff0c 如下 xff1a p
  • Ubuntu服务器nvidia-smi刷新慢的问题解决

    新安装了nvidia驱动之后 xff0c 通过nvidia smi命令查看显卡使用情况 xff0c 需要等1s多 xff0c 刷新很慢 可通过如下命令解决 xff1a sudo nvidia persistenced persistence
  • 如何将两层板设置成4层板

    在使用Altium Designer 画PCB时 xff0c 多数时候画双面板的比较多 xff0c 但有时抗信号干扰要求更高的情况下 xff0c 可能会设计四层板或者更多层板 xff0c 下面以Altium Designer14软件为例 x
  • debian 无法使用apt-get解决办法

    刚装完debian xff0c 发现直接apt get是用不了的 xff0c 系统会提示你插入DVD xff0c 其实是源的配置问题 xff0c 只需要在apt的源里面修改下配置就可以了 打开apt源文件 sudo vi etc apt s
  • k8s 设置Node节点驱逐pod的时间

    官方api server参数具体作用 官方kube controller manager 参数具体作用 官方kubelet参数具体作用 官方kubelet参数具体作用 以下调整是需要加入到集群中的 xff0c 最后效果验证pod的迁移时间为