由于新的服务器不再支持CentOS5.4系统了,我们在新装机器上安装CentOS6.6。随着CentOS6.6机器的增多,我们逐渐注意到一个诡异问题:运行在这些机器上的某些进程,容易莫名其妙地挂起(举个例子,mysql可以连上,但命令收不到响应),也没有输出任何的错误日志,dmesg也看不到异常消息。比较容易卡住的服务有rabbitmq、mysql还有我们自己的几个Java服务程序。

一开始我们是通过重启服务来解决。然后我发现一个现象:就是如果使用gdb、strace、jstack -F命令来查看这些进程的运行情况,在查看之后服务会恢复正常。这样做比重启服务代价小,但随着机器增多,越来越不堪其扰。开始各种搜索,终于找到一个比较可能的问题原因:这是一个内核的Bug引起的。
参考链接:《Linux内核漏洞将影响Haswell架构服务器》  。摘要一下:在infoq网站上,Gil Tene最近报告一个十分重要,但并不为人知Linux内核补丁,特别对采用Haswell架构的Linux系统用户和管理员应该特别关注。报告提醒Red Hat发行版的用户(包括CentOS 6.6及Scientific Linux 6.6),即便是运行在虚拟机中的Linux,虚拟机在流行的Azure、Amazon云平台上,也可能运行在Haswell服务器上,立即更新这个补丁。这个内核漏洞的影响非常简单:在看似不可能情况下,用户进程会死锁并被挂起。即使被正确地唤醒,futex调用等待都有可能被阻止执行。如同Java里的Thread.park可能会一直阻塞等,若幸运可能会在dmesg日志中发现soft lockup消息;如果没那么幸运,将不得不花几个月的人工成本去排查问题,可能一无所获。
可以FQ的同学可以看下:https://groups.google.com/forum/#!topic/mechanical-sympathy/QbmpZxp6C64 。 
这个问题的处理方法是升级内核:yum install kernel -y
后记:升级完内核后,此现象不再出现,说明升级内核是有效果的。升级完的内核版本用uname -a查看是:Linux XXX 2.6.32-642.1.1.el6.x86_64 #1 SMP Tue May 31 21:57:07 UTC 2016 x86_64 x86_64 x86_64 GNU/Linux 。 升级之前是:Linux XXX  2.6.32-504.el6.x86_64 #1 SMP Wed Oct 15 04:27:16 UTC 2014 x86_64 x86_64 x86_64 GNU/Linux

转载于:https://www.cnblogs.com/exmyth/p/6996033.html

CentOS6.6上进程挂起的诡异问题和处理相关推荐

  1. 线程的挂起是错误的概念实际是线程的阻塞,挂起只针对进程,将进程挂起会将进程从内存空间交换到磁盘空间的过程

    线程的挂起是错误的概念实际是线程的阻塞 线程的主要状态有运行态,就绪态和阻塞态.挂起态对线程没有什么意义,这是由于此类状态是一个进程级的概念.特别地,如果一个进程被换出,由于它的所有线程都该进程的地址 ...

  2. 在 Centos6/RHEL6 上恢复 ext4 文件系统下误删除的文件

    [root@xuegod63 ~]# rm -Rf / #执行不成功的, rm: 在"/" 进行递归操作十分危险 rm: 使用 --no-preserve-root 选项跳过安全模 ...

  3. 在Centos6/RHEL6上恢复ext4文件系统下误删除的文件

    在Centos6/RHEL6上恢复ext4文件系统下误删除的文件 [root@GDH ~]# rm -Rf / #执行不成功的, rm: 在"/" 进行递归操作十分危险 rm: 使 ...

  4. linux write引起进程挂起,Linux设备驱动中的阻塞与非阻塞总结

    Linux设备驱动中的阻塞与非阻塞总结 阻塞操作是指,在执行设备操作时,若不能获得资源,则进程挂起直到满足可操作的条件再进行操作. 非阻塞操作的进程在不能进行设备操作时,并不挂起.被挂起的进程进入sl ...

  5. Centos6.2上做nginx和tomcat的集成及负载均衡(已实践)

    Centos6.2上做nginx和tomcat的集成及负载均衡 ---------------------------------------------------------Jdk-------- ...

  6. CentOS6.5上源码安装MongoDB3.2.1

    CentOS6.5上源码安装MongoDB3.2.1 [日期:2016-01-27] 来源:Linux社区  作者:darren-lee [字体:大 中 小] 1.环境准备: 1 mkdir /hom ...

  7. OGG重复记录导致复制进程挂起

    今天处理了个复制进程异常挂起的CASE,出错日志是: 2012-08-20 10:33:02  WARNING OGG-00869  Oracle GoldenGate Delivery for Or ...

  8. Win7+VMware10.0+CentOS 6.4+Tomcat,Win7访问不了CentOS6.4上的Tomcat

    摘要:今天在linux下安装Tomcat后,在虚拟机本地通过:http://localhost:8080/可以访问安装好的Tomcat服务器,但是在本机就不能访问,前提是在本机下可以ping的通虚拟机 ...

  9. Smartfox Server 2x 在 CentOS6.3 上的搭建

    Smartfox Server 2x 在 CentOS6.3 上的搭建 1.  下载SFS2X Linux/Unix 32bit installer Download Linux/Unix 64bit ...

最新文章

  1. 如何用计算机声卡,外置声卡怎么连接电脑
  2. java,阳历转阴历
  3. 【Https异常】This request has been blocked; the content must be served over HTTPS
  4. java注解式开发_JAVA语言之Spring MVC注解式开发使用详解[Java代码]
  5. python里orient_从Python访问OrientDB
  6. 直击!10万阿里小二的复工生活
  7. 海洋zyapi.php,海洋cms自带资源发布api插件和第三方资源站接入办法说明
  8. eclipse安装Android模拟器genymotion及其插件
  9. 计算机桌面提示区,win7如何把电脑桌面分成四个区域?电脑分区域显示方法
  10. 嵌入式linux UBoot移植篇
  11. matlab生成浮雕灰度图,将照片做成浮雕灰度图
  12. Linux系统编程之线程(三)
  13. 查看QQ空间加密相册 真实(视频)
  14. CRT连接虚拟机乱码解决方法
  15. docker启动mysql失败(闪退)原因
  16. 示波器1m和50欧姆示阻抗匹配_示波器的阻抗选择
  17. thzvv.com forum php,为什么Naver账号不能用了?
  18. 史上最全的APP推广模式及方法技巧
  19. 小型网络拓扑(vlan)
  20. 《静态时序分析实用方法》第七章翻译

热门文章

  1. 性能测试总结(二)---测试流程篇
  2. oracle中避免sort操作
  3. Linux基础:Shell脚本学习
  4. 黄猫被汽车撞死 花猫雨夜苦守
  5. 【正一专栏】登贝莱,该不该来!
  6. Ubuntu配置远程访问的xrdp协议和teamviewer软件
  7. opencv轮廓及点在轮廓内判断
  8. 软件设计中的一些原则
  9. explain 之 table || explain 之 type
  10. 计算机网络——IP协议—CIDR与路由聚合 || DHCP协议