第1关:伪分布式环境搭建
实验环境:
hadoop2.7;
JDK8;
HBase2.1.1;
hadoop已安装;
JDK已安装,环境变量已配置;
HBase压缩包已下载,存放在/opt目录下。
在搭建环境之前我们首先来了解一下HBase
分布式环境的整体架构:
我们来简单认识一下与HBase
的相关组件:
Zookeeper:
Zookeeper
能为HBase
提供协同服务,是HBase
的一个重要组件,Zookeeper
能实时的监控HBase
的健康状态,并作出相应处理。
HMaster:
HMaster
是HBase
的主服务,他负责监控集群中所有的HRegionServer
,并对表和Region
进行管理操作,比如创建表,修改表,移除表等等。
HRegion:
HRegion
是对表进行划分的基本单元,一个表在刚刚创建时只有一个Region
,但是随着记录的增加,表会变得越来越大,HRegionServer
会实时跟踪Region
的大小,当Region
增大到某个值时,就会进行切割(split
)操作,由一个Region
切分成两个Region
。
HRegionServer:
HRegionServer
是RegionServer
的实例,它负责服务和管理多个HRegion
实例,并直接响应用户的读写请求。
总的来说,要部署一个分布式的HBase
数据库,需要各个组件的协作,HBase
通过Zookeeper
进行分布式应用管理,Zookeeper
相当于管理员,HBase
将数据存储在HDFS
(分布式文件系统)中,通过HDFS
存储数据,所以我们搭建分布式的HBase
数据库的整体思路也在这里,即将各个服务进行整合。
接下来,我们就一起来搭建一个伪分布式的HBase。
配置与启动伪分布式HBase
如果你已经完成了单节点HBase的安装,那伪分布式的配置对你来说应该很简单了,只需要修改hbase-site.xml
文件即可:
cd /app/hbase-2.1.1/confvim /app/hbase-2.1.1/conf/hbase-site.xml
在这里主要有两项配置:
1.开启HBase
的分布式运行模式,配置hbase.cluster.distributed
为true
代表开启HBase
的分布式运行模式:
<property>
<name>hbase.cluster.distributed</name>
<value>true</value>
</property>
2.是设置HBase
的数据文件存储位置为HDFS
的/hbase
目录,要注意的是在这里我们不需要在HDFS
中手动创建hbase
目录,因为HBase
会帮我们自动创建。
<property>
<name>hbase.rootdir</name>
<value>hdfs://localhost:9000/hbase</value>
</property>
修改之后hbase-site.xml
的<configuration>
代码:
<configuration>
<configuration><property><name>hbase.cluster.distributed</name><value>true</value></property><property><name>hbase.rootdir</name><value>file:///root/data/hbase/data</value></property><property><name>hbase.zookeeper.property.dataDir</name><value>/root/data/hbase/zookeeper</value></property><property><name>hbase.unsafe.stream.capability.enforce</name><value>true</value></property><property><name>hbase.rootdir</name><value>hdfs://localhost:9000/hbase</value></property>
</configuration>
</configuration>
标红部分为我们需要注意的配置。我们在设置单节点的时候将hbase.unsafe.stream.capability.enforce
属性值设置为了false
,在这里我们需要注意设置它的值为true
,或者干脆删除这个属性也是可以的。
配置完成之后,我们需要先启动Hadoop
,然后启动HBase
,最后输入jps
查看启动的进程:
start-dfs.sh
start-hbase.sh
如果出现HMaster
和HRegionServer
以及HQuorumPeer
三个服务则代表伪分布式环境已经搭建成功了。
在HDFS中验证
接下来我们进一步验证:在HDFS
中检查HBase
文件。
如果一切正常,HBase
会在HDFS
中自动建立自己的文件,在上述配置文件中,设置的文件位置为/hbase
,我们输入hadoop fs -ls /hbase
即可查看,如下图所示,分布式文件系统(HDFS
)中hbase
文件夹已经创建了:
编程要求
好了,到你啦,你需要先按照上次实训——HBase单节点安装的方式将HBase
安装在/app
目录下,然后根据本关知识配置好伪分布式的HBase
,最后点击测评即可通关
第1关:伪分布式环境搭建
实验环境:
hadoop2.7;
JDK8;
HBase2.1.1;
hadoop已安装;
JDK已安装,环境变量已配置;
HBase压缩包已下载,存放在/opt目录下。
在搭建环境之前我们首先来了解一下HBase
分布式环境的整体架构:
我们来简单认识一下与HBase
的相关组件:
Zookeeper:
Zookeeper
能为HBase
提供协同服务,是HBase
的一个重要组件,Zookeeper
能实时的监控HBase
的健康状态,并作出相应处理。
HMaster:
HMaster
是HBase
的主服务,他负责监控集群中所有的HRegionServer
,并对表和Region
进行管理操作,比如创建表,修改表,移除表等等。
HRegion:
HRegion
是对表进行划分的基本单元,一个表在刚刚创建时只有一个Region
,但是随着记录的增加,表会变得越来越大,HRegionServer
会实时跟踪Region
的大小,当Region
增大到某个值时,就会进行切割(split
)操作,由一个Region
切分成两个Region
。
HRegionServer:
HRegionServer
是RegionServer
的实例,它负责服务和管理多个HRegion
实例,并直接响应用户的读写请求。
总的来说,要部署一个分布式的HBase
数据库,需要各个组件的协作,HBase
通过Zookeeper
进行分布式应用管理,Zookeeper
相当于管理员,HBase
将数据存储在HDFS
(分布式文件系统)中,通过HDFS
存储数据,所以我们搭建分布式的HBase
数据库的整体思路也在这里,即将各个服务进行整合。
接下来,我们就一起来搭建一个伪分布式的HBase。
配置与启动伪分布式HBase
如果你已经完成了单节点HBase的安装,那伪分布式的配置对你来说应该很简单了,只需要修改hbase-site.xml
文件即可:
cd /app/hbase-2.1.1/confvim /app/hbase-2.1.1/conf/hbase-site.xml
在这里主要有两项配置:
1.开启HBase
的分布式运行模式,配置hbase.cluster.distributed
为true
代表开启HBase
的分布式运行模式:
<property>
<name>hbase.cluster.distributed</name>
<value>true</value>
</property>
2.是设置HBase
的数据文件存储位置为HDFS
的/hbase
目录,要注意的是在这里我们不需要在HDFS
中手动创建hbase
目录,因为HBase
会帮我们自动创建。
<property>
<name>hbase.rootdir</name>
<value>hdfs://localhost:9000/hbase</value>
</property>
修改之后hbase-site.xml
的<configuration>
代码:
<configuration>
<configuration><property><name>hbase.cluster.distributed</name><value>true</value></property><property><name>hbase.rootdir</name><value>file:///root/data/hbase/data</value></property><property><name>hbase.zookeeper.property.dataDir</name><value>/root/data/hbase/zookeeper</value></property><property><name>hbase.unsafe.stream.capability.enforce</name><value>true</value></property><property><name>hbase.rootdir</name><value>hdfs://localhost:9000/hbase</value></property>
</configuration>
</configuration>
标红部分为我们需要注意的配置。我们在设置单节点的时候将hbase.unsafe.stream.capability.enforce
属性值设置为了false
,在这里我们需要注意设置它的值为true
,或者干脆删除这个属性也是可以的。
配置完成之后,我们需要先启动Hadoop
,然后启动HBase
,最后输入jps
查看启动的进程:
start-dfs.sh
start-hbase.sh
如果出现HMaster
和HRegionServer
以及HQuorumPeer
三个服务则代表伪分布式环境已经搭建成功了。
在HDFS中验证
接下来我们进一步验证:在HDFS
中检查HBase
文件。
如果一切正常,HBase
会在HDFS
中自动建立自己的文件,在上述配置文件中,设置的文件位置为/hbase
,我们输入hadoop fs -ls /hbase
即可查看,如下图所示,分布式文件系统(HDFS
)中hbase
文件夹已经创建了:
编程要求
好了,到你啦,你需要先按照上次实训——HBase单节点安装的方式将HBase
安装在/app
目录下,然后根据本关知识配置好伪分布式的HBase
,最后点击测评即可通关