Hadoop Database,是一个高可靠性、高性能、面向列、可伸缩、实时读写的分布式数据库
利用Hadoop HDFS作为其文件存储系统,利用Hadoop MapReduce来处理HBase中的海量数据
利用Zookeeper作为其分布式协同服务
主要用来存储非结构化和半结构化的松散数据(列存 NoSQL 数据库)
第二次以后启动集群:先启动,再zkServer.sh start
(默认已经启动?)start-dfs.sh
,再start-yarn.sh
,最后启动,再启动yarn-daemon.sh start resourcemanager
start-hbase.sh
前提
1、Hadoop集群正常运行
2、ZooKeeper集群正常运行
Hadoop集群基础配置
Hadoop伪分布式系统配置
VM安装Linux虚拟机环境
VM克隆Linux虚拟机集群配置
Hadoop集群全分布式搭建
ZooKeeper集群搭建
HA高可用集群搭建
YARN集群环境搭建
Hadoop集群上搭建Hive
增加1台裸机服务器:node005
同样先安装hadoop,再安装hbase
1、环境准备 hostname hosts iptables 网络
[root@node005 ~]# scp /etc/hosts root@node001:/etc/hosts
2、时间同步 时间服务器
开机启动服务!
[root@node005 ~]# yum install ntp -y
[root@node001 ~]# service ntpd start
[root@node005 ~]# ntpdate node001
3、免秘钥
主-主
主-从
[root@node005 ~]# ssh-keygen -t dsa -P '' -f ~/.ssh/id_dsa
[root@node005 ~]# ssh-copy-id -i ~/.ssh/id_dsa.pub root@node005
[root@node005 ~]# ssh-copy-id -i ~/.ssh/id_dsa.pub root@node001
……
[root@node005 ~]# ssh-copy-id -i ~/.ssh/id_dsa.pub root@node004
[root@node001 ~]# ssh-copy-id -i ~/.ssh/id_dsa.pub root@node005
4、jdk环境变量
5、解压 环境变量
export JAVA_HOME=/usr/java/jdk1.7.0_67
export HADOOP_HOME=/opt/hadoop-2.6.5
export HBASE_HOME=/opt/hbase-0.98.12.1-hadoop2
export PATH=$PATH:$JAVA_HOME/bin:$HADOOP_HOME/bin:$HADOOP_HOME/sbin:$HBASE_HOME/bin
ssh-copy-id 复制本地公钥命令详解 免密码登录远程主机 | Verne in GitHub
Hadoop2.0集群配置情况
主机名 | 机器ip | NN | NN2 | DN | ZK | ZKFC | JNN | RS | NM | Master | Backup-Master | RegionServer |
---|---|---|---|---|---|---|---|---|---|---|---|---|
node001 | 192.168.118.101/24 | * | * | * | * | |||||||
node002 | 192.168.118.102/24 | * | * | * | * | * | * | * | ||||
node003 | 192.168.118.103/24 | * | * | * | * | * | * | |||||
node004 | 192.168.118.104/24 | * | * | * | * | * | ||||||
node005 | 192.168.118.105/24 | * |
在node001上部署hbase
删除部署包中的 docs文件夹
配置regionservers ,主机名
配置backup-masters
配置hbase-env.sh
JAVA_HOME
HBASE_MANAGERS_ZK=false
配置hbase-site.xml
添加hdfs-site.xml到conf目录下
启动Hbase: start-hbase.sh
配置环境变量
所有节点都要配置,一个个的配置,原来各个配置就不一样
export HBASE_HOME=/opt/hbase-0.98.12.1-hadoop2
export PATH=$PATH:$JAVA_PATH/bin:……:$HBASE_HOME/bin
修改配置文件:conf/hbase-env.sh
export JAVA_HOME=/usr/java/jdk1.7.0_67
# Tell HBase whether it should manage it'sown instance of Zookeeper or not.
# 用自己的zookeeper集群
export HBASE_MANAGES_ZK=false
修改配置文件:conf/hbase-site.xml
hbase.rootdir
hdfs://mycluster:8020/hbase
hbase.cluster.distributed
true
hbase.zookeeper.quorum
node002,node003,node004
- hbase.rootdir:是region server的共享目录,用来持久化hbase
- mycluster是高可用配置的
的值dfs.nameservices
- mycluster是高可用配置的
- hbase.cluster.distributed :true是分布式模式
创建regionservers
node002
node003
node004
创建backup-masters
node005
拷贝$HADOOP_HOME/etc/hadoop/hdfs-site.xml
到$HBASE_HOME/conf
中
[root@node001 conf]# cp $HADOOP_HOME/etc/hadoop/hdfs-site.xml ./
配置文件:hive/conf
node001分发部署包
[root@node001 opt]# scp -r hbase-0.98.12.1-hadoop2/ root@node002:`pwd`/
[root@node001 opt]# scp -r hbase-0.98.12.1-hadoop2/ root@node003:`pwd`/
[root@node001 opt]# scp -r hbase-0.98.12.1-hadoop2/ root@node004:`pwd`/
[root@node001 opt]# scp -r hbase-0.98.12.1-hadoop2/ root@node005:`pwd`/
启动Hbase: start-hbase.sh
前提让node001
变成 active
状态
[root@node001 opt]# jps
1408 JournalNode
2904 HMaster
3325 Jps
2686 DFSZKFailoverController
1224 NameNode
[root@node002 opt]# jps
74687 DFSZKFailoverController
74397 HRegionServer
1294 JournalNode
1206 DataNode
75144 Jps
1503 QuorumPeerMain
1841 NodeManager
74806 NameNode
[root@node003 hadoop]# jps
1337 QuorumPeerMain
1154 DataNode
1699 ResourceManager
1472 NodeManager
12328 Jps
1208 JournalNode
12068 HRegionServer
[root@node004 opt]# jps
1151 DataNode
11393 HRegionServer
1545 ResourceManager
11652 Jps
1352 NodeManager
1256 QuorumPeerMain
[root@node005 conf]# jps
2067 HMaster
4009 Main
2210 Jps
浏览器:node001:60010
SLF4J: Class path contains multiple SLF4J bindings.
jar包重复了,去掉hbase对应的jar包;hadoop的jar包启动时需要,没有报错
hbase(main):001:0> list
TABLE
SLF4J: Class path contains multiple SLF4J bindings.
SLF4J: Found binding in [jar:file:/opt/hbase-0.98.12.1-hadoop2/lib/slf4j-log4j12-1.6.4.jar!/org/slf4j/impl/StaticLoggerBind
er.class]SLF4J: Found binding in [jar:file:/opt/hadoop-2.6.5/share/hadoop/common/lib/slf4j-log4j12-1.7.5.jar!/org/slf4j/impl/StaticL
oggerBinder.class]SLF4J: See http://www.slf4j.org/codes.html#multiple_bindings for an explanation.
0 row(s) in 2.0920 seconds
=> []
hbase(main):002:0> quit
[root@node005 ~]# mv /opt/hbase-0.98.12.1-hadoop2/lib/slf4j-log4j12-1.6.4.jar /opt/hbase-0.98.12.1-hadoop2/lib/slf4j-log4j1
2-1.6.4.jar_bak
高可用Hadoop平台-HBase集群搭建