hbase单机版安装
hbase单机版安装
1. hbase单机版安装
HBase的安装也有三种模式:单机模式、伪分布模式和完全分布式模式。
hbase依赖于Hadoop和Zookeeper。
这里安装的是单机版
1.1. 版本要求
jdk 1.8.0
hadoop: 2.7.7
下载地址:
http://mirrors.tuna.tsinghua.edu.cn/apache/hadoop/common/hadoop-2.7.7/hadoop-2.7.7.tar.gz
hbase:2.0.5
下载地址:
http://mirrors.tuna.tsinghua.edu.cn/apache/hbase/2.0.5/hbase-2.0.5-bin.tar.gz
2. jdk配置
[root@soft ~]# java -version
java version "1.7.0_45"
OpenJDK Runtime Environment (rhel-2.4.3.3.el6-x86_64 u45-b15)
OpenJDK 64-Bit Server VM (build 24.45-b08, mixed mode)
[root@soft ~]#
它位于/usr/lib/jvm
目前已安装1.7.0,但最好安装一下新版本:
首先检索包含java的列表
yum list java*
检索1.8的列表
yum list java-1.8*
安装1.8.0的所有文件
yum install java-1.8.0-openjdk* -y
[root@soft java]# java -version
openjdk version "1.8.0_212"
OpenJDK Runtime Environment (build
1.8.0_212-b04)
OpenJDK 64-Bit Server VM (build 25.212-b04,
mixed mode)
2.3、配置环境变量
vi /etc/profile
在文件尾部添加如下内容,保存退出
export JAVA_HOME=/usr/lib/jvm/java-1.8.0-openjdk-1.8.0.212.b04-0.el6_10.x86_64
export PATH=$JAVA_HOME/bin:$PATH
export
CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tool.jar
3.
hadoop安装
移动到/usr/myprogram下解压
# tar -xvf hadoop-2.7.7.tar.gz
3.1.
profile 文件更改
export HADOOP_HOME=/usr/myprogram/hadoop-2.7.7
export HADOOP_COMMON_LIB_NATIVE_DIR=$HADOOP_HOME/lib/native
export HADOOP_OPTS="-Djava.library.path=$HADOOP_HOME/lib"
export
PATH=.:${JAVA_HOME}/bin:${HADOOP_HOME}/bin:$PATH
输入source /etc/profile
查看是否设置成功
[root@soft ~]# hadoop version
Hadoop 2.7.7
Subversion Unknown -r c1aad84bd27cd79c3d1a7dd58202a8c3ee1ed3ac
Compiled by stevel on 2018-07-18T22:47Z
Compiled with protoc 2.5.0
From source with checksum
792e15d20b12c74bd6f19a1fb886490
This command was run using
/usr/myprogram/hadoop-2.7.7/share/hadoop/common/hadoop-common-2.7.7.jar
[root@soft ~]#
3.2.
修改配置文件
在修改配置文件之前,先在root目录下建立一些文件夹。
mkdir /root/hadoop
mkdir /root/hadoop/tmp
mkdir /root/hadoop/var
mkdir /root/hadoop/dfs
mkdir /root/hadoop/dfs/name
mkdir /root/hadoop/dfs/data
3.2.1.
修改core-site.xml
配置文件均位于hadoop主目录/etc/hadoop下
在<configuration>添加:
<configuration>
<property>
<name>hadoop.tmp.dir</name>
<value>/root/hadoop/tmp</value>
<description>Abase for other temporary directories.</description>
</property>
<property>
<name>fs.default.name</name>
<value>hdfs://soft:9000</value>
</property>
</configuration>
3.2.2.
修改 hadoop-env.sh
export JAVA_HOME=/usr/java/ jdk1.8.0_144
3.2.3.
修改 hdfs-site.xml
在<configuration>添加:
<configuration>
<property>
<name>dfs.name.dir</name>
<value>/root/hadoop/dfs/name</value>
<description>Path on the
local filesystem where theNameNode stores the namespace and transactions logs
persistently.</description>
</property>
<property>
<name>dfs.data.dir</name>
<value>/root/hadoop/dfs/data</value>
<description>Comma
separated list of paths on the localfilesystem of a DataNode where it should
store its blocks.</description>
</property>
<property>
<name>dfs.replication</name>
<value>1</value>
</property>
</configuration>
3.2.4.
修改mapred-site.xml
<property>
<name>mapred.local.dir</name>
<value>/root/hadoop/var</value>
</property>
<property>
<name>mapreduce.framework.name</name>
<value>yarn</value>
</property>
到此 Hadoop 的单机模式的配置就完成了。
3.3.
hadoop启动
第一次启动Hadoop需要初始化,切换到 /home/hadoop/bin目录下输入
hadoop namenode -format
初始化成功后,可以在/root/hadoop/dfs/name 目录下看见新增了一个current 目录以及一些文件。
[root@soft current]# ls
fsimage_0000000000000000000 fsimage_0000000000000000000.md5 seen_txid
VERSION
切换到/home/hadoop/hadoop3.1.0/sbin目录,启动HDFS
输入:
start-dfs.sh
start-yarn.sh
输入jps:出现以下信息,配置完成
[root@soft sbin]# jps
4898 Jps
4804 NodeManager
3061 DataNode
3945 NameNode
4588 ResourceManager
4383 SecondaryNameNode
当然,也可以看一下它的web界面:
http://192.168.199.129:8088/cluster
管理界面:http://localhost:8088
NameNode界面:http://localhost:50070
HDFS NameNode界面:http://localhost:8042
3.4.
测试
在hdoop主目录下/usr/myprogram/hadoop-2.7.7
mkdir input
拷贝文件ab.txt,内容为一篇英文技术说明
执行
hadoop jar share/hadoop/mapreduce/hadoop-mapreduce-examples-2.7.7.jar
wordcount input output
在同目录下得到output目录:
[root@soft output]# ls
part-r-00000 _SUCCESS
验证成功
3.5.
问题
3.5.1.
问题1
Unable to obtain hostName
Hadoop在格式化HDFS的时候,通过hostname命令获取到的主机名是soft,然后在/etc/hosts文件中进行映射的时候,没有找到
在hosts文件中加上就好
192.168.199.129 localhost soft
3.5.2.
问题2
问题描述:
OpenJDK 64-Bit Server VM warning: If the
number of processors is expected to increase from one, then you should
configure the number of parallel GC threads appropriately using
-XX:ParallelGCThreads=N
问题处理:
在虚拟机的设置中,将处理器的处理器核心数量改成2,重新执行启动命令后,能够正常运行。若还是未能执行成功,可进一步将处理器数量也改成2.
实际中将核心数改为2后正常。
3.5.3.
问题2
util.NativeCodeLoader: Unable to load
native-hadoop library for your platform... using builtin-java classes where
applicable
实质是hadoop的问题,hadoop启动时报错。
需要升级包,具体见问题部分文档。
4.
hbase安装
解压tar-xvf
4.1.
环境配置
修改etc/profile文件
export
HBASE_HOME=/usr/myprogram/hbase-2.0.5/
export
PATH=.:${JAVA_HOME}/bin:${HADOOP_HOME}/bin:${HBASE_HOME}/bin:$PATH
source /etc/profile
查看hbase版本hbase version
[root@soft myprogram]# hbase -version
OpenJDK 64-Bit Server VM warning: If the
number of processors is expected to increase from one, then you should
configure the number of parallel GC threads appropriately using
-XX:ParallelGCThreads=N
openjdk version "1.8.0_212"
OpenJDK Runtime Environment (build
1.8.0_212-b04)
OpenJDK 64-Bit Server VM (build 25.212-b04,
mixed mode)
4.2.
修改配置文件
在 root目录下新建文件夹
mkdir /root/hbase
mkdir /root/hbase/tmp
mkdir /root/hbase/pids
4.2.1.
hbase-env.sh
[root@centos0 conf]# vi hbase-env.sh
编辑JAVA_HOME环境变量,改变路径到当前JAVA_HOME变量(一般不用设置,因为其它组件已经设置过):
export HBASE_MANAGES_ZK=true
说明:
Hbase依赖于zookeeper,所有的节点和客户端都必须能够访问zookeeper。
HBase的安装包里面有自带的ZooKeeper,HBASE_MANAGES_ZK环境变量用来设置是使用HBase默认自带的
Zookeeper还是使用独立的ZooKeeper。
HBASE_MANAGES_ZK为 false 时使用独立的.
HBASE_MANAGES_ZK为 true 时表示使用默认自带的,让Hbase启动的时候同时也启动自带的ZooKeeper。
4.2.2.
hbase-site.xml
进入hbase-2.0.5/conf,编辑hbase-site.xml 文件,添加如下配置
<!-- 存储目录 -->
<property>
<name>hbase.rootdir</name>
<value>hdfs://soft:9000/hbase</value>
</property>
<!-- zookeeper 集群配置。如果是集群,则添加其它的主机地址 -->
<property>
<name>hbase.zookeeper.quorum</name>
<value>soft</value>
</property>
<property>
<name>hbase.tmp.dir</name>
<value>/root/hbase/tmp</value>
</property>
4.3.
启动hbase
/bin start-hbase.sh
启动后使用jps命令
[root@soft tmp]# jps
79029 SecondaryNameNode
80103 Main
78726 NameNode
79737 HMaster
78856 DataNode
79194 ResourceManager
80236 Jps
79295 NodeManager
进入操作语句执行界面HBASE shell
[root@soft bin]# hbase shell
HBase Shell
Use "help" to get list of
supported commands.
Use "exit" to quit this
interactive shell.
For Reference, please visit:
http://hbase.apache.org/2.0/book.html#shell
Version 2.0.5,
r76458dd074df17520ad451ded198cd832138e929, Mon Mar 18 00:41:49 UTC 2019
Took 0.0056 seconds
hbase(main):001:0> status
1 active master, 0 backup masters, 1
servers, 0 dead, 2.0000 average load
Took 2.9875 seconds
hbase(main):002:0> list
TABLE
0 row(s)
Took 0.2180 seconds
=> []
hbase(main):003:0> list
TABLE
0 row(s)
Took 0.0140 seconds
=> []
hbase(main):004:0>
4.4.
问题
4.4.1.
jar包重复
SLF4J: Class path contains multiple SLF4J
bindings.
SLF4J: Found binding in [jar:file:/home/hbase/lib/slf4j-log4j12-1.7.25.jar!/org/slf4j/impl/StaticLoggerBinder.class]
SLF4J: Found binding in
[jar:file:/home/hadoop3.1.0/share/hadoop/common/lib/slf4j-log4j12-1.7.25.jar!/org/slf4j/impl/StaticLoggerBinder.class]
SLF4J: See http://www.slf4j.org/codes.html#multiple_bindings
for an explanation.
SLF4J: Actual binding is of type
[org.slf4j.impl.Log4jLoggerFactory]
发现这两个jar重复,移走/删除其中一个即可
[root@soft lib]# mv
slf4j-log4j12-1.7.25.jar /home
4.4.2.
vm环境
OpenJDK 64-Bit Server VM warning: If the
number of processors is expected to increase from one, then you should
configure the number of parallel GC threads appropriately using
-XX:ParallelGCThreads=N
可以运行,估计在运算量加大到需要扩充到更多cpu时会出问题,不过这是测试环境,不需要处理。
4.4.3.
问题3
util.NativeCodeLoader: Unable to load
native-hadoop library for your platform... using builtin-java classes where
applicable
实质是hadoop的问题,hadoop启动时报错。
具体升级过程见问题文档部分。
在升级后仍无法正常运行,关闭hadoop相关进程,重新格式化hadoop,启动hadoop,启动hbase后正常。
hbase单机版安装的更多相关文章
- 【HBase】HBase 单机版安装及使用
HBase介绍 HBase是一个分布式的.面向列的开源数据库,该技术来源于 Fay Chang 所撰写的Google论文“Bigtable:一个结构化数据的分布式存储系统”.就像Bigtable利用了 ...
- hbase单机版安装+phoneix SQL on hbase 单节点安装
hbase 单机安装部署及phoneix 单机安装 Hbase 下载 (需先配置jdk) https://www.apache.org/dyn/closer.lua/hbase/2.0.1/hbase ...
- hbase 单机版安装
1.安装jdk参见http://www.cnblogs.com/lvlv/p/4337863.html 安装路径:/usr/java/jdk1.7.0_79 2.下载hbase http://mi ...
- Hbase数据库安装部署
Hbase单机版安装 hbase介绍 HBase – Hadoop Database是一个分布式的.面向列的开源数据库,该技术来源于Chang et al所撰写的Google论文"Bigta ...
- Hbase的安装(hadoop-2.6.0,hbase1.0)
Hbase的安装相对很简单啊...只要你装了Hadoop 装Hbase就是分分钟的事 如果要装hadoop集群的话 hadoop分类的集群安装好了,如果已经装好单机版~ 那就再配置如下就好~ 一.vi ...
- Hadoop、Zookeeper、Hbase分布式安装教程
参考: Hadoop安装教程_伪分布式配置_CentOS6.4/Hadoop2.6.0 Hadoop集群安装配置教程_Hadoop2.6.0_Ubuntu/CentOS ZooKeeper-3.3 ...
- Hbase的安装测试工作
Hbase的安装测试工作: 安装:http://www.cnblogs.com/neverwinter/archive/2013/03/28/2985798.html 测试:http://www.cn ...
- HBase 的安装与配置
实验简介 本次实验学习和了解 HBase 在不同模式下的配置和安装,以及 HBase 后续的启动和停止等. 一.实验环境说明 1. 环境登录 无需密码自动登录,系统用户名shiyanlou,密码shi ...
- HBase的安装与使用
1.安装 由于还是学习阶段,所以没有在生产环境练习,就在本地建了个虚拟机进行HBase的安装. 下载地址http://www.apache.org/dyn/closer.cgi/hbase/,选择一个 ...
随机推荐
- vue 获得当前无素并做相应处理
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...
- python中写入txt文件需要换行,以及\r 和\n
在Python中,用open()函数打开一个txt文件,写入一行数据之后需要一个换行 如果直接用 f.write(’\n’)只会在后面打印一个字符串’\n’,而不是换行’需要用 f.write(’\r ...
- IQueryable、IEnumberable 、IList与List区别
IEnumerable:使用的是LINQ to Object方式,它会将AsEnumerable()时对应的所有记录都先加载到内存,然后在此基础上再执行后来的Query IQeurable(IQuer ...
- js-秒数转为XX时XX分XX秒(用于计算剩余时间或倒计时)
export default { data() { return { hours: null, minute: null, second: null } }, methods: { // 秒数 转为 ...
- Django 生成数据库表时的报错TypeError: __init__() missing 1 required positional argument: 'on_delete'
原因及解决办法: https://www.cnblogs.com/phyger/p/8035253.html
- BZOJ-1563-郁闷的出纳员(权值线段树)
偏移量要考虑清楚. #include <bits/stdc++.h> using namespace std; const int N=4e5+10; const int BASE=1e5 ...
- Spring Boot 操作 Excel
Excel 在日常操作中经常使用到,Spring Boot 中使用 POI 操作 Excel 本项目源码 github 下载 1 新建 Spring Boot Maven 示例工程项目 注意:本示例是 ...
- FULL OUTER JOIN
FULL OUTER JOIN 关键字只要左表(table1)和右表(table2)其中一个表中存在匹配,则返回行. SELECT Web.name, access.count, access.dat ...
- VMware安装EVE
众所周知,EVE是一个非常强大的仿真环境,能给我们学习带来很大的帮助,这里主要简单记录一下安装在VMware下安装EVE的过程. 1.准备: 我安装的VMware是WORKSTATION 12 PRO ...
- pikachu-xx型注入
一 xx型注入,一脸懵x,管他什么型注入,先在输入框里随便输入个字符a试试 我们可以发现该传输方式为get型传输,传输的参数为name=a&submit=查询 二 测试使其闭合的符号 加一个单 ...