下面给你一个**在 CentOS 上部署 HBase 集群(伪分布式/完全分布式)**的标准流程,适合生产或学习使用。以 CentOS 7/8 + HBase 2.x 为例。
| 角色 | 主机名 | IP |
|---|---|---|
| Master | hbase-master | 192.168.1.10 |
| RegionServer | hbase-rs1 | 192.168.1.11 |
| RegionServer | hbase-rs2 | 192.168.1.12 |
单台机器也可做伪分布式
# 关闭防火墙
systemctl stop firewalld
systemctl disable firewalld
# 关闭 SELinux
setenforce 0
sed -i 's/SELINUX=enforcing/SELINUX=disabled/' /etc/selinux/config
# 主机名解析
cat >> /etc/hosts <<EOF
192.168.1.10 hbase-master
192.168.1.11 hbase-rs1
192.168.1.12 hbase-rs2
EOF
# 时间同步
yum install -y ntp
systemctl enable ntpd
systemctl start ntpd
yum install -y java-1.8.0-openjdk-devel
java -version
ssh-keygen -t rsa
ssh-copy-id hbase-master
ssh-copy-id hbase-rs1
ssh-copy-id hbase-rs2
HBase 推荐运行在 HDFS 上
wget https://archive.apache.org/dist/hadoop/common/hadoop-3.3.6/hadoop-3.3.6.tar.gz
tar -zxvf hadoop-3.3.6.tar.gz -C /opt
ln -s /opt/hadoop-3.3.6 /opt/hadoop
cat >> /etc/profile <<EOF
export HADOOP_HOME=/opt/hadoop
export PATH=$PATH:$HADOOP_HOME/bin:$HADOOP_HOME/sbin
EOF
source /etc/profile
(略,确保 HDFS 可正常启动)
start-dfs.sh
hdfs dfs -mkdir /hbase
hdfs dfs -chmod 777 /hbase
wget https://archive.apache.org/dist/hbase/2.5.5/hbase-2.5.5-bin.tar.gz
tar -zxvf hbase-2.5.5-bin.tar.gz -C /opt
ln -s /opt/hbase-2.5.5 /opt/hbase
cat >> /etc/profile <<EOF
export HBASE_HOME=/opt/hbase
export PATH=$PATH:$HBASE_HOME/bin
EOF
source /etc/profile
vi $HBASE_HOME/conf/hbase-env.sh
export JAVA_HOME=/usr/lib/jvm/java-1.8.0
export HBASE_MANAGES_ZK=false # 使用独立 ZooKeeper
<configuration>
<property>
<name>hbase.rootdir</name>
<value>hdfs://hbase-master:9000/hbase</value>
</property>
<property>
<name>hbase.cluster.distributed</name>
<value>true</value>
</property>
<property>
<name>hbase.zookeeper.quorum</name>
<value>hbase-master,hbase-rs1,hbase-rs2</value>
</property>
<property>
<name>hbase.zookeeper.property.dataDir</name>
<value>/data/zookeeper</value>
</property>
</configuration>
vi $HBASE_HOME/conf/regionservers
hbase-rs1
hbase-rs2
yum install -y zookeeper
systemctl enable zookeeper
systemctl start zookeeper
start-hbase.sh
jps
# HMaster
# HRegionServer
Web UI:
http://hbase-master:16010
hbase shell
create 'test', 'cf'
put 'test', 'row1', 'cf:a', 'value1'
scan 'test'
如果你需要:
可以直接告诉我你的使用场景。