安装配置过程可以参考:http://hi.baidu.com/zhangxinandala/item/db5d8adc22bab0d5241f4017
下面记录一下安装过程中遇到的问题:
1. collector的默认端口是8080 ,但是这个会被别的占用,所以换成了9090(在启动日志里看到了jetty不知道是不是和这个有关,还是我系统里别的程序占用了)
2. 一个问题就是chukwa0.4里支持的是hadoop 0.20.0 需要把chukwa/hadoopjars里的jar包换掉
3. 最后一个问题就是启动start-data-process.sh的时候,会执行:
PostProcessManager wakes up every few minutes and aggregates, orders and de-dups record files.
from: postProcess/demuxOutputDir_*/[clusterName]/[dataType]/[dataType]_[yyyyMMdd]_[HH].R.evt
to: repos/[clusterName]/[dataType]/[yyyyMMdd]/[HH]/[mm]/[dataType]_[yyyyMMdd]_[HH]_[N].[N].evt
这里有一个问题就是,PostProcessorManager会调用MoveToRepository里的方法去移动文件,这里有两行:
static final String HadoopLogDir = "_logs";
static final String hadoopTempDir = "_tmp";
可能在hadoop 0.20.0中mapreduce的输出结果里是_tmp,但后面的版本输出是_SUCCESS,所以这里就有问题了,这个文件不能被过滤掉所以会报异常,需要把这里改成:
static final String HadoopLogDir = "_logs";
static final String hadoopTempDir = "_SUCCESS";
最后把整个org打成jar包,最后这里打包时候要用jdk1.6,不然会产生 java.lang.UnsupportedClassVersionError
最后终于可以了,生成了目录如下:
HourlyChukwaRecordRolling和DailyChukwaRecordRolling得以进行