你好,游客 登录 注册 搜索
背景:
阅读新闻

Hadoop运维经验杂谈

[日期:2016-04-13] 来源:OpenSkill  作者: [字体: ]

Hadoop

系统架构:

Cloudera和它的产品们

Apache Hadoop与CDH版本关系

CDH为什么更好?

  • 安装升级更简单:

yum ,tar, rpm, cloudera manager 四种安装方法 

  • 更快获取新功能和修正新bug
  • 年度release,季度update
  • Yum安装自动匹配合适的生态系统版本
  • 自动目录配置(logs,conf),以及hdfs和mapred用户创建
  • 详细的文档

CDH3u3重大改善

CDH3u4重大改善

Cloudera Manager

Cloudera Training

  • 关于Training

分为Administrator和Development两门课程

  • 关于认证考试
  • 关于证书

运维事故

1、伤不起的内存

现象1

系统上线第二天,Jobtracker不工作,web页面打不开

原因

一次提交Job数量太多,导致Jobtracker 内存溢出

解决

调大JT内存;限制Running Job数量

现象2

NN内存溢出,重启后发现50030页面显示fsimage损坏,调查发现SNN fsimage同样损坏了

原因

小文件太多导致NN/SNN内存溢出,导致fsimage文件损坏,但是重启后的NN可以正常服务。

原因

Cloudera google group去救,获得后门脚本

2、低效的MapReduce Job

现象

MapReduce Job执行时间过长

原因

MR中用到了Spring,小文件导致Map方法效率低下,GZ文件读写效率低

解决

MR去Spring化;开启JVM重用;使用LZO作为输入和map输出结果;加大reduce并行copy线程数

压缩与MapReduce性能

  • 前提:大量小文件
  • 输入147GB,文件数45047,平均3MB
  • CPU 8 core;32GB内存;7200转磁盘;28台Slave机器

3、OMG,整个集群完蛋了

现象

早上来发现所有DataNode都dead了,重启后10分钟,DN陆续又都dead了;调查发现节点有8%左右丢包率

原因

交换机模块故障;DN不能Hold住大量小文件

解决

升级3u2到3u4;设置DN内存到2GB

遇到无法跨越的问题解决办法

  • 加入Hadoop官方Mail List
  • 加入Cloudera Google Group

监控与高级

  • 监控:ganglia
  • 设备告警、服务告警:nagios
  • 业务告警:自己实现

Nagios告警:

业务监控:

 

 





收藏 推荐 打印 | 录入:elainebo | 阅读:
本文评论   查看全部评论 (0)
表情: 表情 姓名: 字数
点评:
       
评论声明
  • 尊重网上道德,遵守中华人民共和国的各项有关法律法规
  • 承担一切因您的行为而直接或间接导致的民事或刑事法律责任
  • 本站管理人员有权保留或删除其管辖留言中的任意内容
  • 本站有权在网站内转载或引用您的评论
  • 参与本评论即表明您已经阅读并接受上述条款