在 CentOS 上搭建 HBase 集群
一 环境规划与准备
java -versionping node02、ping node03timedatectl status、sudo ntpdate -s time.nist.gov二 安装与配置 Hadoop HDFS
wget https://downloads.apache.org/hadoop/common/hadoop-3.3.1/hadoop-3.3.1.tar.gz
tar -xzvf hadoop-3.3.1.tar.gz -C /usr/local/
sudo mv /usr/local/hadoop-3.3.1 /usr/local/hadoop
export HADOOP_HOME=/usr/local/hadoop
export PATH=$PATH:$HADOOP_HOME/bin:$HADOOP_HOME/sbin
<configuration>
<property>
<name>fs.defaultFS</name>
<value>hdfs://node01:8020</value>
</property>
</configuration>
<configuration>
<property>
<name>dfs.replication</name>
<value>2</value>
</property>
<property>
<name>dfs.namenode.name.dir</name>
<value>/data/hdfs/namenode</value>
</property>
<property>
<name>dfs.datanode.data.dir</name>
<value>/data/hdfs/datanode</value>
</property>
</configuration>
node02
node03
hdfs namenode -format
start-dfs.sh
jps 应看到 NameNode/DataNode 进程;访问 http://node01:9870 查看 HDFS Web UI。三 安装与配置 ZooKeeper 集群
wget https://mirrors.tuna.tsinghua.edu.cn/apache/zookeeper/zookeeper-3.5.9/apache-zookeeper-3.5.9-bin.tar.gz
tar -zxvf apache-zookeeper-3.5.9-bin.tar.gz -C /usr/local/
sudo mv /usr/local/apache-zookeeper-3.5.9-bin /usr/local/zookeeper
export ZOOKEEPER_HOME=/usr/local/zookeeper
export PATH=$PATH:$ZOOKEEPER_HOME/bin
tickTime=2000
dataDir=/var/lib/zookeeper
clientPort=2181
server.1=node01:2888:3888
server.2=node02:2888:3888
server.3=node03:2888:3888
echo "1" > /var/lib/zookeeper/myidecho "2" > /var/lib/zookeeper/myidecho "3" > /var/lib/zookeeper/myid# 各节点
$ZOOKEEPER_HOME/bin/zkServer.sh start
$ZOOKEEPER_HOME/bin/zkServer.sh status
应看到 Mode: leader 或 Mode: follower。四 安装与配置 HBase 集群
wget https://dist.apache.org/repos/dist/release/hbase/2.5.5/hbase-2.5.5-bin.tar.gz
tar -zxvf hbase-2.5.5-bin.tar.gz -C /opt/
sudo ln -s /opt/hbase-2.5.5 /opt/hbase
export HBASE_HOME=/opt/hbase
export PATH=$PATH:$HBASE_HOME/bin
export JAVA_HOME=/usr/lib/jvm/java-1.8.0-openjdk
export HBASE_MANAGES_ZK=false
# 可按需调整堆内存
# export HBASE_HEAPSIZE=8G
<configuration>
<property>
<name>hbase.cluster.distributed</name>
<value>true</value>
</property>
<property>
<name>hbase.rootdir</name>
<value>hdfs://node01:8020/hbase</value>
</property>
<property>
<name>hbase.zookeeper.quorum</name>
<value>node01,node02,node03</value>
</property>
<property>
<name>hbase.zookeeper.property.dataDir</name>
<value>/var/lib/zookeeper</value>
</property>
<property>
<name>hbase.master.info.port</name>
<value>16010</value>
</property>
</configuration>
node02
node03
node02
for h in node02 node03; do
scp -r /opt/hbase/conf $h:/opt/hbase/
done
# 先确保 HDFS 与 ZooKeeper 已启动
start-hbase.sh
# 各节点 jps 应看到:
# Master:HMaster
# RegionServer:HRegionServer
# 若启用 HBASE_MANAGES_ZK=false,则不会看到 HQuorumPeer
# Web UI:http://node01:16010
hbase shell
> status
常见故障排查要点: