HBase版本升级在Ubuntu上的操作步骤
/var/lib/hbase目录下的数据)和配置文件(hbase-site.xml、hbase-env.sh、regionservers等),防止升级过程中数据丢失或配置错误导致无法恢复。cd /usr/local/hbase # 进入HBase安装目录
./bin/stop-hbase.sh # 停止HBase集群
同时,确保Hadoop集群(若依赖)也已停止。若之前通过手动安装方式部署了旧版本HBase,建议先卸载以避免版本冲突:
sudo rm -rf /usr/local/hbase # 删除HBase安装目录
sudo rm -rf /var/lib/hbase # 删除HBase数据目录
sudo rm -rf /etc/hbase # 删除HBase配置目录(若有)
sudo rm -rf ~/.hbase # 删除用户级HBase配置
/etc/profile文件,删除HBASE_HOME和PATH中与HBase相关的行,然后执行source /etc/profile使变更生效。hbase-x.x.x-bin.tar.gz),使用wget下载到Ubuntu服务器:wget https://archive.apache.org/dist/hbase/2.4.18/hbase-2.4.18-bin.tar.gz
/usr/local目录:sudo tar -zxvf hbase-2.4.18-bin.tar.gz -C /usr/local/
hbase:sudo mv /usr/local/hbase-2.4.18 /usr/local/hbase
/etc/profile文件,添加HBase环境变量:sudo vim /etc/profile
在文件末尾添加以下内容(根据实际安装路径和Java版本调整):export HBASE_HOME=/usr/local/hbase
export PATH=$PATH:$HBASE_HOME/bin
export JAVA_HOME=/usr/lib/jvm/java-11-openjdk-amd64 # 根据实际Java安装路径修改
保存后执行source /etc/profile使环境变量生效。hbase-env.sh/usr/local/hbase/conf/hbase-env.sh文件,确保以下配置正确(取消注释并修改):export JAVA_HOME=/usr/lib/jvm/java-11-openjdk-amd64 # 指向Java安装目录
export HBASE_MANAGES_ZK=false # 若使用独立ZooKeeper集群,设置为false
hbase-site.xml/usr/local/hbase/conf/hbase-site.xml文件,更新核心配置(根据实际集群信息调整):<configuration>
<property>
<name>hbase.rootdir</name>
<value>hdfs://master:9000/hbase</value> <!-- HDFS地址,需与Hadoop配置一致 -->
</property>
<property>
<name>hbase.cluster.distributed</name>
<value>true</value> <!-- 分布式模式 -->
</property>
<property>
<name>hbase.zookeeper.quorum</name>
<value>master,slave1</value> <!-- ZooKeeper集群地址 -->
</property>
</configuration>
hbase-site.xml、hbase-env.sh等配置文件复制到所有Slave节点的/usr/local/hbase/conf/目录:scp /usr/local/hbase/conf/hbase-site.xml hadoop@slave1:/usr/local/hbase/conf/
scp /usr/local/hbase/conf/hbase-env.sh hadoop@slave1:/usr/local/hbase/conf/
regionservers文件/usr/local/hbase/conf/regionservers文件,添加所有RegionServer节点的主机名(如slave1、slave2),并将该文件复制到所有Slave节点的相同目录。cd /usr/local/hadoop # 进入Hadoop安装目录
./sbin/start-dfs.sh # 启动HDFS
./sbin/start-yarn.sh # 启动YARN(可选)
cd /usr/local/hbase
./bin/start-hbase.sh
jps命令,检查是否出现HMaster进程;在Slave节点上执行jps,检查是否出现HRegionServer进程:jps # Master节点应显示HMaster,Slave节点应显示HRegionServer
./bin/hbase shell
hbase> list # 列出所有表(若为空则正常)
hbase> create 'test', 'cf' # 创建测试表
hbase> exit # 退出Shell
hbck工具检查HBase数据一致性,修复可能存在的问题:./bin/hbase hbck # 检查数据一致性
./bin/hbase hbck -fixAssignments # 修复Region分配问题(若有)
/usr/local/hbase/logs/目录下的hbase-*-master-*.log、hbase-*-regionserver-*.log),及时发现并解决启动或运行中的问题。