1、hadoop单机安装
参照官网
2、hbase单机安装
(参考:测试环境cent os )
参照官网,文件系统有本地和hdfs两种,本地安装的话,直接按照官网就可以了。如果底层使用hdfs,那么要先安装hadoop,然后在配置hadoop的地址到hbase。(两者分开安装要注意,hadoop中配置namenode时候要配置ip而不是localhost,否则hbase会访问不到),然后centos需要关闭防火墙(主要是ip限制之类的我不是很清楚,否则可以不关闭防火墙的情况下,配置ip可访问应该也可以的)。
防洪墙问题 /etc/init.d/iptables stop centos 6
1、测试环境
node
148、130、195(centos 6、ubuntu15.04、centos6)
jdk
jdk 1.7
hbase &hadoop
安装步骤
1、standalone模式
见官网
2、hadoop分布式安装
安装hadoop
参考:
http://hadoop.apache.org/docs/stable/hadoop-project-dist/hadoop-common/ClusterSetup.html
https://my.oschina.net/u/2548093/blog/834104 (测试环境搭建基本参照这个教程,亲测可以)
====
namenode 192.168.0.148
datanode 192.168.0.130,192.168.0.195
无密码登录脚本 nopss.sh
验证ssh syn.sh
配置文件参照如上连接:
cd $HADOOP_HOME
bin/hdfs namenode -format
./sbin/start-dfs.sh
注意
配置配置文件中的参数时注意采用file://这种格式
<name>hadoop.tmp.dir</name>
<value>file:///data01/hadoop_2_7/tmp</value>
如果启动成功:浏览器中输入http://localhost:50070/那么将登陆到namenode上
http://localhost:50030 MapReduce的Web页面
http://localhost:50070 HDFS的Web页面 localhost为namenode所在主机ip
配置文件参考
http://10120275.blog.51cto.com/10110275/1845383
查看namenode web-ui,检查datanode的日志,确保datanode是启动了的。
Common AFQ
ipv6防火墙配置 http://cnzhx.net/blog/centos-rhel-ipv6-ip6tables-firewall-configuration/
ipv4防火墙配置 http://blog.youkuaiyun.com/luka2008/article/details/40391451
yarn ui-外网无法访问问题 http://flyeagle.iteye.com/blog/2192302
hdfs无法写数据问题 (maybe datanode无法连接namenode)
http://stackoverflow.com/questions/36015864/hadoop-be-replicated-to-0-nodes-instead-of-minreplication-1-there-are-1/36310025
http://hunray.iteye.com/blog/1774628
端口问题:
1. 您运行的程序必须监听对外 IP 或者 0.0.0.0 而不是 127.0.0.1(localhost)
2. 如果有防火墙,需要打开 8080 端口
3. 如果中间有路由器,需要做端口映射
3、hbase分布式环境搭建
基本信息
环境: 148 (master) 130、195作为slaves
jdk 1.7
hbase版本 1.2.5
搭建过程
1、免密登录(如上,搭建hadoop的时候已经做了,脚本可重用)
2、主节点初始化
3、注意端口问题。(因为需要开启好多端口zk的端口,hbase端口,如果不清楚到底哪些端口,还是直接关闭firewall比较高,因为hbase包括通信,数据交互,心跳等会开启好多端口)
参考http://blog.youkuaiyun.com/u010638969/article/details/53257879
注意有些Linux(hosts文件) 127.0.1.1 localhost
主机名配置这块就搞了好久,保证主机名能够被dns解析(客户端):
1、在服务端配置ip主机名映射
2、在客户端也映射
http://www.aboutyun.com/thread-18336-1-1.html
192.168.0.148hbase1
(
master
,
regionserver
)
192.168.0.195hbase2
(
backupmaster,regionserver
)
192.168.0.130hbase3
(
regionserver
)
3、195为backupmaster
Create a new file in conf/ called backup-masters and add a newline to it with the hostname for node-b
需要配置的文件
hbase-env.cmd jdk
regionservers 集群信息
backup-masters 备份master
hbase-site.xml zk(使用hbase内置的zk)\ haddop
端口:2181 需要被各个节点访问,所以需要端口开放
1
)配置
hbase-env.sh
export
JAVA_HOME=/usr/java/jdk1.
7.0_80
export
HBASE_MANAGES_ZK=
false
HBASE_MANAGES_ZK=false
,表示启动的是独立的
zookeeper
。而配置成
true
则是
hbase
自带的
zookeeper
。(默认使用自带)
Centos firewall
setenforce0
/etc/init.d/iptables stop
chkconfig --level 35 iptables off
搭建完成
通过master节点的web-ui可以查看hbase各个节点的启动情况
http://192.168.0.148:16010/master-status#baseStats (ip请根据具体环境替换)
具体的出错信息请查看log中的异常信息。
搭建工程主要参考:
http://blog.youkuaiyun.com/u010638969/article/details/53257879 (大部分)
http://luchunli.blog.51cto.com/2368057/1682049 (部分)
http://hbase.apache.org/book.html#quickstart (只做对比)
4、hdfs的QJM部署
根据上面hadoop分布式部署方案描述,会出现namenode和resourcenamnager的单点问题,即这两个挂了,整个集群的hdfs或者mapreduce就会变得不可用。于是apache官网提供两种HA方案。QJM(通过zk实现)、NFS
参考:
http://blog.youkuaiyun.com/cuitaixiong/article/details/51578532?locationNum=5
http://eksliang.iteye.com/blog/2226986 (启动部分参考)
zk 3.3.6
1、必须要先启动journal node
2、在主节点namenode上运行hdfs namenode -format格式化
然后在另一个backupnamenode上运行hdfs namenode -bootstrapStandby来复制主节点上的目录文件
3、假如之前是non-ha转成HA模式的,需要hdfsnamenode -initializeSharedEdits来初始化日志节点目录
官网QJM的描述 (如果按照上面参考的网址无法成功部署的话,1、看官网;2、谷歌)
https://hadoop.apache.org/docs/r2.7.2/hadoop-project-dist/hadoop-hdfs/HDFSHighAvailabilityWithQJM.html
java开发环境
http://www.cnblogs.com/tony-tang/p/6472544.html
参考:
https://www.oschina.net/question/1422726_2136684
https://www.ibm.com/developerworks/cn/analytics/library/ba-cn-bigdata-hbase/index.html
http://chwshuang.iteye.com/blog/1881391
http://blog.youkuaiyun.com/zhu_xun/article/details/42077311
http://download.youkuaiyun.com/detail/lixuemei504/8741255
http://www.weiruoyu.cn/?p=530
http://yusi123.com/3092.html
http://www.itdadao.com/articles/c15a1241591p0.html
http://aperise.iteye.com/blog/2254491
hbase_zookeeper dump http://bit1129.iteye.com/blog/2201050
HBASE知识点
HTable的存储结构理解
即HTable按Row key自动排序,每个Row包含任意数量个Columns,Columns之间按Column key自动排序,每个Column包含任意数量个Values。理解该存储结构将有助于查询结果的迭代
HBASE6个概念
《Hbase实战》