教育行业A股IPO第一股(股票代码 003032)

全国咨询/投诉热线:400-618-4000

天富娱乐注册官网平台 如何Zookeeper安装部署HBase集群?分步骤讲解

更新时间:2021年06月17日11时31分 来源:传智教育 浏览次数:

传智教育-一样的教育,不一样的品质

HBase中存储在HDFS中的数据是通过Zookeeper协调处理的。由于HBase存在单点故障的问题,因此,可以通过Zookeeper部署一个高可用的HBase集群解决。下面,以三台服务器为例(hadoop01、hadoop02和hadoop03),讲解如何安装部署HBase集群。HBase集群的规划方式如图1所示。

HBase集群规划

图1 HBase集群规划

在图1中,HBase集群中的hadoop01和hadoop02是主节点,hadoop02和hadoop03是从节点。这里之所以将hadoop02既部署为主节点也部署为从节点,其目的是为了避免HBase集群主节点宕机导致单点故障问题。

接下来,分步骤讲解如何部署HBase集群,具体步骤如下:

(1) 安装JDK、Hadoop以及Zookeeper,这里我们设置的JDK版本是1.8、Hadoop版本是2.7.4以及Zookeeper的版本是3.4.10。

(2) 下载HBase安装包。官网下载地址:http://archive.apache.org/dist/hbase/。这里,我们选择下载的版本是1.2.1。

(3) 上传并解压HBase安装包。将HBase安装包上传至Linux系统的/export/software/目录下,然后解压到/export/servers/目录。解压安装包的具体命令如下:

 $ tar -zxvf hbase-1.2.1-bin.tar.gz -C /export/servers/

(4) 将/hadoop-2.7.4/etc/hadoop目录下的hdfs-site.xml和core-site.xml配置文件复制一份到/hbase-1.2.1/conf目录下,复制文件的具体命令如下:

 $ cp /export/servers/hadoop-2.7.4/etc/hadoop/{hdfs-site.xml,core-site.xm} /export/servers/hbase-1.2.1/conf

(5) 进入/hbase-1.2.1/conf目录修改相关配置文件。打开hbase-env.sh配置文件,指定jdk的环境变量并配置Zookeeper(默认是使用内置的Zookeeper服务),修改后的hbase-env.sh文件内容具体如下:

 # The java implementation to use. Java 1.7+ required. \# 配置jdk环境变量 **export JAVA_HOME=/export/servers/jdk** \# Tell HBase whether it should manage it's own instance of Zookeeper or not. \# 配置hbase使用外部Zookeeper **export HBASE_MANAGES_ZK=false

打开hbase-site.xml配置文件,指定HBase在HDFS的存储路径、HBase的分布式存储方式以及Zookeeper地址,修改后的hbase-site.xml文件内容具体如下:

 <configuration> <!-- 指定hbase在HDFS上存储的路径 --> <property> <name>hbase.rootdir</name> <value>hdfs://hadoop01:9000/hbase</value> </property> <!-- 指定hbase是分布式的 --> <property> <name>hbase.cluster.distributed</name> <value>true</value> </property> <!-- 指定zk的地址,多个用“,”分割 --> <property> <name>hbase.zookeeper.quorum</name> <value>hadoop01:2181,hadoop02:2181,hadoop03:2181</value> </property> </configuration>

修改regionservers配置文件,配置HBase的从节点角色(即hadoop02和hadoop03)。具体内容如下:

 hadoop02 hadoop03

修改ackup-masters配置文件,为防止单点故障配置备用的主节点角色,具体内容如下:

 hadoop02

修改profile配置文件,通过“vi /etc/profile”命令进入系统环境变量配置文件,配置HBase的环境变量(服务器hadoop01、hadoop02和hadoop03都需要配置),具体内容如下:

 export HBASE_HOME=/export/servers/hbase-1.2.1 export PATH=$PATH:$HBASE_HOME/bin:

将HBase的安装目录分发至hadoop02、hadoop03服务器上。具体命令如下:

 $ scp –r /export/servers/hbase-1.2.1/ hadoop02:/export/servers/ $ scp –r /export/servers/hbase-1.2.1/ hadoop03:/export/servers/

在服务器hadoop01、hadoop02和hadoop03上分别执行“source /etc/profile”命令,使系统环境配置文件生效。

(6) 启动Zookeeper和HDFS,具体命令如下:

 # 启动zookeeper $ zkServer.sh start \# 启动hdfs $ start-dfs.sh

(7) 启动HBase集群,具体命令如下:

 $ start-hbase.sh

这里需要注意的是,在启动HBase集群之前,必须要保证集群中各个节点的时间是同步的,若不同步会抛出ClockOutOfSyncException异常,导致从节点无法启动。因此需要在集群各个节点中执行如下命令来保证时间同步。

 $ ntpdate -u cn.pool.ntp.org

(8) 通过“jps”命令检查HBase集群服务部署是否成功,如图2所示。

查看HBase集群中的进程

图2 查看HBase集群中的进程

从图2可以看出,服务器hadoop01上出现了HMaster进程,服务器hadoop02上出现了HMaster和HRegionServer进程,服务器hadoop03上出现了HRegionServer进程,证明HBase集群安装部署成功。若需要停止HBase集群,则执行“stop-hbase.sh”命令。

下面,通过浏览器访问[http://hadoop01:16010,查看HBase集群状态,如图3所示。

查看HBase集群中的进程

图3 HBase集群状态

从图3可以看出,服务器hadoop01是HBase的主节点,服务器hadoop02和hadoop03是从节点。下面,通过访问http://hadoop02:16010来查看集群备用主节点的状态,如图4所示。

查看HBase集群中的进程

图4 HBase集群备用节点的状态

从图4可以看出,服务器hadoop02是HBase集群的备用主节点,并且可以从Active Master看出主节点在正常工作。





猜你喜欢:

HBase读写数据分几步?具体是怎样操作的?

HBase读写数据分几步?具体是怎样操作的?

Redis、传统数据库、HBase以及Hive的区别

HBase分布式数据库有哪些特点?HBase简介

传智教育Python+大数据开发培训

0 分享到:
和我们在线交谈!