k8s 意外集锦 – oom 的连锁反应

最初认为 %ignore_a_1%om(内存溢出)只是一个常见的问题,不会造成太大影响,因为 kubernetes(k8s)集群会自动调度。但实际上,它引发的连锁反应是相当可怕的。

问题描述:当一台机器发生 OOM 时,对应的 Pod 会被调度到其他节点上,导致这些节点也出现 OOM。然后,节点开始疯狂输出日志信息,导致 Master 节点的磁盘空间不足,进而开始清理和驱逐 Pod。被驱逐的 Pod 再次被调度到其他节点上,引发连锁反应,最终导致大量服务不可用。

Pod 出现告警信息 The node had condition: [DiskPressure].

k8s 意外集锦 - oom 的连锁反应

总的来说,一个应用的 OOM 导致 Pod 不断被调度,日志信息疯狂输出,最终导致磁盘空间不足。

解决方案:

设置合适的内存请求和限制:限制单个应用的内存使用是非常必要的,避免出现意外情况。

resources:  requests:    cpu: 100m    memory: 128Mi  limits:    cpu: 200m    memory: 256Mi

修复应用 bug:导致问题的主要原因是代码中的 bug,必须修复。

升级 ECS 的内存:当前集群中的内存不足以满足应用需求,容易引发问题。

定时清理 Master 和 Worker 上的系统日志:之前没有清理过 k8s 的日志文件,长期堆积也是导致此次问题的原因之一。因此,需要编写脚本定时清理日志。

添加磁盘监控:由于没有高存储类型的应用,以前没有考虑到磁盘问题,因此需要添加磁盘监控。

以上就是k8s 意外集锦 – oom 的连锁反应的详细内容,更多请关注创想鸟其它相关文章!

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。
如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 chuangxiangniao@163.com 举报,一经查实,本站将立刻删除。
发布者:程序猿,转转请注明出处:https://www.chuangxiangniao.com/p/32217.html

赞 (0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2026年10月7日 17:08:51
java怎么定义动态int数组
下一篇 2025年12月2日 03:27:30

相关推荐

  • linux如何查看服务器开放的端口和启用的端口

    linux如何查看服务器开放的端口和启用的端口linux如何查看服务器开放的端口和启用的端口linux如何查看服务器开放的端口和启用的端口linux如何查看服务器开放的端口和启用的端口

    nmap工具检测开放端口 nmap是network mapper的简称。nmap是一款免费、开源的网络发现和侦察工具。nmap可以扫描网络中的处于活动状态的主机、开放端口、操作系统版本和服务检测以及执行隐匿方式的信息扫描。安装方式如下: #yum安装yum -y install nmap#rpm包安…

    2026年10月7日 • 用户投稿
    000
  • 一加Ace手机应用卸载不了怎么办?清除顽固软件的详细步骤

    %ignore_a_1%Ace手机应用无法卸载时,需先关闭设备管理权限或通过系统工具卸载;若为系统应用,可启用“显示系统程序”或使用ADB命令强制卸载。 如果您尝试卸载一加Ace手机上的某个应用程序,但常规方法无法成功,则可能是由于该应用具有特殊权限或为系统预装软件。以下是解决此问题的步骤: 本文运…

    2026年10月7日
    200
  • linux内核参数如何优化

      作为高性能WEB服务器,只调整Nginx本身的参数是不行的,因为Nginx服务依赖于高性能的操作系统。  以下为常见的几个Linux内核参数优化方法。 net.ipv4.tcp_max_tw_buckets 对于tcp连接,服务端和客户端通信完后状态变为timewait,假如某台服务器非常忙,连…

    2026年10月7日
    000
  • OpenCV(c++)-1 安装和配置OpenCV4.4(Windows+visual studio 2019)

    OpenCV(c++)-1 安装和配置OpenCV4.4(Windows+visual studio 2019)OpenCV(c++)-1 安装和配置OpenCV4.4(Windows+visual studio 2019)OpenCV(c++)-1 安装和配置OpenCV4.4(Windows+visual studio 2019)OpenCV(c++)-1 安装和配置OpenCV4.4(Windows+visual studio 2019)

    安装opencv4 OpenCV是一个基于BSD许可(开源)发布的跨平台计算机视觉和机器学习软件库,可在Linux、Windows、Android和Mac OS操作系统上运行。[1] 它以轻量级和高效著称,由一系列C函数和少量C++类组成,同时提供Python、Ruby、MATLAB等语言的接口,实…

    2026年10月7日 • 用户投稿
    400
  • 在Linux系统中怎么部署Golang应用程序

    一、安装Golang环境 在Linux系统中,Golang的安装非常简单。首先需要到Golang的官网(https://golang.org/dl/)下载相应版本的二进制文件。然后将下载的文件解压到 /usr/local目录下,并设置环境变量GOPATH、GOROOT: tar -C /usr/lo…

    2026年10月7日
    000
  • linux软件安装的目录是什么

    linux软件安装的目录是什么linux软件安装的目录是什么linux软件安装的目录是什么linux软件安装的目录是什么

    linux软件安装的位置主要有两个:1、“/opt”目录,是给主机额外安装软件所摆放的目录,是用户级的程序目录,这里常用于放置额外的大型软件;2、“/usr/local”目录,是“/usr”下的一个用户级的程序目录,用户自己安装的软件一般选择安装到这个目录下。 Linux 软件安装 Linux 下我…

    2026年10月7日 • 用户投稿
    100
  • composer的缓存目录在哪里_Composer缓存目录位置说明

    composer的缓存目录在哪里_Composer缓存目录位置说明composer的缓存目录在哪里_Composer缓存目录位置说明composer的缓存目录在哪里_Composer缓存目录位置说明composer的缓存目录在哪里_Composer缓存目录位置说明

    Composer默认缓存目录位于用户主目录下的.composer/cache,Linux/macOS路径为/home/用户名/.composer/cache或/Users/用户名/.composer/cache,Windows为C:Users用户名AppDataRoamingComposercach…

    2026年10月7日 • 用户投稿
    400
  • 三角洲行动新武器MK47突击步枪怎么样-三角洲行动新武器MK47突击步枪介绍

    三角洲行动新武器MK47突击步枪怎么样-三角洲行动新武器MK47突击步枪介绍三角洲行动新武器MK47突击步枪怎么样-三角洲行动新武器MK47突击步枪介绍三角洲行动新武器MK47突击步枪怎么样-三角洲行动新武器MK47突击步枪介绍三角洲行动新武器MK47突击步枪怎么样-三角洲行动新武器MK47突击步枪介绍

    %ignore_a_1%MK47突击步枪全面解析 MK47突击步枪是《三角洲行动》新赛季中重磅推出的一款全新武器,一经上线便引起了众多战士的关注。作为一款俄系风格的突击步枪,它采用与AKM相同的7.62*39mm弹药,在保证火力输出的同时兼顾了弹道稳定性。值得一提的是,MK47突破性地支持AR系列配…

    2026年10月7日 • 用户投稿
    100
  • Linux网络下载管理工具(lftp, ftp, lftpget, wget)「建议收藏」

    Linux网络下载管理工具(lftp, ftp, lftpget, wget)「建议收藏」Linux网络下载管理工具(lftp, ftp, lftpget, wget)「建议收藏」Linux网络下载管理工具(lftp, ftp, lftpget, wget)「建议收藏」Linux网络下载管理工具(lftp, ftp, lftpget, wget)「建议收藏」

    大家好,又见面了,我是你们的朋友全栈君。 前言 在Linux运维开发工作中,经常会使用到ftp工具,近来发现了一款比较趁手的工具,望读者喜欢。 iis7服务器管理工具访问链接 部分使用截图: 正文 网络客户端管理工具 在Linux中,通常用网络客户端管理工具实现文件的下载与上传,主要有以下几种,分别…

    2026年10月7日 • 用户投稿
    000
  • 怎么重置Linux云服务器的远程密码

    怎么重置Linux云服务器的远程密码怎么重置Linux云服务器的远程密码怎么重置Linux云服务器的远程密码怎么重置Linux云服务器的远程密码

    CentOS 8 返回目录 1、当出现GRUB版本选择界面时,立即按Esc键。否则系统将继续启动,无法进行下一步。 2、选中第一个内核,按e键进入编辑界面。 3、找到第一个单词是linux的那行,把这行中的ro改成rw init=/sysroot/bin/sh。然后按Ctrl+X键,以单用户模式启动…

    2026年10月7日 • 用户投稿
    300
  • 适合新手用的linux版本有哪些

    适合新手用的linux版本有哪些适合新手用的linux版本有哪些适合新手用的linux版本有哪些适合新手用的linux版本有哪些

    适合新手用的linux版本: 一、Linux5.10.10 能够有效的提升系统的稳定性,修复clk的错误处理,避免不必要的kmap_atomic调用,删除异步暂停支持,提高专用集成电路热区的临界阈值,当DSA主机未绑定,从树种接触所有交换机的绑定。 二、Linux5.10.9正式版 兼容性非常强,所…

    2026年10月7日 • 用户投稿
    100
  • linux忘记root密码怎么找回

    以root身份登陆,执行: # passwd 用户名 (修改密码)# useradd 用户名 (添加用户) 具体示例如下: [root@bogon ~]# passwd rootchanging password for user root.new unix password:bad passwor…

    2026年10月7日
    000
  • Linux服务器VPS的Windows DD包怎么制作

    准备工作 windows原版镜像,可以在msdn下载。 DISM++,用于DIY以及优化wim镜像。 虚拟化驱动:VirtIO(KVM驱动),Xen驱动。 下载gunzip for windows,备用下载点。或者你也可以直接去安装Cmder(官网),其自带有gzip(顺便安利一下这个可以在Win下…

    2026年10月7日
    300
  • Linux的xargs命令如何使用

    Linux的xargs命令如何使用Linux的xargs命令如何使用Linux的xargs命令如何使用Linux的xargs命令如何使用

      xargs使用:从标准输入获取数据。并将数据转化为命令行的参数   xargs 后面直接跟文件报错    xargs 输入重定向    【将文本内容输入一行】    -n   num      【表示一行有num个数字】 – I  替代字符串 举例  find  ./ -type f…

    2026年10月7日 • 用户投稿
    000
  • Linux服务器如何修改密码

    Linux服务器如何修改密码Linux服务器如何修改密码Linux服务器如何修改密码Linux服务器如何修改密码

    linux作为一款开源免费的系统,在服务器上的使用非常广泛,由于linux是一个非以可视化界面为主的系统,所以很多设置需要用到指令,例如修改登录用户的密码,就需要使用到:passwd。今天就和你分享passwd命令用法 1、输入用户的正确密码,登录到远程的Linux服务器 2、成功登录到远程服务器之…

    2026年10月7日 • 用户投稿
    000
  • linux之怎么停止正在执行的脚本

    linux之怎么停止正在执行的脚本linux之怎么停止正在执行的脚本linux之怎么停止正在执行的脚本linux之怎么停止正在执行的脚本

    linux停止正在执行脚本 正在执行一个压力测试脚本bench.sh,但是想中途停止进程,不再执行了。 可以用’ps -ef | grep 进程名‘   查出进程,然后kill该进程。 kill 的用法:kill [信号代码]   进程ID 注:信号代码可以省略;我们常用的信号代码是 -9 ,表示强…

    2026年10月7日 • 用户投稿
    100
  • 如何为初创企业挑选办公电脑?成本与性能的优化方案

    如何为初创企业挑选办公电脑?成本与性能的优化方案如何为初创企业挑选办公电脑?成本与性能的优化方案如何为初创企业挑选办公电脑?成本与性能的优化方案如何为初创企业挑选办公电脑?成本与性能的优化方案

    初创企业选电脑应平衡成本与性能,先明确需求、预算,再选合适配置,避免盲目追求高配或人手一台,优先考虑SSD、扩展性及售后服务,结合团队习惯选择操作系统,可试用后决策,租赁可缓解资金压力但需权衡长期成本,最终以提升效率、控制支出为核心。 初创企业挑选办公电脑,核心在于平衡成本与性能,既要满足日常办公需…

    2026年10月7日 • 用户投稿
    100
  • Linux云服务器中怎么使用sudo

    第一步:安装sudo CentOS yum install sudo -y Ubuntu/Debian apt-get install sudo -y FreeBSD cd /usr/ports/security/sudo/ && make install clean 或者 pkg …

    2026年10月7日
    100
  • 怎样用Java开发自动驾驶?Apollo平台对接

    怎样用Java开发自动驾驶?Apollo平台对接怎样用Java开发自动驾驶?Apollo平台对接怎样用Java开发自动驾驶?Apollo平台对接怎样用Java开发自动驾驶?Apollo平台对接

    java开发者参与apollo自动驾驶平台工作需明确:不直接编写核心控制逻辑,而是作为外部服务对接。主要应用场景包括数据采集、后台服务、可视化界面及日志分析;通信方式推荐使用grpc暴露接口、通过kafka等中间件传输数据或利用apollo bridge模块实现与ros/cyber rt的交互;注意…

    2026年10月7日 • 用户投稿
    100
  • linux高级拷贝命令scp怎么使用

    linux命令scp scp — secure copy (remote file copy program):她是一个安全的远程文件拷贝程序。 synopsis :语法如下scp [-12346bcpqrv] [-c cipher] [-f ssh_config] [-i identity_fil…

    2026年10月7日
    100

发表回复

登录后才能评论
关注微信