第三章:安装HBase

HBase

第三章:安装HBase




前言

主要讲解HBase的安装与注意事项。


提示:以下是本篇文章正文内容,下面案例可供参考

一、启动Hadoop集群和Zookeeper

HBase是基于HDFS且自带高可用的,所以安装前要先启动集群和Zookeeper

(1)群起脚本

下面展示一些 群起脚本代码,这里只写起一台的,请同学们按自己集群有多少个自行增加。

#!bin/bash

case S1 in
"start"){
    
    
	echo "启动ZK"
	ssh yangyuxia@hadoop100 '/opt/modules/zookeeper/bin/zkServer.sh start'
	
	echo "启动集群服务"

	echo "正在启动HDFS"
	echo "正在开启NameNode节点"
	ssh yangyuxia@hadoop100 '/opt/modules/hadoop-2.5.0-cdh5.3.6/sbin/hadoop-daemon.sh start namenode'
	echo "正在开启DataNode节点"
	ssh yangyuxia@hadoop100 '/opt/modules/hadoop-2.5.0-cdh5.3.6/sbin/hadoop-daemon.sh start datanode'
	
	echo "正在启动YARN"
	echo "正在开启ResourceManager节点"
	ssh yangyuxia@hadoop100 '/opt/modules/hadoop-2.5.0-cdh5.3.6/sbin/yarn-daemon.sh start resourcemanager'
	echo "正在开启NodeManager节点"
	ssh yangyuxia@hadoop100 '/opt/modules/hadoop-2.5.0-cdh5.3.6/sbin/yarn-daemon.sh start nodemanager'
	
	echo "正在开启HistoryServer"
	ssh yangyuxia@hadoop100 '/opt/modules/hadoop-2.5.0-cdh5.3.6/sbin/mr-jobhistory-daemon.sh start historyserver'
};;;
"stop"){
    
    
	echo "关闭集群服务"
	
	echo "正在关闭HistoryServer"
	ssh yangyuxia@hadoop100 '/opt/modules/hadoop-2.5.0-cdh5.3.6/sbin/mr-jobhistory-daemon.sh stop historyserver'

	echo "正在关闭YARN"
	echo "正在关闭ResourceManager节点"
	ssh yangyuxia@hadoop100 '/opt/modules/hadoop-2.5.0-cdh5.3.6/sbin/yarn-daemon.sh stop resourcemanager'
	echo "正在关闭NodeManager节点"
	ssh yangyuxia@hadoop100 '/opt/modules/hadoop-2.5.0-cdh5.3.6/sbin/yarn-daemon.sh stop nodemanager'
	
	echo "正在关闭HDFS"
	echo "正在关闭NameNode节点"
	ssh yangyuxia@hadoop100 '/opt/modules/hadoop-2.5.0-cdh5.3.6/sbin/hadoop-daemon.sh stop namenode'
	echo "正在关闭DataNode节点"
	ssh yangyuxia@hadoop100 '/opt/modules/hadoop-2.5.0-cdh5.3.6/sbin/hadoop-daemon.sh stop datanode'
	
	echo "关闭ZK"
	ssh yangyuxia@hadoop100 '/opt/modules/zookeeper/bin/zkServer.sh stop'
};;;
esac

(2)启动集群和Zookeeper

使用脚本群起(./脚本.sh start)即可启动
在这里插入图片描述
因为只是讲解,我就用一台机器实例了。

二、安装HBase并配置

(1)安装HBase并解压

HBase安装

$ sudo wget http://labfile.oss.aliyuncs.com/hbase-0.98.11-hadoop2-bin.tar.gz

解压HBase,这里我解压到opt目录。

 tar -zxf hbase-1.3.1-bin.tar.gz -C /opt/modules/

解压后的HBase文件名字可能很长,可以自行修改

(2)修改HBase配置文件

修改hbase-env.sh

# Tell HBase whether it should manage it's own instance of Zookeeper or not.
export JAVA_HOME=/opt/modules/jdk1.8.0_121
# 取消使用HBase内置Zookeeper
export HBASE_MANAGES_ZK=false

注:若使用的jdk为1.8或1.8以上的的,可以把以下这些代码删掉

# Configure PermSize. Only needed in JDK7. You can safely remove it for JDK8+
# export HBASE_MASTER_OPTS="$HBASE_MASTER_OPTS -XX:PermSize=128m -XX:MaxPermSize=128m"
# export HBASE_REGIONSERVER_OPTS="$HBASE_REGIONSERVER_OPTS -XX:PermSize=128m -XX:MaxPermSize=128m"

修改hbase-site.xml

<configuration>
	<!-- 每个regionServer的共享目录,用来持久化Hbase,默认情况下在/tmp/hbase下面 -->
	<property>
		<name>hbase.rootdir</name>
		<value>hdfs://hadoop102:8020/HBase</value>
	</property>
	<!-- hbase集群模式,false表示hbase的单机,true表示是分布式模式 --> 
	<!-- 注:伪分布式也是分布模式,单机模式下HBase不使用HDFS -->
	<property>
		 <name>hbase.cluster.distributed</name>
		 <value>true</value>
 	</property>
 	<!-- hbase master节点的端口 -->  
 	<property>
		 <name>hbase.master.port</name>
		 <value>16000</value>
	 </property>
	 <!-- hbase依赖的zk地址,若是完全分布式,则将安装zk的所有地址均写上去 -->
	 <property>
		 <name>hbase.zookeeper.quorum</name>
		 <value>hadoop100</value>
	 </property>
	 <!-- zookeeperData目录地址 -->
	 <property>
		 <name>hbase.zookeeper.property.dataDir</name>
		 <value>/opt/modules/zookeeper/zkData</value>
	 </property>	

修改regionservers
在regionservers中添加所有主机名,如:

hadoop102
hadoop103
hadoop104

配置结束


三、启动HBase

(1)两种启动和停止HBase方式

第一种方式启动HBase

[yangyuxia@hadoop100 hbase-1.3.1]$ bin/hbase-daemon.sh start master
starting master, logging to /opt/modules/hbase-1.3.1/bin/../logs/hbase-yangyuxia-master-hadoop100.out
[yangyuxia@hadoop100 hbase-1.3.1]$ bin/hbase-daemon.sh start regionserver
starting regionserver, logging to /opt/modules/hbase-1.3.1/bin/../logs/hbase-yangyuxia-regionserver-hadoop100.out

查看master和regionserver是否启动
在这里插入图片描述
第一种方式关闭HBase

[yangyuxia@hadoop100 hbase-1.3.1]$ bin/hbase-daemon.sh stop regionserver
stopping regionserver.
[yangyuxia@hadoop100 hbase-1.3.1]$ bin/hbase-daemon.sh stop master
stopping master.

查看master和regionserver是否关闭
在这里插入图片描述
第二种方式开启HBase

[yangyuxia@hadoop100 hbase-1.3.1]$ bin/start-hbase.sh 
starting master, logging to /opt/modules/hbase-1.3.1/bin/../logs/hbase-yangyuxia-master-hadoop100.out
hadoop100: starting regionserver, logging to /opt/modules/hbase-1.3.1/bin/../logs/hbase-yangyuxia-regionserver-hadoop100.out

第二种方式关闭HBase

[yangyuxia@hadoop100 hbase-1.3.1]$ bin/stop-hbase.sh 
stopping hbase.................

(2)启动Hbase Shell

[yangyuxia@hadoop100 hbase-1.3.1]$ bin/hbase shell
2020-10-16 18:26:17,300 WARN  [main] util.NativeCodeLoader: Unable to load native-hadoop library for your platform... using builtin-java classes where applicable
SLF4J: Class path contains multiple SLF4J bindings.
SLF4J: Found binding in [jar:file:/opt/modules/hbase-1.3.1/lib/slf4j-log4j12-1.7.5.jar!/org/slf4j/impl/StaticLoggerBinder.class]
SLF4J: Found binding in [jar:file:/opt/modules/hadoop-2.5.0-cdh5.3.6/share/hadoop/common/lib/slf4j-log4j12-1.7.5.jar!/org/slf4j/impl/StaticLoggerBinder.class]
SLF4J: See http://www.slf4j.org/codes.html#multiple_bindings for an explanation.
SLF4J: Actual binding is of type [org.slf4j.impl.Log4jLoggerFactory]
HBase Shell; enter 'help<RETURN>' for list of supported commands.
Type "exit<RETURN>" to leave the HBase Shell
Version 1.3.1, r930b9a55528fe45d8edce7af42fef2d35e77677a, Thu Apr  6 19:36:54 PDT 2017
hbase(main):001:0> 

猜你喜欢

转载自blog.csdn.net/tyh1579152915/article/details/109120523