hadoop搭建之HBase安装
本文搭建环境:
centos6.9
jdk1.8.0_201
hadoop-2.7.2
本文搭建HBase环境
hbase-1.2.4
zookeeper-3.4.9
1、下载安装包
hbase-1.2.4
zookeeper-3.4.9
ZooKeeper是一个分布式的,开放源码的分布式应用程序协调服务,是Google的Chubby一个开源的实现,是Hadoop和Hbase的重要组件
ZooKeeper相当于hadoop中yarn,但是它的单独安装
2、将下载好的安装包(个人使用WinSCP)导入opt下的software目录下
3、解压ZooKeeper,并重命名为 zookeeper
tar -zvxf /opt/software/zookeeper-3.4.9.tar.gz -C /opt/modules/
4、在hadoop安装目录下新建zookeeper/data目录,在data目录下新建myid文件,输入一个数字(c1 为 1,c2 为 2,c2 为 3【c2,c3为复制之后的文件,见第6步】)
5、修改配置文件 zoo.cfg
zoo.cfg是没有的,需要将文件目录下:opt/modules/zookeeper/conf/zoo_sample.cfg
复制并且改名为zoo.cfg
或使用命令:cp zoo_sample.cfg zoo.cfg
找到:dataDir=/tmp/zookeeper 将其删除 将以下信息复制进去:dataDir为第4步新建的文件目录,c1,c2,c3为节点 dataDir=/opt/madules/hadoop/zookeeper/data server.1=c1:2888:3888 server.2=c2:2888:3888 server.3=c3:2888:3888
6、使用 scp 命令进行远程复制
主目录下,qiqi为我的主机名 scp -r /opt/modules/zooKeeper/ qiqi@c2:/opt/modules/ scp -r /opt/modules/zooKeeper/ qiqi@c3:/opt/modules/
7、启动 ZooKeeper 集群,在 ZooKeeper 集群的每个结点上,执行启动 ZooKeeper 服务的脚本
切换到/opt/modules目录下 zookeeper/bin/zkServer.sh start
(1) 如果启动报类似异常:QuorumCnxManager@384] - Cannot open channel to 2 at election address slave-02/192.168.0.178:3888 是可以忽略的,因为该服务启动时会尝试连接所有节点,而其他节点尚未启动。通过后面部分可以看到,集群在选出一个 Leader 后,最后稳定 了。其他结点可能也出现类似问题,属于正常。
(2) 关闭防火墙。在 hadoop 集群环境(linux 系统)中最好关闭防火墙,不然会出现很多问题,例如 namenode 找不到 datanode 等。如果不关闭防火墙,客户端使用 API 操作 HDFS 以及 ZooKeeper,可能就会出现下面常见的两种异常:
a、使用 API 操作 HDFS 时会出现异常:java.net.NoRouteToHostException: No route to host
b、使用 API 操作 ZK 时会出现异常: org.apache.zookeeper.KeeperException$ConnectionLossException: KeeperErrorCode = ConnectionLoss for xxxx
(3) 使用 root 权限登陆后,输入关闭防火墙命令:
/etc/init.d/iptables stop $ service iptables stop
(4) 修改禁用 selinux: /etc/selinux/config 文件,设置"SELINUX=disabled"
8、HBase 集群安装配置,解压hbase-1.2.4,并重命名为 hbase
tar -zvxf /opt/software/hbase-1.2.4-bin.tar.gz -C /opt/madules/
9、配置环境变量(只在主节点里配)
export HBASE_HOME=/opt/modules/hbase export PATH=$HBASE_HOME/bin:$PATH
source /etc/profile 使之生效
建立hdfs缓存目录:
hadoop fs -mkdir hbase
10、配置hbase-env.sh
export HBASE_OPTS="-XX:+UseConcMarkSweepGC" export JAVA_HOME=/opt/modules/jdk1.8.0_201 export HBASE_CLASSPATH=/opt/madules/hadoop export HBASE_MANAGES_ZK=false
11、配置hbase-site.xml
<configuration> <property> // 节点修改 <name>hbase.rootdir</name> <value>hdfs://c1:9000/hbase</value> </property> <property> // 节点修改 <name>hbase.master</name> <value>c1</value> </property> <property> <name>hbase.cluster.distributed</name> <value>true</value> </property> <property> <name>hbase.zookeeper.property.clientPort</name> <value>2181</value> </property> <property> // 节点修改 <name>hbase.zookeeper.quorum</name> <value>c1,c2,c3</value> </property> <property> <name>zookeeper.session.timeout</name> <value>60000000</value> </property> <property> <name>dfs.support.append</name> <value>true</value> </property> // 节点修改 <property> <name>hbase.zookeeper.property.dataDir</name> <value>/opt/modules/hadoop/zookeeper/data</value> </property> </configuration>
11、更改 regionservers,删掉文件里的localhost,改为
c1 c2 c3
12、分发并同步安装包
scp -r /opt//modules/hbase c2:/opt//modules scp -r /opt//modules/hbase c3:/opt//modules
13、启动集群,主目录切换到/opt/modules/ 目录下
[qiqi@c1 modules] 1、启动 ZooKeeper(三个节点) zookeeper/bin/zkServer.sh start 2、启动 hadoop(主节点) hadoop/sbin/start-all.sh 3、启动 hbase(主节点) hbase/bin/start-hbase.sh
14、启动后,jps查看,master 上进程和 slave 进程列表
c1节点 4161 NodeManager #YARN进程 4545 HMaster # hbase 进程 3587 NameNode #HDFS进程 4759 Jps 3831 SecondaryNameNode # HDFS进程 4680 HRegionServer #HBase进程 3691 DataNode #HDFS进程 4046 ResourceManager # YARN 进程 3439 QuorumPeerMain # zookeeper 进程 c2、c3节点 3761 NodeManager 3980 Jps 3644 DataNode 3933 HRegionServer
15、进入 hbase shell 进行验证
[qiqi@c1 ~]$ hbase/bin/hbase shell 2015-07-20 00:42:11,725 WARN [main] util.NativeCodeLoader: Unable to loa d native-hadoop library for your platform... using builtin-java classes where ap plicable HBase Shell; enter 'help<RETURN>' for list of supported commands. Type "exit<RETURN>" to leave the HBase Shell Version 1.0.1.1, re1dbf4df30d214fca14908df71d038081577ea46, Sun May 17 1 2:34:26 PDT 2015 //hbase shell操作,list 查看表 hbase(main):001:0> list TABLE 0 row(s) in 1.6950 seconds => [] //status 查看服务器状态 hbase(main):002:0> status 1 active master, 0 backup masters, 3 servers, 0 dead, 0.6667 average load
16、查看是否启动
c1:50070
c1:8088 (查看hadoop)
低调大师中文资讯倾力打造互联网数据资讯、行业资源、电子商务、移动互联网、网络营销平台。
持续更新报道IT业界、互联网、市场资讯、驱动更新,是最及时权威的产业资讯及硬件资讯报道平台。
转载内容版权归作者及来源网站所有,本站原创内容转载请注明来源。
- 上一篇
阿里云MaxCompute 2019-1月刊
亲爱的开发者们,MaxCompute 2019.1月刊为您带来产品最新动态和丰富的产品技术内容,欢迎阅读。导读 【新视频】精选视频集锦全新上线 【新故事】精选案例集锦全面更新 【新文档】2019年1月MaxCompute 重要产品文档更新推荐 【新干货】2019年1月MaxCompute 精选技术文章推荐 【1月重要活动回顾】 【2月重要活动预告】 【新视频】MaxCompute 精彩视频集锦页面全新上线,查看详情>>> 精选MaxCompute 产品、技术、最佳实践等视频汇集而成,帮您全面了解MaxCompute功能介绍、操作指导、问题排查及最佳实践。【新故事】MaxCompute案例集锦全面更新,查看详情>>> MaxCompute在高德大数据上的应用基于MaxCompute的媒体大数据开放平台建设基于Max
- 下一篇
是时候放弃 Spark Streaming, 转向 Structured Streaming 了
正如在之前的那篇文章中 Spark Streaming 设计原理 中说到 Spark 团队之后对 Spark Streaming 的维护可能越来越少,Spark 2.4 版本的 Release Note 里面果然一个 Spark Streaming 相关的 ticket 都没有。相比之下,Structured Streaming 有将近十个 ticket 说明。所以各位同学,是时候舍弃 Spark Streaming 转向 Structured Streaming 了,当然理由并不止于此。我们这篇文章就来分析一下 Spark Streaming 的不足,以及Structured Streaming 的设计初衷和思想是怎么样的。文章主要参考今年(2018 年)sigmod 上面的这篇论文: *Structured Streaming
相关文章
文章评论
共有0条评论来说两句吧...
文章二维码
点击排行
推荐阅读
最新文章
- CentOS关闭SELinux安全模块
- SpringBoot2初体验,简单认识spring boot2并且搭建基础工程
- SpringBoot2整合Redis,开启缓存,提高访问速度
- MySQL8.0.19开启GTID主从同步CentOS8
- Hadoop3单机部署,实现最简伪集群
- 设置Eclipse缩进为4个空格,增强代码规范
- CentOS7,CentOS8安装Elasticsearch6.8.6
- Linux系统CentOS6、CentOS7手动修改IP地址
- CentOS6,7,8上安装Nginx,支持https2.0的开启
- Windows10,CentOS7,CentOS8安装MongoDB4.0.16