记一次logtail锁死/tmp目录

1.现象

线上一台备用节点logtail 100%,这台机器是8核,部署的是线上服务的备用节点,平时都没什么负载,现在负载居然到了500多

这时想到的最直接的操作就是kill -9,居然干不掉

2.追查过程

1)看最近系统有什么报错:

这里发现当天有报系统调用mkdir操作超时,然后取样了这里的几个进程,

这里发现crontab发起的很多任务,最后都挂住了,

继续统计,发现跟负载中的数量对得上,虽然负载看着很高,但是cpu负载并不高,继续查看

发现这些进程最后都挂在了mkdir

父进程可以干掉,最后执行mkdir的子进程干不掉,跟logtail类似

2)gpt分析一下系统报错

大概有个结论,就是系统有个锁一直没放掉,导致新的进程执行mkdir时挂在了申请锁的节点

3)strace,pstack出场

最早想通过strace查看一下logtail到底在执行什么,结果机器上strace没安装,于是yum install,

最后也挂住了,退不出来,幸好strace已经安装好了,于是

发现也挂住了,

pstack也挂住了,

4)从cpu 100%入手

这里初步有一个结论,被卡住的其他进程cpu都是0%,只有logtail是100%,还是单线程,那么就是logtail占着锁,还死循环了,那为什么kill -9不行,看gpt

大概意思是,有些关键系统调用执行过程中,是不允许直接捕获SIGKILL二退出进程的,这就解释了为什么上面的logtail进程无法kill -9,那只有它只这样吗,

包括前面说到的yum install,包括那些crontab启的mkdir的进程,还有我实验性的 strace mkdir /tmp/aa,这些进程都无法kill -9,不同的是,这里是两个系统调用,一个是mkdir,一个是open,不过目录都是/tmp,同样求助gpt

得到一个结论,应该是/tmp上有一个目录项锁,同时在其他目录操作是没有问题的,也印证了只有/tmp锁了

logtail cpu100%,而其他进程0%,logtail还是单线程,说明logtail拿着这个锁,而其他进程都在等这个锁

5)查看这个锁

通过lslocks查看,发现logtail在/tmp上并没有锁,但是通过lsof查看

发现有一个锁文件

6)初步结论

简单分析,logtail 100%,其他进程0%,应该是logtail拿着锁没有释放,因为没法strace查看logtail进程,所以细节暂时无法深究,阿里云的技术人员也祭出各种绝技,终究跟我上面的分析差不多,最后他们说dump整个机器,后续再慢慢分析,但是这个机器需要重启,把锅甩给阿里云之后,我会继续跟踪,希望他们能给出一个确切的分析结论。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/662639.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

maven打包spring项目

常用的Maven命令如下 命令 说明mvn clean 清理Maven 项目。会删除目标路径(一般是target目录)Maven生成的打包文件,编译文件。mvn package 打包Maven项目,会生成jar 或者war文件。mvn test 执行test目录下的测试用例。mvn deploy 发布依赖到远端mvn site 生成…

2024年超声波清洗机排行榜,实测五款超声波清洗机,哪款比较强?

相信大家在选购超声波清洗机时,会发现市面上有非常多的超声波清洗机品牌,会非常纠结到底哪款比较好用,而小编选购超声波清洗机时更多时候会比较在意的是便捷度、清水槽容量、噪音等方便的一个参数值,了解清楚各个参数后再选择超声…

02.PostgreSQL运算符

1. 算术运算符 算术运算符 描述 示例 + 加法运算符 SELECT A+B - 减法运算符 SELECT A-B * 乘法运算符 SELECT A*B / 除法运算符 SELECT A/B % 取余运算符 SELECT A%B 1.1 加法与减法操作符 SELECT 100,100+11,100-11,100+23.0,100-23.0 运算结果 由此得出结论: 一个整数加上…

测试ASP.NET Core项目调用EasyCaching的基本用法(Redis)

EasyCaching中的包EasyCaching.Redis和EasyCaching.CSRedis都支持集成Redis实现缓存,前者基于StackExchange.Redis,而后者基于CSRedisCore,本文学习使用EasyCaching.Redis包连接redis服务实现缓存的基本用法。   新建WebApi项目&#xff0c…

体育馆运动场地预定小程序的独特优势与用户体验

随着人们健康意识的提高,体育馆成为了大家进行锻炼和运动的重要场所。为了更好地满足用户的需求,体育馆需要开发一款预定场地的小程序,为用户提供便捷、高效的预定服务。本文将介绍如何使用乔拓云平台开发体育馆运动场地预定小程序&#xff0…

#10外部网页跳转vue3+SpringMVC解码GBK编码的参数

目录 1、背景 2、失败尝试之iconv-lite 2.1、安装和使用 2.2、遇到的问题 2.3、解决方案(vite-plugin-node-polyfills) 2.4、测试 3、成功尝试 3.1、前端参数读取方式 3.2、后端解码 1、背景 外部jsp页面中编码方式为GBK,跳转到vue页面时如果使用decodeURI…

vue不同环境配置不同打包命令

这个需求非常普遍,通常情况我们在开发的时候一般会有三个环境:开发环境、测试环境、生产环境,我们一步步来看下。 vue环境变量是什么? 指的是在不同地方(开发环境、测试环境、生产环境),变量就…

混合攻击流量对系统安全性的综合评估

很多针对安全设备的测试仅仅针对安全设备本身的防护,比如防御的漏洞攻击行为、恶意代码是否足够多,能否抵御大流量的L23层DDoS或者应用层的DDoS攻击,却没有考虑是否防御攻击时,一并阻止了正常的业务流量。以下图为例,当…

Spring-mvc、Spring-boot中如何在调用同类方法时触发AOP

1. 问题描述 Spring-mvc和Spring-boot中aop可以实现代理的功能,我们可以借此实现事务和日志记录或者限流等多种操作。但是,如果你在一个方法中调用其同类下的其他方法的时候不会触发AOP。本文主要说明其原因及解决办法和实现原理。 2. 原因 AIOP的本质是…

从零开始学Linux之gcc链接

目录 创建静态库并使用 创建动态库(共享库)并使用 链接:将.o目标文件链接起来生成一个可执行程序文件,可分为静态链接和动态链接 静态链接:链接器会找出程序所需的函数,然后将它们拷贝到执行文件,由于这种拷贝是完整…

vue3前端开发,element-plus前端框架探秘:scope对象

vue3前端开发,element-plus前端框架探秘:scope对象!我们经常需要对当前行的数据进行操作,比如增加,删除,编辑等,为此我们需要传递当前行所对应的唯一主键,通常情况下,当前行对应的业务主键是id属…

麒麟系统—— openKylin 安装 Maven

麒麟系统—— openKylin 安装 Maven 一、准备工作1. 确保麒麟系统 openKylin 已经安装完毕。2. 确保 java 已经安装完毕 二、下载Maven三、解压 Maven 与环境配置解压配置环境变量验证 最终:介绍配置的其他参数使用 本文将分享如何在麒麟操作系统 openKylin 上安装…

一些大语言模型(LLM)相关的开源项目

一些大语言模型(LLM)相关的开源项目 更多文章访问: https://www.cyisme.top 因为站内限制问题,有些图片无法显示,导致阅读体验较差,可以访问原文:《一些大语言模型(LLM)相关的开源项…

Json序列化和反序列化 笔记

跟着施磊老师学C 下载&#xff1a;GitHub - nlohmann/json: JSON for Modern C 在single_include/nlohmann里头有一个json.hpp&#xff0c;把它放到我们的项目中就可以了 #include "json.hpp" using json nlohmann::json;#include <iostream> #include <…

Unity_使用Shader实现玻璃和镜面效果

效果图如下&#xff1a; 玻璃效果图 镜面效果图 Step1 搭建场景→镜子使用Quad代替&#xff0c;放置在需要反射的墙面→创建新的材质和Shader Step2 墙壁外创建Camera&#xff0c;用来渲染物体后方的视图→创建RenderTexture&#xff0c;赋于该相机 Step3 Shader的编写如下…

PyTorch][chapter 13[李宏毅深度学习][Semi-supervised Linear Methods-2]

前言&#xff1a; 接上篇CSDN 这里面重点讲下面4个方面 目录&#xff1a; PCA-Another Point of view&#xff08;SVD&#xff09; PCA 和 AutoEncoder 的关系 PCA 的缺点 PCA Python 例子 一 PCA-Another Point of view 以手写数字7的图像为例&#xff0c;它由不…

RabbitMQ控制台的基本使用

启动RabbitMQ后&#xff0c;浏览器 http://localhost:15672 打开RabbitMQ的控制台页面后&#xff0c;登录默认账户guest。 一. 添加队列 控制台选择队列&#xff0c;然后选择添加队列&#xff0c;队列类型默认经典类型&#xff0c;然后输入队列名称&#xff0c;最后添加队列。…

百度输入法往选字框里强塞广告

关注卢松松&#xff0c;会经常给你分享一些我的经验和观点。 国内几乎100%的输入法都有广告&#xff0c;只是你们没发现而已&#xff01;&#xff01;&#xff01; 百度输入法居然在输入法键盘上推送广告&#xff0c;近日&#xff0c;博主阑夕 表示&#xff0c;V2EX论坛上有…

2024年美国大学生数学建模竞赛F题思路分析与数据

题目 非法野生动物贸易对环境造成了负面影响&#xff0c;并威胁全球生物多样性。据估计&#xff0c;其涉及高达265亿美元的年交易额&#xff0c;被认为是全球所有非法交易中的第四大。[1] 你需要开发一个基于数据驱动的5年项目&#xff0c;旨在显著减少非法野生动物贸易。你的…

PFA氟气吸收装装置耐强酸PFA气体洗涤装置本底纯净

PFA氢气吸收装置在PFA尾气处理中扮演着重要的角色。PFA&#xff08;可溶性聚四氟乙烯&#xff09;是一种聚合物材料&#xff0c;具有良好的化学惰性和耐腐蚀性。在半导体工业过程中&#xff0c;PFA尾气中可能含有氢气等有害气体&#xff0c;需要进行处理以确保环境安全和合规性…