摘要: 简介Mqtt是一个物联网消息传输协议 mosquitto是mqtt协议的一个开源实现,http://mosquitto.org/ paho是mqtt协议的客户端实现,这里主要用paho的mqtt java客户端jar包。 http://wiki.eclipse.org/Paho 只需要在pom.xm 阅读全文
posted @ 2017-11-03 15:02 王晓伟 阅读(3130) 评论(0) 推荐(0) 编辑
摘要: influxdb简介 启动步骤 服务启停:sudo service influxdb start/stop/restart 服务启停:sudo service influxdb start/stop/restart 安装过程: 1.增加yum源 cat <<EOF | sudo tee /etc/y 阅读全文
posted @ 2017-11-03 14:57 王晓伟 阅读(883) 评论(0) 推荐(0) 编辑
摘要: influxDB是一个旨在处理高并发写入和查询负载的时序数据库,它是TICK框架的第二部分,influxdb用于任何包含大量时序数据应用的后台存储,包括Devops监控、应用指标数据、物联网传感器数据以及实时分析。 主要特征 如下为influxdb当前支持的主要特性,使其可以作为时序数据应用的一个很 阅读全文
posted @ 2017-10-20 11:36 王晓伟 阅读(2214) 评论(0) 推荐(0) 编辑
摘要: 最近某hadoop集群多次出现机器宕机,现象为瞬间机器的sys cpu增长至100%,机器无法登录。只能硬件重启,ganglia cpu信息如下:首先怀疑有用户启动了比较奇葩的job,导致不合理的系统调用出现的问题。随后加了ps及pidstat信息收集job信息(公共集群蛋疼的地方),然后出现问题的时候,各类脚本已经无法工作,一直没有抓到现场。终于在某一次看到一台机器sys 瞬间增长,且机器还能登录。立马查看现场,发现竟然元凶是datanode:datanode一个进程占用cpu 1600%,sys cpu占用超过40%Datanode的进程栈信息,大量dataxceiver线程block,. 阅读全文
posted @ 2013-12-30 19:44 王晓伟 阅读(3157) 评论(1) 推荐(0) 编辑
摘要: 首先解释两个概念:swap:在linux里面,当物理内存不够用了,而又有新的程序请求分配内存,那么linux就会选择将其他程序暂时不用的数据交换到物理磁盘上(swap out),等程序要用的时候再读进来(swap in)。这样做的坏处显而易见,swap in/swap out这里的代价比较大,相比数据一直放在内存里面,多了读磁盘的操作,而磁盘IO代价。。大家都懂的。OOM:out of memory,指在linux里面,由于系统内存压力,系统会选择保护一些系统进程,而将一些其他的进程kill掉,释放内存。那么在linux里面怎么可以做到这两点呢?一、禁止使用swap1. 可以设置/proc/s 阅读全文
posted @ 2013-12-05 15:05 王晓伟 阅读(725) 评论(0) 推荐(0) 编辑
摘要: 最近给hadoop集群升级了RHEL6,发现性能比之前的差了不少。发现淘宝内核组发现并解决了这个问题原文链接:http://blog.donghao.org/2013/03/20/hadoop%E9%9B%86%E7%BE%A4%E4%B8%8A%E6%8D%89%E5%88%B0kernel-bug%E4%B8%80%E4%B8%AA/于是在测试机器上面跑了一下对比,收货很大:环境介绍:测试机型:IBM X3630 M348G 12X2TSAS集群:master 1台,salve3台测试方式:官方terasort测试数据:100G (10亿条,每条100字节)Map个数:736Reduce个 阅读全文
posted @ 2013-10-17 19:36 王晓伟 阅读(373) 评论(0) 推荐(0) 编辑
摘要: 报错信息:Failure Info:Job initialization failed: java.io.IOException: Split metadata size exceeded 10000000. Aborting job job_201205162059_1073852 at org.apache.hadoop.mapreduce.split.SplitMetaInfoReader.readSplitMetaInfo(SplitMetaInfoReader.java:48) at org.apache.hadoop.mapred.JobInProgress.creat... 阅读全文
posted @ 2013-09-27 18:57 王晓伟 阅读(3488) 评论(0) 推荐(1) 编辑
摘要: 异常信息:13/09/11 12:12:06 INFO hdfs.DFSClient: SMALL_BUFFER_SIZE is 512org.apache.hadoop.ipc.RemoteException: org.apache.hadoop.hdfs.server.namenode.LeaseExpiredException: No lease on /tmp/put_dir/20130911-121205-858/ie_ping1_access_log.2013091111.lzo File does not exist. Holder DFSClient_-2082829022 d 阅读全文
posted @ 2013-09-12 17:53 王晓伟 阅读(10151) 评论(0) 推荐(0) 编辑
摘要: 生产环境中,经常会有多个项目使用zookeeper,例如多个hbase集群。每个项目搭建一套独立的zookeeper,无论从机器成本,还是运维成本,都是一笔额外的开销。然而多项目,多集群共用zookeeper又涉及一个权限隔离的问题。zookeeper本身提供了ACL机制,表示为scheme:id:permissions,第一个字段表示采用哪一种机制,第二个id表示用户,permissions表示相关权限(如只读,读写,管理等)。zookeeper提供了如下几种机制(scheme):world: 它下面只有一个id, 叫anyone, world:anyone代表任何人,zookeepe... 阅读全文
posted @ 2013-09-11 18:30 王晓伟 阅读(10043) 评论(0) 推荐(1) 编辑
摘要: 经常会有一些Hadoop监控的需求,例如datanode节点掉线,Tasktracker blacklist的数量,以及Namenode,Jobtracker的内存GC信息等。之前采用Hadoop API获取这类信息插入Mysql,再用php脚本做逻辑判断并发送报警。这种做法代价比较高,需要在每个集群部署一个java用以收集信息。后来发现hadoop提供了一个JMX的json数据接口,可以比较方便的得到这些信息。只需在页面上便可访问到,例如namenode只需要将http://namenode:50070/dfshealth.jsp换成http://namenode:50070/jmx即... 阅读全文
posted @ 2013-09-11 17:38 王晓伟 阅读(3547) 评论(0) 推荐(0) 编辑