hbase集群搭建
来源:互联网 发布:导航网源码 搜索引擎 编辑:程序博客网 时间:2024/06/05 18:48
1.1 hbase集群结构
REGION:是HBASE中对表进行切割的单元
HMASTER: HBASE的主节点,负责整个集群的状态感知,负载分配、负责用户表的元数据管理
(可以配置多个用来实现HA)
为regionserver分配region,负责regionserver负载均衡
用户对表的增删改查
如果当前的regionserver宕机,会把region迁移
REGION-SERVER: HBASE中真正负责管理region的服务器,也就是负责为客户端进行表数据读写的服务器
维护master给它的region
当这个region过大的情况下,他还负责切分这个过大的region
(负责客户端的IO请求,去hdfs上进行读写数据)
ZOOKEEPER: 整个HBASE中的主从节点协调,主节点之间的选举,集群节点之间的
上下线感知……都是通过zookeeper来实现
Region 存储寻址入口
监控:REGION SERVER 上下线 把这个状态告诉master
存储hbase的schema(当前哪些表,表里有哪些列族)
1.2 hbase集群搭建
(1)上传hbase安装包(上传到hadoop1,hadoop2,hadoop3这三台服务器上),上传后的位置如下:
[root@hadoop1 software]# cd /home/tuzq/software[root@hadoop1 software]# pwd/home/tuzq/software[root@hadoop1 software]# lshbase-1.3.1-bin.tar.gz
(2)解压,并配置环境变量
[root@hadoop1 software]# tar -zxvf hbase-1.3.1-bin.tar.gz[root@hadoop1 software]# cd hbase-1.3.1[root@hadoop1 hbase-1.3.1]# ll总用量 348drwxr-xr-x. 4 root root 4096 4月 5 11:02 bin-rw-r--r--. 1 root root 148959 4月 7 09:45 CHANGES.txtdrwxr-xr-x. 2 root root 4096 4月 5 11:02 confdrwxr-xr-x. 12 root root 4096 4月 7 10:35 docsdrwxr-xr-x. 7 root root 4096 4月 7 10:26 hbase-webapps-rw-r--r--. 1 root root 261 4月 7 10:37 LEGALdrwxr-xr-x. 3 root root 4096 6月 22 11:25 lib-rw-r--r--. 1 root root 130696 4月 7 10:37 LICENSE.txt-rw-r--r--. 1 root root 43258 4月 7 10:37 NOTICE.txt-rw-r--r--. 1 root root 1477 9月 21 2016 README.txt[root@hadoop1 hbase-1.3.1]# [root@hadoop1 hbase-1.3.1]# vim /etc/profile#set hbase envexport HBASE_HOME=/home/tuzq/software/hbase-1.3.1export PATH=$PATH:$HBASE_HOME/bin[root@hadoop1 hbase-1.3.1]# source /etc/profile
(3)配置hbase集群,要修改3个文件
注意: 要把hadoop的hdfs-site.xml和core-site.xml 放到hbase/conf下
[root@hadoop1 hadoop]# pwd/home/tuzq/software/hadoop-2.8.0/etc/hadoop[root@hadoop1 hadoop]# cp hdfs-site.xml /home/tuzq/software/hbase-1.3.1/conf[root@hadoop1 hadoop]# cp core-site.xml /home/tuzq/software/hbase-1.3.1/conf[root@hadoop1 hadoop]# cd $HBASE_HOME[root@hadoop1 conf]# ll总用量 52-rw-r--r--. 1 root root 1376 6月 22 11:48 core-site.xml-rw-r--r--. 1 root root 1811 9月 21 2016 hadoop-metrics2-hbase.properties-rw-r--r--. 1 root root 4537 11月 7 2016 hbase-env.cmd-rw-r--r--. 1 root root 7468 11月 7 2016 hbase-env.sh-rw-r--r--. 1 root root 2257 9月 21 2016 hbase-policy.xml-rw-r--r--. 1 root root 934 9月 21 2016 hbase-site.xml-rw-r--r--. 1 root root 5203 6月 22 11:48 hdfs-site.xml-rw-r--r--. 1 root root 4722 4月 5 11:02 log4j.properties-rw-r--r--. 1 root root 10 12月 1 2015 regionservers[root@hadoop1 conf]#
(3.1)修改hbase-env.sh
export JAVA_HOME=/usr/local/jdk1.8.0_73#告诉hbase使用外部的zk,HBASE不管理zookeeper集群export HBASE_MANAGES_ZK=false#配置hadoop的环境变量export HADOOP_HOME=/home/tuzq/software/hadoop-2.8.0
(3.2)修改 hbase-site.xml
<configuration> <!-- 指定hbase在HDFS上存储的路径,让hdfs统一管理HBASE产生的数据文件,说明不是单机的hbase,是一个集群的hbase,注意这里的hdfs://mycluster是hadoop的core-site-xml里的fs.defaultFS的值,hadoopHA配置是没有端口的--> <property> <name>hbase.rootdir</name> <value>hdfs://mycluster/hbase</value> </property> <!--指定hbase是否分布式的--> <property> <name>hbase.cluster.distributed</name> <value>true</value> </property> <!--指定zk的地址,多个用","分割--> <property> <name>hbase.zookeeper.quorum</name> <value>hadoop11:2181,hadoop12:2181,hadoop13:2181</value> </property></configuration>
(3.3)修改 regionservers
通过这个告诉slave有那些台(hadoop1(Master),hadoop2,hadoop3,hadoop4,hadoop5为slave)
[root@hadoop1 conf]# vim regionservershadoop2hadoop3hadoop4hadoop5
(3.3) 修改 backup-masters来指定备用的主节点
[root@mini1 conf]# vi backup-mastershadoop2
(3.4) 拷贝hbase到其他节点
[root@hadoop1 software]# pwd/home/tuzq/software[root@hadoop1 software]# scp -r hbase-1.3.1 root@hadoop2:$PWD[root@hadoop1 software]# scp -r hbase-1.3.1 root@hadoop3:$PWD[root@hadoop1 software]# scp -r hbase-1.3.1 root@hadoop4:$PWD[root@hadoop1 software]# scp -r hbase-1.3.1 root@hadoop5:$PWD
注意:修改这些机器上的storm的环境变量
(4) 将配置好的HBase拷贝到每一个节点并同步时间。
(可以用 ntpdate time.nist.gov 进行同步)
(5) 启动所有的hbase进程
首先要同步集群的时间
首先启动zk集群 ./zkServer.sh start启动hdfs集群 start-dfs.sh检验dfs是否启动了的命令是: hdfs dfsadmin -report 或者访问: http://hadoop2:50070/explorer.html#/ http://hadoop1:8088/cluster启动hbase,在主节点上运行:[root@hadoop1 bin]# pwd/home/tuzq/software/hbase-1.3.1/bin[root@hadoop1 bin]#./start-hbase.sh (这里不用在其它机器上执行命令)
停止hbase的方式是:
[root@hadoop1 bin]# ./stop-hbase.sh stopping hbase.....................[root@hadoop1 bin]# jps10864 ConsoleConsumer4624 DataNode112387 Jps109748 DFSZKFailoverController10680 ConsoleConsumer108618 ResourceManager3981 JournalNode108735 NodeManager4095 NameNode[root@hadoop1 bin]#
(6) 通过浏览器访问hbase管理页面
192.168.1.201:60010
http://hadoop1:16010/
Ip:16010
进入hadoop-ha集群中,查看数据发现已经多出了一个hbase的文件夹
(7) 为保证集群的可靠性,要启动多个HMaster
[root@hadoop1 software]# cd $HBASE_HOME/bin
[root@hadoop1 software]# ./hbase-daemon.sh start master (这个可以到hadoop2上启动)
- HBase集群搭建
- HBase集群搭建
- Hbase集群环境搭建
- hbase+zookeeper集群搭建
- HBASE集群搭建
- HBase的集群搭建
- HBase集群搭建
- Hbase集群搭建
- hbase的集群搭建
- HBase集群搭建
- HBase集群搭建
- HBASE集群搭建
- Hbase集群搭建
- 1003-HBase集群搭建
- hbase+zookeeper集群搭建
- Hbase集群搭建
- HBASE集群搭建
- 搭建hbase HA集群
- Jacoco+Eclipse简单操作
- WebAPP对NativeApp的优缺点
- 《软技能—代码之外的生存指南》读书笔记之一:职业
- java调用微信sdk图片选择上传保存到七牛
- 单KEY业务,数据库水平切分架构实践
- hbase集群搭建
- 测试
- 攻破JAVA NIO技术壁垒
- iOS 11:几点值得关注的 UIKit 改进
- DM368开发 -- uboot、内核移植(转)
- Windows7下安装与破解IntelliJ IDEA2017
- sql执行顺序
- iava用QQ邮箱发送邮件
- Tomcat的顶层结构及启动过程