一、安装配置zookeeper:
1 上传安装包到集群服务器,解压
2 修改配置文件,进入zookeeper的安装目录的conf目录
cp zoo_sample.cfg zoo.cfg
vi zoo.cfg
# The number of milliseconds of each tick
tickTime=2000
initLimit=10
syncLimit=5
dataDir=/root/zkdata
clientPort=2181
#autopurge.purgeInterval=1
server.1=hdp20-01:2888:3888
server.2=hdp20-02:2888:3888
server.3=hdp20-03:2888:3888
3 对3台节点,都创建目录 mkdir /root/zkdata
在如下目录下,生成myid文件:/root/zookeeper/zkdata
对3台节点,在工作目录中生成myid文件,但内容要分别为各自的id: 1,2,3
hdp20-01上: echo 1 > /root/zkdata/myid
hdp20-02上: echo 2 > /root/zkdata/myid
hdp20-03上: echo 3 > /root/zkdata/myid
4 从hdp20-01上scp安装目录到其他两个节点
scp -r zookeeper-3.4.6/ hdp20-02:$PWD
scp -r zookeeper-3.4.6/ hdp20-03:$PWD
5 启动zookeeper集群
zookeeper没有提供自动批量启动脚本,需要手动一台一台地起zookeeper进程,在每一台节点上,运行命令:
bin/ ./zkServer.sh start
启动后,用jps应该能看到一个进程:QuorumPeerMain
但是,光有进程不代表zk已经正常服务,需要用命令检查状态:
bin/ ./zkServer.sh status (注意要先在各个节点上启动zookeeper再用status查看,否则会报错)
能看到角色模式:为leader或follower,即正常了。
二、安装配置hbase:
1 下载,解压:
2 修改配置文件,进入目录:/root/hbase/hbase-1.2.1/conf
(1)修改文件:hbase-env.sh
vi hbase-env.sh
export JAVA_HOME=/usr/java/jdk1.8.0_201-amd64
export HBASE_MANAGES_ZK=false
(2)修改文件:hbase-site.xml
<configuration>
<!-- 指定hbase在HDFS上存储的路径 -->
<property>
<name>hbase.rootdir</name>
<value>hdfs://hdp-01:9000/hbase</value>
</property>
<!-- 指定hbase是分布式的 -->
<property>
<name>hbase.cluster.distributed</name>
<value>true</value>
</property>
<!-- 指定zk的地址,多个用“,”分割 -->
<property>
<name>hbase.zookeeper.quorum</name>
<value>hdp-01:2181,hdp-02:2181,hdp-03:2181</value>
</property>
<!-- 指定hbase的前端访问界面 -->
<property>
<name>hbase.master.info.port</name>
<value>60010</value>
</property>
</configuration>
(3)修改文件:vi regionservers
hdp-01
hdp-02
3 环境变量也可配置:vi /etc/profile
配置环境变量之后,就可直接用start-hbase.sh命令启动hbase,无须进入bin目录才能启动:
export HBASE_HOME=/root/hbase/hbase-1.2.1
export PATH=$PATH:$HBASE_HOME/bin
使环境变量生效:source /etc/profile
将修改的hbase目录同步到其他节点(node2、node3)
scp -r hbase0.90.5 node2:/home/hadoop/
scp -r hbase0.90.5 node3:/home/hadoop/
4 启动、关闭hbase集群:
hbase启动时,要先关闭HDFS的安全模式:
查看安全模式:hadoop dfsadmin -safemode get
关闭HDFS的安全模式:hadoop dfsadmin -safemode leave
bin/start-hbase.sh
启动完后,还可以在集群中找任意一台机器启动一个备用的master
bin/hbase-daemon.sh start master
新启的这个master会处于backup状态
jps查看启动状态;
stop-hbase.sh,关闭hbase集群
5 启动hbase的命令行客户端
bin/hbase shell
Hbase> list // 查看表
Hbase> status // 查看集群状态
Hbase> version // 查看集群版本
当Xshell中使用hbase shell backspace无法删除时,进入到XShell 文件 –> 属性 –> 终端 –> 键盘,在 DELETE键序列 和 BACKSPACE键序列 中都选择 ASCII 127,最后进入 Hbase 命令行测试,可以删除!