背景:我司作为某运营商公司的技术咨询公司,发现有第三方开发公司在使用HBase 1.1.2 (HDP 2.4.2.258版本)一段时间使用正常后,从某一天开始报OOM,从而导致RegionServer宕机. 故障排查步骤 查看 regionserver的log和stdout.由于是突然宕机,log没有任何error信息,stdout 因为自动拉起以及默认启动脚本是重定向覆盖,所以被洗掉了:而oom dump当时还没开启,无任何明显提示信息. regionserver的log中尽管没有发现erro…
最近笔者有点忙,这次OOM事故发生过去两周前,记得笔者那天正带着家人在外地玩,正中午跟友人吃饭的时候,钉钉连续告警爆表,接着就是钉钉电话(显示广东抬头)一看就知道BBQ了,又一次故障发生了,今天把那次故障复盘一下,做个总结,也给小伙伴分享一下 我是怎么从接到告警开始,怎么一步一步分析故障,然后定位到问题,最后完美解决,成功上线解决问题的. 上述告警内容,由于笔者所在服务是用CMS垃圾回收器,当其GC次数太频繁,达到公司监控平台设置的阈值时,就会通过钉钉通知告知开发者,发送到对应的控制台上.这个异…
        a fellow in IMG wechat group 2 met an error about running out of disk space when using MySQL query today,now let's mimic the situation:     first,i'll create a test table and a procedure,then using the procedure to insert 1000W records into t…
本文转载自 http://www.jb51.net/article/70955.htm 我们知道分析MySQL语句查询性能的方法除了使用EXPLAIN 输出执行计划,还可以让MySQL记录下查询超过指定时间的语句,我们将超过指定时间的SQL语句查询称为“慢查询”. 一. 起因 研发反应某台数据库僵死,后面的会话要么连接不上,要么要花费大量的时间返回结果,哪怕是一个简单的查询. 二. 处理 首先去监控平台查看服务器以及数据库状态,发现这台数据库有大量的慢查询.继续看服务器监控,CPU 平均使用率较…
环境如下: Centos6.5 Apache Hadoop2.7.1 Apache Hbase0.98.12 Apache Zookeeper3.4.6 JDK1.7 Ant1.9.5 Maven3.0.5 最近在测Hbase的压缩,Hadoop安装了lzo和snappy,插入50条文本数据,每条数据大约4M,来看他们的压缩率对比, 然后在测的过程中,发现用java客户端去scan这50条数据时,regionserver频繁宕机看hbase的log发现并无明显异常,查看datanode的log发…
HBASE 优化之REGIONSERVER 一,概述 本人在使用优化regionserver的过程有些心得,借此随笔的机会,向大家介绍我的心得,有些是网上拿来的有些是自己在使用过程自己的经验,希望对大家有帮助,如有不同观点希望大家立即指正.本人使用的hbase版本是 HBase 1.2.0-cdh5.10.0.本文主要从regionserver的角度进行优化hbase,简单来书就是:使regionServer查询延迟更低,磁盘IO降低,系统更加稳定,提高吞吐能力,提升资源利用率,节约成本. 二.…
转贴:http://my.oschina.net/flashsword/blog/205266 本文是一次线上OOM故障排查的经过,内容比较基础但是真实,主要是记录一下,没有OOM排查经验的同学也可以参考. 现象 我们之前有一个计算作业.最近经常出现不稳定,无法正常响应的情况.具体表现是:各种连接超时,从mysql.mongodb和zookeeper到netty,能超时的都超时过了.其他看不到太多有效的异常. 所以我们首先怀疑的是网络问题,打电话跟运维确认,运维说网络问题的可能性几乎为0,因为我…
Phoenix是个很好的hbase 查询工具,在hbase中安装也很简单,可以按照 http://www.cnblogs.com/laov/p/4137136.html 这个连接中进行配置客户端和服务端的Phoenix. PhoenixSQL有如下类: 增删数据:ExecutableAddColumnStatement.ExecutableDropColumnStatement 创建/删除表格:ExecutableCreateTableStatement.ExecutableDropTableS…
关于故障的事后复盘,英文名 Case Study是非常有必要做的,当然是根据故障的级别,不可能做到每个故障都Case Study,除非人员和时间充足: 文档能力也是能力的一种,一般工程师的文档能力比较薄弱或者一般 ,但是一般各种类型的文档其实都有模板,根据模板填充内容也能事半功倍. 故障要有记录, 每个公司应当都有wiki,这些复盘应当记录下来,能学习到很多.Case Study会占用大量的时间, 但是中级以及重大故障还是有必要的. 下面介绍的就是复盘的整体套路: 故障描述 xxx业务状态码报警…
Android中解决图像解码导致的OOM问题 原文链接:http://blog.csdn.net/zjl5211314/article/details/7042017…
一.shell 查询 hbase 查询相当简单,提供了get和scan两种方式,也不存在多表联合查询的问题.复杂查询需通过hive创建相应外部表,用sql语句自动生成mapreduce进行.但是这种简单,有时为了达到目的,也不是那么顺手.至少和sql查询方式相差较大. hbase 提供了很多过滤器,可对行键,列,值进行过滤.过滤方式可以是子串,二进制,前缀,正则比较等.条件可以是AND,OR等 组合.所以通过过滤,还是能满足需求,找到正确的结果的. 1.1 过滤器类型 HBase 最新官方文档中…
项目背景: 在这次影像系统中,我们利用大数据平台做的是文件(图片.视频等)批次的增删改查,每个批次都包含多个文件,上传完成以后要添加文件索引(文件信息及批次信息),由于在Hbase存储的过程中,每个文件都对应一个文件rowKey,一个批次就会有很多个RoweKey,查询的下载的时候就必须根据每个文件的rowkey找到对应的文件,如果一个批次有很多个文件的话,就需要查找很多次,这样是很浪费时间的,一开始没注意这么多,开发并且完成功能测试后,觉得一切OK,但是作为大数据后台,对效率的要求非常高,在压…
用NHibernate,总感觉怪事多罗罗. 比如说,明明我们是在查询,却报错,刨根问底找到出错原因,竟然是因为执行了一些Update甚至Insert!老天,我们明明只是查询而已,什么时候有更新过数据?NHibernate,你是不是傻的? 但事实就是事实,它就是发生了,它就是报错了. 前几天,我再次遇到这个问题:查询导致Update. 我留意了一下代码,发现这个实体类有个对象首先从数据库中获取出来,这时候一切正常. 然后,对这个实体对象进行了一系列的赋值操作. 接着,代码又从数据库中获取一个该实体…
生产环境想要对某个Pod排错.数据恢复.故障复盘有什么办法? k8s考点灵魂拷问9连击之5 考点之简单描述一下k8s副本集ReplicaSet有什么作用? 考点之为什么ReplicaSet将取代ReplicationController控制器? 考点之编写 ReplicaSet 的 spec 有什么需要注意的点? 考点之k8s集群中创建非模板 Pod 为什么可能会被副本集自动收纳? 考点之线上预警k8s集群循环创建.删除Pod副本,一直无法稳定指定目标副本数量? 如果排除了是Pod内部发生了故障…
美图崇尚的故障文化是 "拥抱故障,卓越运维",倡导的基准是 No-Blame, 即「不指责,重改进」.今年 9 月 TakinTalks 社区曾经分享过美图的三段式故障治理方法(美图 SRE:一次线上大事故,我悟出了故障治理的 3 步 9 招),这次重点讲讲故障治理中的最后一个重要环节 -- 故障后的复盘,在这个过程里可以总结吸取经验教训并改进,这样才能让整个系统的稳定性得到实质性提升. 作者介绍:美图 SRE 负责人 - 石鹏 TakinTalks 社区专家团特聘讲师.2016 年加…
原因: 网站访问很慢,报警php进程数过大 排查及处理:1.首先查看服务器监控和mysql监控,分析服务器是否负载过大,受到攻击,以及mysql性能方面是否正常2.发现只读数据库服务器cpu利用率100%,show processlist,发现有很多慢查询,为先保证业务正常运行,先通过mysqladmin processlist -uusername -ppassword查看到连接的进程(使用哪个用户登录,只能查看到该用户下面运行的线程) ,直接kill掉query花时较长的线程.cpu负载慢慢…
本文已收录 https://github.com/lkxiaolou/lkxiaolou 欢迎star.搜索关注微信公众号"捉虫大师",后端技术分享,架构设计.性能优化.源码阅读.问题排查.踩坑实践. 背景 最近某天的深夜,刚洗完澡就接到业务方打来电话,说他们的 dubbo 服务出故障了,要我协助排查一下. 电话里,询问了他们几点 是线上有损故障吗?--是 止损了吗?--止损了 有保留现场吗?--没有 于是我打开电脑,连上 VPN 看问题.为了便于理解,架构简化如下 只需要关注 A.B…
aaarticlea/png;base64,iVBORw0KGgoAAAANSUhEUgAAAwoAAACdCAMAAAAjbX91AAAABGdBTUEAALGPC/xhBQAAAAFzUkdCAK…
一.故障基本信息 发生时间 消除时间 故障历时 故障类别 影响 2018-5-17 18:14:30 2018-05-18 08:58:15 16小时 应用故障 业务瘫痪,用户投诉 二.故障现象 APP无法登陆,导致大面积投诉. 三.故障分析 1.查看系统2018-5-17 17:23:47时catalina日志显示 ORA-00060: 等待资源时检测到死锁,且2018-5-17 18:11后无日志生成. 2.查看数据库显示与2018-05-17 17:23:12分时产生死锁现象,生成数据报告…
case:下面的一条sql语句,导致mysql实例内存暴涨: select * from tables where table_name not in(select table_name from partitions group by table_name having count(*)>1 ); mysql 5.5, 1w+的innodb表. 下面看下调查的结果: 1.  sql的执行情况以及内存分配:   step1: 构造information_schema.tables临时表 1.1 …
背景 长话短说,我们部门一个同事找到我,说他的spark 2.3 structured streaming程序频繁报OOM,从来没有坚持过超过三四天的,叫帮看一下. 这种事情一般我是不愿意看的,因为大部分情况下spark oom就那么几种可能: 数据量拉太大,executor内存爆了: shuffle过程中数据量太大,shuffle数太少,内存又爆了: 闲着蛋疼调用collect之类的方法,把数据往dirver上一聚合,driver内存爆了 闲着蛋疼又调用了一下persist还把结果存内存,还是…
今天收录俩个比较低级的错误. 故障现象:   水冷排风扇高速运转, 并无法调控. 现在CPU散热的水冷排都设计了三条线,   温控4Pin , 水泵线 3Pin  , 接在机箱上USB口取电的灯线或者水泵辅助线. 这里提供了比较流行的 NXZT (国内译名: 恩杰) 的说明书截图, 很多时候都会理所当然的乱接, 但这里面是有学问的. 水泵线是3Pin的,只有正负极, 直接接在主板的 4pin水泵取电位置 . CPU温控线是4PIN的 接在主板上的4PIn取电处. 故障现象:  机箱的面板电源灯…
最近在监控中发现HiveServer2连接到zookeeper里的连接持续上涨,很奇怪,虽然知道HiveServer2支持并发连接,使用ZooKeeper来管理Hive表的读写锁,但我们的环境并不需要这些,我们已经关闭并发功能,以下是线上的配置,甚至把这些值都改成final了. 但是zookeeper连接依然会涨.后来想想,我们要访问的表是hive去映射的hbase,hiveserver2什么时候去连接zookeeper,它连接zookeeper干么,先从日志下手,将线上日志级别改为了debug…
转自:http://blog.csdn.net/chenyu105/article/details/7720162 重点关注关中断的情况.临时做了一个版本,在CPU 0上监控所有非0 CPU的时钟中断计数,检查他们在100ms内是否增加.如果否,则认为此CPU关中断.另外,在高精度时钟中断处理函数hrtimer_interrupt以及时钟中断总入口打点,记录最长耗时.关中断检测代码如下:void check_timer_start(void){int i = 1;for(;i<32;++i)cp…
特征1: hbase.client.RetriesExhaustedException: Can't get the locations 特征2: hbase日志报错如下:org.apache.zookeeper.KeeperException$ConnectionLossException: KeeperErrorCode = ConnectionLoss for /hbase/hbaseid 特征3: unexpected error, closing socket connection a…
问题:通过HBase访问服务在HBase中查询 ASSET_NORMAL 表速度很慢 如下,查询一条数据需要2.970s时间: 如下,统计总条数需要14.675s时间: HBase访问服务部署了3个节点: HBase部署了3个节点: 表 ASSET_NORMAL 部署了2个区域: 查看HBase的配置信息: 通过DBeaver查询,不经过HBase访问服务,查询速度依然慢,说明主要问题不在于HBase访问服务,而在于HBase自身,推断是由于没有对HBase建二级索引所致. 解决方法:基于Pho…
项目上反馈了一个问题,就是在生产环境上,用户正常使用的过程中,出现了服务器内存突然暴涨,客户有点慌,想找下原因. 讲道理,内存如果是缓慢上涨一直不释放的话,应该是存在内存泄漏的,这种排查起来比较困难,还得找开发一块看:但像这种突然暴涨的,肯定是把某些大对象放到内存里了,而最有可能的,就是大查询了,比如把几百万数据查出来这种,但这种一般等用户用完这个功能内存就会降下来. 环境:IIS+.net framework.发现是w3wp进程一直在涨内存,也就是iis,确实是程序的锅. 分析内存问题的话,一…
今天在给一台操作系统为Oracle Linux Server release 5.7的服务器配置网络时,遇到了备份ifcfg-eth0配置文件,导致网卡无法绑定IP地址的情况.觉得是个有意思的案例,特此记录一下,以供学习参考,避免以后再犯同类错误. 在装系统的时候没有配置网络,等到装好系统后,从系统管理员那里了解了IP.子网掩码.网关信息后,才开始配置网络.在修改ifcfg-eth0网卡配置文件前,先备份一份配置文件,以免由于修改不当,导致无法还原到最初的配置.这也是事情的起因 [root@lo…
一 简介:之前遇到一个tmp分区暴涨的问题,后来经过大神的指点,遂分析写下 二 分类: 1  select语句出现 using temporay tmp 下出现 #sql_631a_1.MYD #sql_631a_1.MYI 解决办法:kill掉慢查询,临时文件被删除 2  online_ddl copy 方式 /data/dbname/ 下出现 #sql-6bd4_c.ibd  #sql-6bd4_c.frm 文件 这是在copying-to-tmp 以上情况 5.6和5.7独立临时表空间co…
获取hbase数据 说说:count 'SOCIA:T_SOCIA_ALBUM_TALK'scan 'SOCIA:T_SOCIA_ALBUM_TALK',{LIMIT=>5}get 'SOCIA:T_SOCIA_ALBUM_TALK','0126353498166378496201612141604094932000245562'echo "scan 'SOCIA:T_SOCIA_ALBUM_TALK'" | hbase shell > hbasedata.txt 评论:c…