确定需测试的HBase版本组合(如HBase 2.4.11与Hadoop 3.3.6、HBase 3.0.0与Hadoop 3.3.6)、依赖组件版本(Hadoop、ZooKeeper、JDK)及测试场景(如数据读写、集群故障转移、性能基准)。参考HBase官方文档的版本兼容性矩阵(如HBase 2.x需搭配Hadoop 2.7+或3.x,JDK 1.8+),避免不兼容的组合。
yum update -y)。rpm -ivh jdk-8uXXX-linux-x64.rpm,配置JAVA_HOME环境变量);HADOOP_HOME及core-site.xml、hdfs-site.xml);zoo.cfg)。hbase-2.4.11-bin.tar.gz),解压至指定目录(如/opt/hbase-2.4.11)。hbase-site.xml、hbase-env.sh至新版本配置目录;hbase-site.xml中的关键参数:hbase.rootdir(指向HDFS路径,如hdfs://namenode:8020/hbase)、hbase.zookeeper.quorum(ZooKeeper集群地址,如node1,node2,node3)、hbase.cluster.distributed(设为true,启用分布式模式);hbase-env.sh中设置JAVA_HOME和HBASE_CLASSPATH(包含Hadoop、ZooKeeper的lib目录)。scp -r /opt/hbase-2.4.11 node2:/opt/)。start-hbase.sh,启动HMaster和RegionServer;通过jps命令检查进程是否运行(HMaster、HRegionServer)。http://<hmaster_host>:16010),确认集群状态(如“Cluster up”)、RegionServer数量、表信息等。list查看表、create创建表、put插入数据、get查询数据),验证数据读写功能是否正常。NoSuchMethodError、ClassNotFoundException等异常)。hbase hbck命令检查Region分配一致性(无“Region not deployed”错误);对比HDFS中的数据文件与HBase元数据,确保数据完整性。kill -9 <pid>),观察集群是否自动进行故障转移(如新HMaster选举、Region重新分配),验证业务是否中断。workloada:50%读、50%写),执行压测(./bin/ycsb run hbase20 -cp /etc/hbase/conf/ -P workloads/workloada -p columnfamily=cf -p recordcount=10000000 -p operationcount=10000000 -threads 10 -s),记录吞吐量(OPS)、延迟(ms)等指标,评估版本性能是否符合预期。/opt/hbase-2.4.11/logs/hbase-*-master-*.log、ZooKeeper日志:/opt/zookeeper/logs/zookeeper.log)。stop-hbase.sh),删除数据目录(rm -rf /opt/hbase-2.4.11/data)和日志文件,恢复初始状态。