| Version 5 (modified by liaojiaohe, 14 years ago) (diff) |
|---|
由于公司里面的Hadoop和Hbase版本比较旧,有很多新功能和性能上的改善都不能在上面实现
近期决定先升级Hadoop和HBase系统 Hadoop 由0.20.2升级为1.0.3 HBase 由0.90.5升级为0.94.1
升级过程要解决西面问题:数据兼容性,程序兼容,安全方式选择
数据兼容性:
在测试环境测试过经过下面步骤升级后,数据不会丢失,在正式环境升级过程中会备份重要的数据,确保出现损坏的时候可以进行出重建
升级步骤:(省略1万字)
程序兼容性测试:
定向广告重新编译后主干运行没有问题
广告分析系统:
程序要修改HFileOutputFormat.java文件
在HBase bulk load入库测试的时候遇到一个bug,现在文件不断复制到hbase的目录(正常同一个HDFS系统只是移动文件)
直到RPC request的数量被占满(缺省是10个),实际会复制了10份,而且应为现在storfile的大少缺省是10G,入库的功能很缓慢,并占用大量空间。
HBASE-6529
这个bug 应该在0.94.2版本修正
经过测试后,hadoop版本和hbase的版本与旧版兼容性比较好,如果里面有引用hbase和zookeeper的jar,要升级一下,增加protobuf-java的jar
安全方式的选择:
安全问题是这次升级的一个主要因素,要做到最低要求,各项目之间的数据安全,HBASE上的表和DFS上的数据不应该被其他项目破坏
被自己删除可以采取另外一种方式,比如删除数据后一天才真正删除来处理
hadoop 在安全方面缺省使用JAAS方式,也可以使用Kerberos安全机制
hbase 主要使用Kerberos机制,具体可以参考 http://hbase.apache.org/book/security.html
![(please configure the [header_logo] section in trac.ini)](http://www1.pconline.com.cn/hr/2009/global/images/logo.gif)