Hbase2.4.12集群安装

本文详细指导了如何在已安装的Hadoop 3.3.3集群上部署HBase 2.4.12,包括下载、环境配置、参数设置、主机配置复制和启动验证。重点介绍了配置HBase环境变量、ZooKeeper和HDFS路径,以及解决hbaseshell问题的过程。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

前置条件:已安装hadoop集群并且正常启动.
主hadoop0,从hadoop1,从hadoop2
(已安装hadoop3.3.3集群)
hadoop集群安装参考:https://blog.youkuaiyun.com/qq_44734154/article/details/125157180

一、下载上传解压

下载:https://hbase.apache.org/downloads.html
上传安装包:hbase-2.4.12-bin.tar.gz 到hadoop0主机的/usr/local/hbase目录下
解压:tar -zxvf hbase-2.4.12-bin.tar.gz

二、配置环境变量

# hadoop0,hadoop1,hadoop2都配置
vim /etc/profile
# 添加以下内容
export HBASE_HOME=/usr/local/hbase/hbase-2.4.12
export PATH=$HBASE_HOME/bin:$PATH
# 使配置立即生效
source /etc/profile

三、配置主机hadoop0的Hbase参数

# 修改hbase-env.sh,添加JAVA_HOME,开启zk配置
vim /usr/local/hbase/hbase-2.4.12/conf/hbase-env.sh
# 添加以下内容(jdk目录根据自己填)
export JAVA_HOME=/usr/java/jdk1.8.0_221-amd64
export HBASE_MANAGES_ZK=true
# 修改hbase-site.xml
vim /usr/local/hbase/hbase-2.4.12/conf/hbase-site.xml
# 在configuration标签中增加以下内容
  <property>
    <name>hbase.rootdir</name>
    <value>hdfs://hadoop0:9000/hbase</value>
  </property>
  <property>
    <name>hbase.cluster.distributed</name>
    <value>true</value>
  </property>
  <property>
    <name>hbase.zookeeper.quorum</name>
    <value>hadoop1,hadoop0,hadoop2</value>
  </property>
  <property>
    <name>hbase.zookeeper.property.dataDir</name>
    <value>/usr/local/hbase/hbase-2.4.12/zookeeper</value>
  </property>
  <property>
    <name>hbase.master.info.port</name>
    <value>16010</value>
  </property>
  <!--hbase shell 无法使用(org.apache.hadoop.hbase.ipc.ServerNotRunningYetException: Server is not running yet
),解决 concurrent.DefaultPromise: An exception was thrown by org.apache.hadoop.hbase.io.asyncfs.FanOutOneBlockAsyncDFSOutputHelper$4.operationComplete()-->
  <property>
    <name>hbase.wal.provider</name>
    <value>filesystem</value>
  </property>
# 修改regionservers 
vim /usr/local/hbase/hbase-2.4.12/conf/regionservers 
# 删除原有的localhost,添加以下内容
hadoop0
hadoop1
hadoop2

四、复制配置到从节点

# 在hadoop0上执行
scp -r /usr/local/hbase/hbase-2.4.12 hadoop1://usr/local/hbase/
scp -r /usr/local/hbase/hbase-2.4.12 hadoop2://usr/local/hbase/

五、启动验证

  1. 在hadoop0上面启动hbase
start-hbase.sh

在这里插入图片描述

  1. 查看启动结果
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述

  2. 在hadoop0上启动hbase shell,没有报错就成功了

habse shell

在这里插入图片描述

  1. 查看hdfs下是否有hbase目录
hadoop fs -ls /

在这里插入图片描述

  1. 访问Hbase的web页面,查看Hbase运行状态
http://192.168.147.155:16010
或
http://hadoop0:16010(本地配置域名映射)

在这里插入图片描述
在这里插入图片描述

在这里插入图片描述

<think>好的,用户问的是在Windows上使用HDFS启动HBase。首先,我得确认HBaseHadoop的依赖关系。HBase确实需要HDFS作为底层存储,所以用户需要先安装和配置Hadoop。不过Windows环境下可能会有一些兼容性问题,比如Hadoop主要是为Linux设计的,虽然可以通过一些工具在Windows上运行。 接下来,我应该考虑用户可能的步骤。首先需要安装Java,因为HadoopHBase都是基于Java的。然后安装Hadoop,可能建议使用Apache的官方版本,但Windows上可能需要额外的配置,比如winutils或者Cygwin。不过现在可能更推荐使用WSL(Windows Subsystem for Linux),这样用户可以在Linux环境中运行,避免很多兼容性问题。但用户可能不想用WSL,所以需要提供原生Windows的解决方案。 然后,安装HBase,修改配置文件,比如hbase-site.xml,指向HDFS的地址,并设置ZooKeeper的数据目录到HDFS。需要确保HDFS先启动,然后启动HBase。但这里可能会有问题,比如HadoopHBase的版本兼容性,用户需要确认两者的版本是否匹配,否则容易出错。 另外,权限问题在Windows上可能更复杂,HadoopHBase可能需要读写权限,用户可能需要调整文件系统的权限或者配置Hadoop以使用不需要严格权限检查的模式,比如在hdfs-site.xml中设置dfs.permissions.enabled为false。 测试步骤方面,用户需要先验证HDFS是否正常运行,使用hdfs dfs -ls /,然后启动HBase Shell,执行status命令查看是否正常。如果遇到错误,可能需要检查日志文件,比如HMaster和RegionServer的日志,看看是否有连接HDFS失败的问题,比如端口不正确或者权限问题。 可能用户会遇到的问题包括:Hadoop没有正确配置导致HBase无法访问HDFS,版本不兼容,环境变量未正确设置,或者Windows特有的路径问题(比如反斜杠和正斜杠的区别)。此外,防火墙设置也可能阻止HDFS或HBase的通信,需要确保相关端口开放。 总结来说,步骤大致是:安装Java,安装并配置Hadoop安装并配置HBase指向HDFS,启动HDFS,启动HBase。同时,强调版本兼容性和权限配置的重要性,以及建议使用WSL简化流程。需要提醒用户处理可能遇到的常见错误,如连接超时或权限拒绝,并提供解决方法,比如检查配置文件和日志。</think>在Windows系统上通过HDFS启动HBase需要完成以下步骤: --- ### 一、前置条件 1. **安装Java** - 必须安装JDK 8或更高版本 - 配置环境变量:`JAVA_HOME`指向JDK安装路径 2. **Hadoop环境** - 需要先部署Hadoop集群(HDFS) - 推荐使用Apache Hadoop 3.x版本(与HBase兼容性更好) --- ### 二、HBase安装与配置 1. **下载HBase** - 从[官网](https://hbase.apache.org/)下载与Hadoop版本兼容的HBase二进制包 2. **配置环境变量** ```bash # 设置HBASE_HOME set HBASE_HOME=D:\hbase-2.4.12 # 添加HBase的bin目录到PATH set PATH=%PATH%;%HBASE_HOME%\bin ``` 3. **修改`hbase-site.xml`** ```xml <configuration> <property> <name>hbase.rootdir</name> <value>hdfs://localhost:9000/hbase</value> <!-- 指向HDFS地址 --> </property> <property> <name>hbase.cluster.distributed</name> <value>true</value> <!-- 启用分布式模式 --> </property> <property> <name>hbase.zookeeper.property.dataDir</name> <value>/hbase/zookeeper</value> <!-- ZooKeeper数据目录 --> </property> </configuration> ``` 4. **配置`hbase-env.cmd`** ```cmd set JAVA_HOME=C:\Program Files\Java\jdk1.8.0_301 set HBASE_MANAGES_ZK=true <!-- 使用内置ZooKeeper --> ``` --- ### 三、启动流程 1. **启动HDFS** ```cmd # 先启动Hadoop HDFS cd %HADOOP_HOME%\sbin start-dfs.cmd ``` 2. **验证HDFS状态** ```cmd hdfs dfs -ls / ``` 3. **启动HBase** ```cmd # 进入HBase安装目录 cd %HBASE_HOME%\bin start-hbase.cmd ``` --- ### 四、验证服务 1. **检查进程** - 通过`jps`命令查看是否包含以下进程: ``` NameNode DataNode HMaster HRegionServer ``` 2. **访问HBase Shell** ```cmd hbase shell > status # 查看集群状态 > create 'test', 'cf' # 测试表创建 ``` --- ### 五、常见问题解决 1. **端口冲突** - 确保HDFS的`9000`端口和HBase的`16000`端口未被占用 2. **权限问题** - 在`hdfs-site.xml`中添加以下配置: ```xml <property> <name>dfs.permissions.enabled</name> <value>false</value> <!-- 关闭HDFS权限检查 --> </property> ``` 3. **Windows路径问题** - 所有配置文件路径使用Linux格式(如`/hbase/zookeeper`) --- ### 六、建议方案 如果遇到兼容性问题,可考虑以下替代方案: 1. 使用Windows Subsystem for Linux (WSL)运行HBase 2. 通过Docker部署HBase容器 通过上述步骤,您可以在Windows环境下实现基于HDFS的HBase集群启动。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值