openeuler一个服务异常占用cpu的排查过程

2024-06-22 22:20

本文主要是介绍openeuler一个服务异常占用cpu的排查过程,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

1 环境

硬件环境:LS1046A   arm64 

系统环境:openEuler release 22.03 (LTS-SP1)  +  Linux kernel 4.19.26

2 问题说明

我的硬件平台需要适配一下 openEuler release 22.03 (LTS-SP1) 但是目前只能使用原来硬件平台的内核,在适配的过程中,发现 一个内核线程始终占用一个cpu资源。

 3 问题排查

perf top  显示如下

频繁调用的几个函数,使用ftrace 都没有看到具体有用的调用栈。

perf record -F 99 -p 3006 -g -- sleep 60perf report -n --stdio

从linux内核代码里看是 rht_deferred_worker 在处理哈希表类似的工作,但是具体看不到是哪个

 通过排除法,stop服务 或者 ps aux 后kill掉可疑程序发现 是firewalld.service造成的。

kill掉程序或者禁掉 firewalld.service  故障现象就消失了。

查看服务的状态如下:

● firewalld.service - firewalld - dynamic firewall daemonLoaded: loaded (/usr/lib/systemd/system/firewalld.service; enabled; vendor>Active: active (running) since Wed 2024-06-19 09:15:58 CST; 1min 4s agoDocs: man:firewalld(1)Main PID: 4840 (firewalld)Tasks: 2 (limit: 101666)Memory: 38.6MCGroup: /system.slice/firewalld.service└─ 4840 /usr/bin/python3 -s /usr/sbin/firewalld --nofork --nopid6月 19 09:15:57 localhost systemd[1]: Starting firewalld - dynamic firewall dae>
6月 19 09:15:58 localhost systemd[1]: Started firewalld - dynamic firewall daem>
6月 19 09:16:00 localhost firewalld[4840]: ERROR: 'python-nftables' failed: internal:0:0-0: Error: Could not process rule: No such file or directoryinternal:0:0-0: Error: Could not process rule: No such file or directoryinternal:0:0-0: Error: Could not process rule: No such file or directoryinternal:0:0-0: Error: Could not process rule: No such file or directoryinternal:0:0-0: Error: Could not process rule: No such file or directoryinternal:0:0-0: Error: Could not process rule: No such file or directory

4 解决办法

修改

/etc/firewalld/firewalld.conf

将 

FirewallBackend=nftables

 改为

FirewallBackend=iptables

这篇关于openeuler一个服务异常占用cpu的排查过程的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/1085579

相关文章

最新版IDEA配置 Tomcat的详细过程

《最新版IDEA配置Tomcat的详细过程》本文介绍如何在IDEA中配置Tomcat服务器,并创建Web项目,首先检查Tomcat是否安装完成,然后在IDEA中创建Web项目并添加Web结构,接着,... 目录配置tomcat第一步,先给项目添加Web结构查看端口号配置tomcat    先检查自己的to

SpringBoot集成SOL链的详细过程

《SpringBoot集成SOL链的详细过程》Solanaj是一个用于与Solana区块链交互的Java库,它为Java开发者提供了一套功能丰富的API,使得在Java环境中可以轻松构建与Solana... 目录一、什么是solanaj?二、Pom依赖三、主要类3.1 RpcClient3.2 Public

Android数据库Room的实际使用过程总结

《Android数据库Room的实际使用过程总结》这篇文章主要给大家介绍了关于Android数据库Room的实际使用过程,详细介绍了如何创建实体类、数据访问对象(DAO)和数据库抽象类,需要的朋友可以... 目录前言一、Room的基本使用1.项目配置2.创建实体类(Entity)3.创建数据访问对象(DAO

SpringBoot整合kaptcha验证码过程(复制粘贴即可用)

《SpringBoot整合kaptcha验证码过程(复制粘贴即可用)》本文介绍了如何在SpringBoot项目中整合Kaptcha验证码实现,通过配置和编写相应的Controller、工具类以及前端页... 目录SpringBoot整合kaptcha验证码程序目录参考有两种方式在springboot中使用k

Python中异常类型ValueError使用方法与场景

《Python中异常类型ValueError使用方法与场景》:本文主要介绍Python中的ValueError异常类型,它在处理不合适的值时抛出,并提供如何有效使用ValueError的建议,文中... 目录前言什么是 ValueError?什么时候会用到 ValueError?场景 1: 转换数据类型场景

Spring中Bean有关NullPointerException异常的原因分析

《Spring中Bean有关NullPointerException异常的原因分析》在Spring中使用@Autowired注解注入的bean不能在静态上下文中访问,否则会导致NullPointerE... 目录Spring中Bean有关NullPointerException异常的原因问题描述解决方案总结

SpringBoot整合InfluxDB的详细过程

《SpringBoot整合InfluxDB的详细过程》InfluxDB是一个开源的时间序列数据库,由Go语言编写,适用于存储和查询按时间顺序产生的数据,它具有高效的数据存储和查询机制,支持高并发写入和... 目录一、简单介绍InfluxDB是什么?1、主要特点2、应用场景二、使用步骤1、集成原生的Influ

SpringBoot实现websocket服务端及客户端的详细过程

《SpringBoot实现websocket服务端及客户端的详细过程》文章介绍了WebSocket通信过程、服务端和客户端的实现,以及可能遇到的问题及解决方案,感兴趣的朋友一起看看吧... 目录一、WebSocket通信过程二、服务端实现1.pom文件添加依赖2.启用Springboot对WebSocket

使用Python检查CPU型号并弹出警告信息

《使用Python检查CPU型号并弹出警告信息》本教程将指导你如何编写一个Python程序,该程序能够在启动时检查计算机的CPU型号,如果检测到CPU型号包含“I3”,则会弹出一个警告窗口,感兴趣的小... 目录教程目标方法一所需库步骤一:安装所需库步骤二:编写python程序步骤三:运行程序注意事项方法二

Python中的异步:async 和 await以及操作中的事件循环、回调和异常

《Python中的异步:async和await以及操作中的事件循环、回调和异常》在现代编程中,异步操作在处理I/O密集型任务时,可以显著提高程序的性能和响应速度,Python提供了asyn... 目录引言什么是异步操作?python 中的异步编程基础async 和 await 关键字asyncio 模块理论