HBase在Ubuntu中的配置指南(以伪分布式模式为例)
HBase是构建于Hadoop之上的分布式NoSQL数据库,支持实时读写大规模数据。以下是在Ubuntu系统中配置HBase(伪分布式模式)的详细步骤,涵盖环境准备、安装、配置及验证。
一、前置准备
-
系统要求
- Ubuntu 20.04/22.04 LTS(64位);
- Java 8(HBase 2.x兼容的最低版本,推荐OpenJDK);
- Hadoop 3.3.5+(伪分布式模式需Hadoop支持,用于HDFS存储);
- SSH(用于本地免密登录,简化操作)。
-
安装基础依赖
sudo apt update sudo apt install -y openjdk-8-jdk hadoop openssh-server- 验证Java安装:
java -version(需显示Java 1.8.x); - 验证Hadoop安装:
hadoop version(需显示Hadoop版本信息)。
- 验证Java安装:
二、下载并安装HBase
- 下载HBase
从Apache官网下载稳定版本(如2.5.4),使用wget命令:wget https://archive.apache.org/dist/hbase/2.5.4/hbase-2.5.4-bin.tar.gz - 解压并移动到目标目录
tar -xzvf hbase-2.5.4-bin.tar.gz sudo mv hbase-2.5.4 /usr/local/hbase - 配置环境变量
编辑~/.bashrc文件,添加HBase路径:验证安装:echo 'export HBASE_HOME=/usr/local/hbase' >> ~/.bashrc echo 'export PATH=$PATH:$HBASE_HOME/bin' >> ~/.bashrc source ~/.bashrc # 使配置生效hbase version(需显示HBase版本信息)。
三、配置HBase文件
HBase的核心配置文件位于$HBASE_HOME/conf目录下,需修改以下两个文件:
1. 配置hbase-env.sh(环境变量)
编辑hbase-env.sh,设置Java路径和ZooKeeper管理:
export JAVA_HOME=/usr/lib/jvm/java-8-openjdk-amd64 # Java安装路径
export HBASE_MANAGES_ZK=true # 让HBase自带ZooKeeper(伪分布式模式推荐)
export HBASE_DISABLE_HADOOP_CLASSPATH_LOOKUP=true # 避免Hadoop依赖冲突
2. 配置hbase-site.xml(核心配置)
编辑hbase-site.xml,添加以下属性:
<configuration>
<property>
<name>hbase.rootdirname>
<value>file:///usr/local/hbase/hbase-tmpvalue>
property>
<property>
<name>hbase.cluster.distributedname>
<value>truevalue>
property>
<property>
<name>hbase.zookeeper.property.dataDirname>
<value>/usr/local/hbase/zookeepervalue>
property>
<property>
<name>hbase.disable.hadoop.classpath.lookupname>
<value>truevalue>
property>
configuration>
注意:
hbase.rootdir需指向本地目录(伪分布式模式),若为完全分布式模式则需改为HDFS路径(如hdfs://localhost:9000/hbase)。
四、启动HBase
-
启动HBase服务
在$HBASE_HOME/bin目录下执行:cd /usr/local/hbase/bin ./start-hbase.sh启动后,通过
jps命令查看进程,应看到HMaster(主节点)和HRegionServer(Region服务器)进程。 -
验证HBase状态
启动HBase Shell:hbase shell输入
status命令,若显示“1 active master, 1 servers”则表示启动成功。
五、基本操作测试
-
创建表
在HBase Shell中执行:create 'test_table', 'cf' # 创建名为test_table的表,包含列族cf -
插入数据
put 'test_table', 'row1', 'cf:col1', 'value1' # 向row1行、cf列族的col1列插入值value1 -
查询数据
get 'test_table', 'row1' # 获取row1行的所有数据 scan 'test_table' # 扫描表中所有数据 -
退出Shell
exit -
停止HBase
./stop-hbase.sh
六、常见问题解决
- 启动错误:
java.net.BindException: Port already in use
检查端口是否被占用(如9000、16010),使用netstat -tulnp | grep查看占用进程,杀掉冲突进程或修改HBase配置中的端口。 - HMaster无法启动
检查hbase-site.xml中的hbase.rootdir路径是否存在,或是否有写入权限(chmod -R 755 /usr/local/hbase)。 - ZooKeeper启动失败
确保hbase-env.sh中HBASE_MANAGES_ZK=true,并检查hbase.zookeeper.property.dataDir目录是否存在。
通过以上步骤,即可在Ubuntu系统中完成HBase的配置与基本使用。伪分布式模式适用于学习和测试场景,若需大规模部署,可扩展至完全分布式模式(需多台服务器)。
以上就是关于“HBase在Ubuntu中如何配置”的相关介绍,筋斗云是国内较早的云主机应用的服务商,拥有10余年行业经验,提供丰富的云服务器、租用服务器等相关产品服务。云服务器资源弹性伸缩,主机vCPU、内存性能强悍、超高I/O速度、故障秒级恢复;电子化备案,提交快速,专业团队7×24小时服务支持!
简单好用、高性价比云服务器租用链接:https://www.jindouyun.cn/product/cvm