设为首页 收藏本站
查看: 1182|回复: 0

[经验分享] hadoop集群里数据收集工具Chukwa的安装详细步骤

[复制链接]

尚未签到

发表于 2018-10-31 09:20:42 | 显示全部楼层 |阅读模式
  1.JDK的版本1.6或者更高版本
  2.hadoop的版本Hadoop0.20.205.1及以上版本
  3.HBase0.90.4版本以支持HICC
  安装步骤如下:
  1.下载chukwa
  http://labs.renren.com/apache-mirror/incubator/chukwa/chukwa-0.5.0/上下载如下的两个文件:
  chukwa-incubating-0.5.0.tar.gz
  chukwa-incubating-src-0.5.0.tar.gz
  将如上的两个gz文件进行解压缩
  2.安装chukwa
  将chukwa-incubating-src-0.5.0下的conf目录和script目录拷贝到chukwa-incubating-0.5.0目录下,并将chukwa-incubating-0.5.0重命名为chukwa
  3.添加CHUKWA_HOME
  vi /etc/profile
  export CHUKWA_HOME=/home/zhangxin/chukwaexport CHUKWA_CONF_DIR=$CHUKWA_HOME/conf
  4.配置chukwa
  修改etc/chukwa/chukwa-env.sh文件中的JAVA_HOME属性,使其指向正确的java安装目录
  export JAVA_HOME=/home/zhangxin/jdk1.6
  修改etc/chukwa/chukwa-env.sh中的CHUKWA_LOG_DIR and CHUKWA_PID_DIR两个属性,这两个属性分别用于定义存放Chukwa的日志文件和pid文件的目录,默认的属性值如下:
  # The directory where pid files are stored. CHUKWA_HOME/var/run by default.
  export CHUKWA_PID_DIR=/tmp/chukwa/pidDir
  # The location of chukwa logs, defaults to CHUKWA_HOME/logs
  export CHUKWA_LOG_DIR=/tmp/chukwa/log
  注意的是 CHUKWA_PID_DIR目录不能被多个Chukwa实例来共享,而且它应该保存在本地磁盘中。
  5.Agent信息配置
  修改$CHUKWA_HOME/etc/chukwa/collectors,该文件保存了用于运行Chukwa collectors的主机列表。Agent从这些主机列表中随机的选择一个,然后将收集到的信息发送给它。文件的内容格式如下:
  http://:/
  http://:/
  http://:/
  默认文件的内容只有localhost
  编辑CHUKWA_HOME/etc/chukwa/initial_adaptors 配置文件,该文件保存了Chukwa默认的Adapter的类型,文件的内容如下:
  addsigar.SystemMetrics SystemMetrics 60 0
  addSocketAdaptor HadoopMetrics 9095 0
  addSocketAdaptor Hadoop 9096 0
  addSocketAdaptor ChukwaMetrics 9097 0
  addSocketAdaptor JobSummary 9098 0
  修改$CHUKWA_HOME/etc/chukwa/chukwa-agent-conf.xml
  此配置文件中的内容默认都可以不需要修改就行,但是有一个属性很重要,它定义了Agent所在的集群的名称:
  
  chukwaAgent.tags
  cluster="demo"
  The cluster's name for this agent
  
  启动Agent
  使用bin/chukwaagent启动,但是这里会出现两个问题:首先我如果直接进入到bin目录下,然后运行./chukwaagent命令,此时会出现路径错误的异常;另外一个问题就是,当我不是以root的身份登录linux系统时,直接运行上面的命令会出现如下的异常情况:
  java.io.FileNotFoundException: /agent.log (Permission denied)
  atjava.io.FileOutputStream.openAppend(Native Method)
  atjava.io.FileOutputStream.(FileOutputStream.java:192)
  atjava.io.FileOutputStream.(FileOutputStream.java:116)
  atorg.apache.log4j.FileAppender.setFile(FileAppender.java:294)
  该异常表明当前的用户没有权限来打开agent.log文件,所以应该以如下的命令来运 行:
  sudo bin/chukwaagent
  或
  sudo bin/start-agents.sh来使用SSH登录到 etc/chukwa/agents文件中列出的所有的agent所在的主机来启动Agent后台进程。
  为了检查Agent是否成功,运行telnet localhost 9093命令,然后再运行list看能否可以在命令行看到一些提示信息。
  6.修改被Chukwa监控的hadoop集群的配置信息:
  将CHUKWA_HOME/etc/chukwa/hadoop-log4j.properties下的文件复制到hadoop的conf目录下,并重命名为log4j.properties
  将$CHUKWA_HOME/etc/chukwa/hadoop-metrics2.properties复制到hadoop的conf目录下,并保持原文件的名称
  $CHUKWA_HOME/share/chukwa/chukwa-0.5.0-client.jar复制到hadoop的lib目录下面
  将$CHUKWA_HOME/share/chukwa/lib/json-simple-1.1.jar复制到hadoop的lib目录下面
  将$CHUKWA_HOME/share/chukwa/lib/chukwa-0.5.0.jar复制到hadoop的lib目录下面
  如果上面的jar包没在$CHUKWA_HOME/share/chukwa/lib目录下,那么需要到最先下载的chukwa-incubating-src-0.5.0.tar.gz文件夹下找到相应的jar包。
  7.启用HBase
  在HBase中创建相应的表
  hbase shell < etc/chukwa/hbase.schema
  8.配置Collector信息:
  编辑$CHUKWA_HOME/etc/chukwa/chukwa-env.sh
  修改HADOOP_CONF_DIRand HBASE_CONF_DIR属性信息,这两个信息都是提前在/etc/profile中定义好的。
  编辑$CHUKWA_HOME/etc/chukwa/chukwa-collector-conf.xml,我们直到Collector可以将收集到的信息保存在HBase中和HDFS中,所以相应的配置信息也会有两个,如下:
  使用HBase作为存储介质:
  
  chukwaCollector.writerClassorg.apache.hadoop.chukwa.datacollection.writer.PipelineS tageWriter
  
  
  chukwaCollector.pipelineorg.apache.hadoop.chukwa.datacollection.writer.hbase.HBaseWriter
  
  使用HDFS做为存储介质
  启动Collector:
  bin/chukwa collector或者bin/start-collectors.sh
  通过http://collectorhost:collectorport/chukwa?ping=true来查看,collector是否启动正常。
  9.可选的ETL过程:
bin/chukwa archivesudo bin/chukwa demux  10.启动集群的AggregationScript(PIG脚本),所以PIG需要提前配置好。
  在etc/profile中定义好pig的classpath
  exportPIG_CLASSPATH=$HADOOP_CONF_DIR:$HBASE_CONF_DIR
  创建如下的jar包
jar cf $CHUKWA_HOME/hbase-env.jar $HBASE_CONF_DIR  启动如下的pig脚本:
  pig -D pig.additional.jars=${HBASE_HOME}/hbase-0.90.4.jar:${HBASE_HOME}/lib/zookeeper-3.3.2.jar:${PIG_PATH}/pig.jar:${CHUKWA_HOME}/hbase-env.jar ${CHUKWA_HOME}/script/pig/ClusterSummary.pig
  为了保证上面的脚本能够正常运行,一定要将hbase相应的jar包和zookeeper相应的jar包(在hbase的lib下)以及pig相应的jar包添加到classpath中。
  11.启动HICC
bin/chukwa hicc  使用http://:4080/hicc进行验证,默认的用户名和密码都是admin
  注意:
  通过上面配置之后,重启hadoop:
  start-all.sh出现如下的异常log4j:ERRORCould not connect to remote log4j server at [localhost]. We will tryagain later.
  这是因为,需要将hadoop的日志通过socket发送给相应的Agent,所以我们首先需要启动Agent。


运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-628772-1-1.html 上篇帖子: eclipse插件的编译——Hadoop0.2.02版 下篇帖子: Hadoop学习笔记--1
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表