Zookeeper & Hbase安装教程
Part 1 Zookeeper安装部署
1.解压ZooKeeper安装包:
bash
cd /export/softwares
tar -zxvf apache-zookeeper-3.8.4-bin.tar.gz -C /export/server/
cd /export/server
mv apache-zookeeper-3.8.4-bin zookeeper

2.配置环境变量
为了方便全局使用ZooKeeper命令,需要在三个节点上都配置环境变量。
bash
echo 'export ZOOKEEPER_HOME=/export/server/zookeeper' >> /etc/profile
echo 'export PATH=$PATH:/export/server/zookeeper/bin' >> /etc/profile
source /etc/profile

查看路径是否配置成功
bash
echo $ZOOKEEPER_HOME
# 应输出/export/server/zookeeper
echo $PATH
# 应能看到/export/server/zookeeper/bin在路径中
4.分发到其他节点
ruby
scp -r /export/server/zookeeper root@hadoop02:/export/server/
scp -r /export/server/zookeeper root@hadoop03:/export/server/
5.创建数据目录与配置myid
ZooKeeper集群中每个节点都需要一个唯一的ID号,存储在其数据目录下的 myid文件中。
在 hadoop01 上执行:
bash
mkdir -p /export/data/zookeeper
echo "1" > /export/data/zookeeper/myid
在 hadoop02 上执行:
bash
mkdir -p /export/data/zookeeper
echo "2" > /export/data/zookeeper/myid
在 hadoop03 上执行:
bash
mkdir -p /export/data/zookeeper
echo "3" > /export/data/zookeeper/myid
6.修改核心配置文件zoo.cfg
bash
cd /export/server/zookeeper/conf
cp zoo_sample.cfg zoo.cfg
vim zoo.cfg
确保内容如下:
ini
tickTime=2000
initLimit=10
syncLimit=5
dataDir=/export/data/zookeeper
clientPort=2181
# autopurge.snapRetainCount=3
# autopurge.purgeInterval=1
server.1=hadoop01:2888:3888
server.2=hadoop02:2888:3888
server.3=hadoop03:2888:3888
4lw.commands.whitelist=stat,ruok,conf,srvr,mntr

把修改好的文件分发给另外两台虚拟机
ruby
scp /export/server/zookeeper/conf/zoo.cfg root@hadoop02:/export/server/zookeeper/conf/
scp /export/server/zookeeper/conf/zoo.cfg root@hadoop03:/export/server/zookeeper/conf/
7.启动ZooKeeper集群服务
在 hadoop01, hadoop02, hadoop03 上分别执行:
sql
zkServer.sh start
8.验证集群状态
8.1.查看Java进程
jps
正常情况下,会看到一个名为 QuorumPeerMain的Java进程

8.2.查看节点角色
lua
zkServer.sh status
一个正常的3节点集群会有一个Leader和两个Follower

Part 2 Hbase安装教程
1.上传并解压
bash
cd /export/softwares
tar -zxvf hbase-2.4.6-bin.tar.gz -C /export/server
mv hbase-2.4.6 hbase


2.配置环境变量
bash
vim /etc/profile
export HBASE_HOME=/export/server/hbase
export PATH=$PATH:$HBASE_HOME/bin
source /etc/profile
3.修改 HBase 配置
bash
cd /export/server/hbase/conf
3.1.修改 hbase-env.sh
ini
vim hbase-env.sh
export JAVA_HOME=/usr/lib/jvm/java-17-openjdk-amd64
export HBASE_MANAGES_ZK=false
3.2.修改 hbase-site.xml
vim hbase-site.xml
xml
<configuration>
<!-- HBase 数据在 HDFS 上的位置 -->
<property>
<name>hbase.rootdir</name>
<value>hdfs://uhadoop01:9000/hbase</value>
</property>
<!-- 开启分布式模式 -->
<property>
<name>hbase.cluster.distributed</name>
<value>true</value>
</property>
<!-- ZooKeeper 集群 -->
<property>
<name>hbase.zookeeper.quorum</name>
<value>uhadoop01,uhadoop02,uhadoop03</value>
</property>
<!-- ZK 端口 -->
<property>
<name>hbase.zookeeper.property.clientPort</name>
<value>2181</value>
</property>
<!-- ZK 节点路径 -->
<property>
<name>zookeeper.znode.parent</name>
<value>/hbase</value>
</property>
</configuration>
3.3.修改 regionservers
vim regionservers
uhadoop01
uhadoop02
uhadoop03
4.分发到其他节点
ruby
scp -r /export/server/hbase root@uhadoop02:/export/server/
scp -r /export/server/hbase root@uhadoop03:/export/server/


5.创建 HDFS 目录
bash
hdfs dfs -mkdir -p /hbase
hdfs dfs -chmod 777 /hbase
6.启动集群
在 uhadoop01:
sql
start-hbase.sh

7.验证集群
jps

8.Web UI
浏览器访问:
arduino
http://uhadoop01:16010

Shell 测试
hbase shell
