Zookeeper+Hadoop+Hbase+Hive+Kylin+Nginx集群搭建四(Hbase篇)

  • 五、Hbase集群搭建
  • 1.准备工作(下载与时间同步)
  • 2.安装解压
  • 3.环境变量配置
  • 4.文件配置
  • 六、启动Hbase
  • 1.启动zookeeper
  • 2.启动Hadoop
  • 2.1格式化HDFS
  • 2.2启动HDFS
  • 2.3启动YARN
  • 2.4Hadoop启动校验
  • 3.Hbase启动
  • 4.问题



五、Hbase集群搭建

1.准备工作(下载与时间同步)

官网下载合适的hbase版本,要求能与上面安装的zookeeper、hadoop版本兼容

  • 安装hbase之前必须要保证的是三台服务器的时间保持同步,推荐使用ntp完成时间配置(安装ntp:yum install ntp)

方法一:在虚拟机上安装ntp服务

yum install -y ntpdate
cp /usr/share/zoneinfo/Asia/Shanghai /etc/localtime
ntpdate -u ntp.api.bz

方法二:设置虚拟机
设置虚拟机,找到【选项】——【vmwaretools】 ——【点击将客户端时间与主机同步】——【确定】

2.安装解压

#创建安装文件夹
mkdir /usr/local/hbase
#上传文件到此位置
#解压
tar -zxvf hbase-1.4.13-bin.tar.gz

3.环境变量配置

编辑vim /etc/profile文件

vim /etc/profile
#文末添加:
export HBASE_HOME=/usr/local/hbase/hbase-1.4.13
#修改PATH项:在PATH项的$PATH 末尾添加(记住":"不能少)
:$HBASE_HOME/bin

保存,退出,source /etc/profile使之生效。
Hbase的配置文件在conf目录下,首先复制hadoop的hdfs-site.xml到conf目录下(cp命令即可)

4.文件配置

进入conf目录:

  • 修改hbase-env.sh

vim hbase-env.sh

修改内容:

export JAVA_HOME=/usr/local/java/jdk1.8.0_261  #Java安装路径
export HBASE_MANAGES_ZK=false  #由HBase负责启动和关闭Zookeeper
export HBASE_CLASSPATH=$HBASE_CLASSPATH:/usr/local/hbase/hbase-1.4.13/conf:/usr/local/hbase/hbase-1.4.13/lib:/usr/local/hadoop/hadoop-2.7.4/etc/hadoop

保存退出

  • 修改hbase-site.xml

修改configuration标签内容:

<configuration>
	<property>
		<name>hbase.rootdir</name>
		<value>hdfs://192.168.88.129:9000/hbase</value>
	</property>
	<property>
		<name>hbase.cluster.distributed</name>
		<value>true</value>
	</property>
	<property>
		<name>hbase.tmp.dir</name>
		<value>/usr/data/hbase/tmp</value>
	</property>
	<property>
		<name>hbase.zookeeper.quorum</name>
		<value>192.168.88.129,192.168.88.130,192.168.88.131</value>
	</property>
	<property>
		<name>hbase.zookeeper.property.clientPort</name>
		<value>2181</value>
	</property>
</configuration>

其中hbase.zookeeper.quorum配置的是之前安装好的zookeeper集群,对应即可
创建上面的hbase.tmp.dir文件:

cd /usr/data
mkdir hbase
mkdir hbase/tmp
  • 配置conf/regionservers

加入下面内容(即主、从节点的IP):

192.168.88.129
192.168.88.130
192.168.88.131

每个节点都需这么配置,所以也可以直接发送到其他节点,再进行相对修改即可:

scp -r /usr/local/hbase/hbase-1.4.13/ 192.168.88.130:/usr/local/hbase/
scp -r /usr/local/hbase/hbase-1.4.13/ 192.168.88.131:/usr/local/hbase/

六、启动Hbase

按顺序来:

1.启动zookeeper

在每个节点上运行:

zkServer.sh start (启动)
zkServer.sh stop (终止)

查看当前zookeeper的运行状态:(一个leader,其余follower)

zkServer.sh status

启动第一台后状态可能不对,不要紧张,当三台全启动后就好了

2.启动Hadoop

所有节点执行:

hadoop-daemon.sh start journalnode

校验命令,查看进程:

jps

2.1格式化HDFS

主节点执行命令(最好自己手敲,复制可能出错):

hdfs namenode -format

或者:

hadoop namenode -format

2.2启动HDFS

仅在主节点执行命令

start-dfs.sh

2.3启动YARN

同样只在主节点:

start-yarn.sh

2.4Hadoop启动校验

见上文Hadoop集群搭建中的 启动测试 部分

3.Hbase启动

仅在主节点(node)执行

start-hbase.sh

在各个节点用jps查看进程是否存在:

  • 主节点为HMaster/HRegionServer,从节点为HRegionServer

注意:在哪个主机执行start命令,则该主机为master

单独启动Hregionserver的命令为:

hbase-daemon.sh start regionserver
启动集群中所有的regionserver

./hbase-daemons.sh start regionserver

启动某个regionserver

./hbase-daemon.sh start regionserver

hbase默认的web界面地址为:http://master-ip:16010:

本文为:http://192.168.88.129:16010

hive集群怎么关闭 hive集群搭建_centos

4.问题

本文一直使用的IP,前面一直没事,但启动Hbase时会出现问题
查看regionserver的log日志:

regionserver.HRegionServer:reportForDuty failed;sleeping and then retrying.
regionserver.HRegionServer:reportForDuty to master=localhost,6000,139xxxxxx with port=60020,startcode=139xxxxxx
regonserver.HRegionServer:error telling master we are up
java.net.ConnectException:Connection refused

注意到master=localhost , 但这不对,master不可能等于localhost
查看三台节点的主机名,发现都为localhost,因而猜想是否此处有问题,更改每台主机名:
通过命令行进行更改:IP是129的主机名改为node,130改为node1,131改为node2

#129上执行:
hostnamectl set-hostname node
#130上执行:
hostnamectl set-hostname node1
#131上执行:
hostnamectl set-hostname node2

在每个节点使用hostname命令查看是否改名成功
并为每个节点添加映射:

#修改文件/etc/hosts
vi /etc/hosts

加入以下内容:

192.168.88.129 node
192.168.88.130 node1
192.168.88.131 node2

之后可以测试一下ping 主机名是否可以ping通,如,在主节点尝试:ping node1 都可以之后,重新进行步骤3.Hbase启动,启动成功