wiki:update2012

Version 6 (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安全机制

 Secure Hadoop安装

hbase 主要使用Kerberos机制,具体可以参考  http://hbase.apache.org/book/security.html