HBase 学习之路(三)—— HBase基本环境搭建
一、安装前置条件说明
1.1 JDK版本说明
HBase 需要依赖JDK环境,同时HBase 2.0+ 以上版本不再支持JDK 1.7 ,需要安装JDK 1.8+ 。JDK 安装方式见本仓库:
1.2 Standalone模式和伪集群模式的区别
- 在
Standalone模式下,所有守护进程都运行在一个jvm进程/实例中; - 在伪分布模式下,HBase仍然在单个主机上运行,但是每个守护进程(HMaster,HRegionServer 和 ZooKeeper)则分别作为一个单独的进程运行。
说明:两种模式任选其一进行部署即可,对于开发测试来说区别不大。
二、Standalone 模式
2.1 下载并解压
从官方网站下载所需要版本的二进制安装包,并进行解压:
# tar -zxvf hbase-2.1.4-bin.tar.gz
2.2 配置环境变量
# vim /etc/profile
添加环境变量:
export HBASE_HOME=/usr/app/hbase-2.1.4
export PATH=$HBASE_HOME/bin:$PATH
使得配置的环境变量生效:
# source /etc/profile
2.3 进行HBase相关配置
修改安装目录下的conf/hbase-env.sh,指定JDK的安装路径:
# The java implementation to use. Java 1.8+ required.
export JAVA_HOME=/usr/java/jdk1.8.0_201
修改安装目录下的conf/hbase-site.xml,增加如下配置:
<configuration>
<property>
<name>hbase.rootdir</name>
<value>file:///home/hbase/rootdir</value>
</property>
<property>
<name>hbase.zookeeper.property.dataDir</name>
<value>/home/zookeeper/dataDir</value>
</property>
<property>
<name>hbase.unsafe.stream.capability.enforce</name>
<value>false</value>
</property>
</configuration>
hbase.rootdir: 配置hbase数据的存储路径;
hbase.zookeeper.property.dataDir: 配置zookeeper数据的存储路径;
hbase.unsafe.stream.capability.enforce: 使用本地文件系统存储,不使用HDFS的情况下需要禁用此配置,设置为false。
2.4 启动HBase
由于已经将HBase的bin目录配置到环境变量,直接使用以下命令启动:
# start-hbase.sh
2.5 验证启动是否成功
验证方式一 :使用jps命令查看HMaster进程是否启动。
[root@hadoop001 hbase-2.1.4]# jps
16336 Jps
15500 HMaster
验证方式二 :访问HBaseWeb UI 页面,默认端口为16010 。
三、伪集群模式安装(Pseudo-Distributed)
3.1 Hadoop单机伪集群安装
这里我们采用HDFS作为HBase的存储方案,需要预先安装Hadoop。Hadoop的安装方式单独整理至:
3.2 Hbase版本选择
HBase的版本必须要与Hadoop的版本兼容,不然会出现各种Jar包冲突。这里我Hadoop安装的版本为hadoop-2.6.0-cdh5.15.2,为保持版本一致,选择的HBase版本为hbase-1.2.0-cdh5.15.2 。所有软件版本如下:
- Hadoop 版本: hadoop-2.6.0-cdh5.15.2
- HBase 版本: hbase-1.2.0-cdh5.15.2
- JDK 版本:JDK 1.8
3.3 软件下载解压
下载后进行解压,下载地址:http://archive.cloudera.com/cdh5/cdh/5/
# tar -zxvf hbase-1.2.0-cdh5.15.2.tar.gz
3.4 配置环境变量
# vim /etc/profile
添加环境变量:
export HBASE_HOME=/usr/app/hbase-1.2.0-cdh5.15.2
export PATH=$HBASE_HOME/bin:$PATH
使得配置的环境变量生效:
# source /etc/profile
3.5 进行HBase相关配置
1.修改安装目录下的conf/hbase-env.sh,指定JDK的安装路径:
# The java implementation to use. Java 1.7+ required.
export JAVA_HOME=/usr/java/jdk1.8.0_201
2.修改安装目录下的conf/hbase-site.xml,增加如下配置(hadoop001为主机名):
<configuration>
<!--指定 HBase 以分布式模式运行-->
<property>
<name>hbase.cluster.distributed</name>
<value>true</value>
</property>
<!--指定 HBase 数据存储路径为HDFS上的hbase目录,hbase目录不需要预先创建,程序会自动创建-->
<property>
<name>hbase.rootdir</name>
<value>hdfs://hadoop001:8020/hbase</value>
</property>
<!--指定 zookeeper 数据的存储位置-->
<property>
<name>hbase.zookeeper.property.dataDir</name>
<value>/home/zookeeper/dataDir</value>
</property>
</configuration>
3.修改安装目录下的conf/regionservers,指定region servers的地址,修改后其内容如下:
hadoop001
3.6 启动
# bin/start-hbase.sh
3.7 验证启动是否成功
验证方式一 :使用jps命令查看进程。其中HMaster,HRegionServer是HBase的进程,HQuorumPeer是HBase内置的Zookeeper的进程,其余的为HDFS和YARN的进程。
[root@hadoop001 conf]# jps
28688 NodeManager
25824 GradleDaemon
10177 Jps
22083 HRegionServer
20534 DataNode
20807 SecondaryNameNode
18744 Main
20411 NameNode
21851 HQuorumPeer
28573 ResourceManager
21933 HMaster
验证方式二 :访问HBase Web UI 界面,需要注意的是1.2 版本的HBase的访问端口为60010
更多大数据系列文章可以参见个人 GitHub 开源项目: 程序员大数据入门指南
HBase 学习之路(三)—— HBase基本环境搭建的更多相关文章
- C++学习之路——1.linux下环境搭建
学习之路,可说各有各的看法和方法.对于我来说,完全是兴趣一下子来了,脑壳发热吧.就想有个干净的环境,只想着与程序有关的东西练一练. 目前想学习C++,可是打开VC++6,再安了VS2010.VS201 ...
- maven学习日记(三)-------开发环境搭建(springmvc+hibernate4)各种maven错误汇总
1.maven编码 gbk 的不可映射字符 解决这个问题的思路: 在maven的编译插件中声明正确的字符集编码编码——编译使用的字符集编码与代码文件使用的字符集编码一致!! 安装系统之后,一般中文系统 ...
- 学习之路三十九:新手学习 - Windows API
来到了新公司,一开始就要做个程序去获取另外一个程序里的数据,哇,挑战性很大. 经过两周的学习,终于搞定,主要还是对Windows API有了更多的了解. 文中所有的消息常量,API,结构体都整理出来了 ...
- 【SpringCloud之pigx框架学习之路 】2.部署环境
[SpringCloud之pigx框架学习之路 ]1.基础环境安装 [SpringCloud之pigx框架学习之路 ]2.部署环境 1.下载代码 git clone https://git.pig4c ...
- 【SpringCloud之pigx框架学习之路 】1.基础环境安装
[SpringCloud之pigx框架学习之路 ]1.基础环境安装 [SpringCloud之pigx框架学习之路 ]2.部署环境 1.Cmder.exe安装 (1) windows常用命令行工具 下 ...
- 【菜鸟学习Linux】-第三章- Linux环境搭建-使用VMware9安装Ubuntu 12.04系统
上一步,我们安装了VMware9虚拟机,现在我们就是用它来安装Ubuntu12.04系统,至于Ubuntu是什么,我就不废话了,大家google一下,比我讲的清楚,好了,开始干活! Ubuntu官网下 ...
- Linux学习之CentOS(一)--CentOS6.4环境搭建
Linux学习之CentOS(一)--CentOS6.4环境搭建http://www.cnblogs.com/xiaoluo501395377/archive/2013/03/31/CentOs.ht ...
- Java web与web gis学习笔记(一)——Tomcat环境搭建
系列链接: Java web与web gis学习笔记(一)--Tomcat环境搭建 Java web与web gis学习笔记(二)--百度地图API调用 JavaWeb和WebGIS学习笔记(三)-- ...
- Qt在Windows下的三种编程环境搭建
尊重作者,支持原创,如需转载,请附上原地址:http://blog.csdn.net/libaineu2004/article/details/17363165 从QT官网可以得知其支持的平台.编译器 ...
- Qt4.8在Windows下的三种编程环境搭建
Qt4.8在Windows下的三种编程环境搭建 Qt的版本是按照不同的图形系统来划分的,目前分为四个版本:Win32版,适用于Windows平台:X11版,适合于使用了X系统的各种Linux和Unix ...
随机推荐
- 在.net core 的webapi项目中将对象序列化成json
问题:vs2017 15.7.6创建一个基于.net core 2.1的webapi项目,默认生成的控制器继承自ControllerBase类 在此情况下无法使用Json()方法 将一个对象转成jso ...
- Codeforces #264 (Div. 2) D. Gargari and Permutations
Gargari got bored to play with the bishops and now, after solving the problem about them, he is tryi ...
- WPF图形/文字特别效果之一:交叉效果探讨(续)
原文:WPF图形/文字特别效果之一:交叉效果探讨(续) 在"WPF图形/文字特别效果之一:交叉效果探讨"(http://blog.csdn.net/johnsuna/archive ...
- MFC 窗口分割与通信
一.关于CSplitterWnd类我们在使用CuteFtp或者NetAnt等工具的时候,一般都会被其复杂的界面所吸引,在这些界面中窗口被分割为若干的区域,真正做到了窗口的任意分割. 那么我们自己如何创 ...
- Why I Choose Delphi Summary
Over the summer, there has been a number of blog posts on this topic, but I haven't seen a complete ...
- matlab 高阶(一) —— assignin与evalin
1. assignin assignin(ws, 'var', val) 将 val 值赋值给 ws 空间中的 var 变量,注意这里的变量,必须是 array 类型,而不可以是包含下标索引,如果在指 ...
- wpf 自定义窗口,最大化时覆盖任务栏解决方案
原文:wpf 自定义窗口,最大化时覆盖任务栏解决方案 相信很多人使用wpf时会选择自定义美观的窗口,因此会设置WindowStyle="None" 取消自带的标题栏.但这样使用 W ...
- JDBC学习笔记——事务、存储过程以及批量处理
1.事务 1.1.事务的基本概念和使 ...
- String关于BeanFactory与ApplicationContext的简单区别
1.创建的方式不同 ApplicationContext: ApplicationContext context = new ClassPathXmlApplicationContext(" ...
- install windows service
install windows serivce e.g @echo offecho ---------------------------------------------------------- ...