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单机版安装的更多相关文章

  1. 【HBase】HBase 单机版安装及使用

    HBase介绍 HBase是一个分布式的.面向列的开源数据库,该技术来源于 Fay Chang 所撰写的Google论文“Bigtable:一个结构化数据的分布式存储系统”.就像Bigtable利用了 ...

  2. hbase单机版安装+phoneix SQL on hbase 单节点安装

    hbase 单机安装部署及phoneix 单机安装 Hbase 下载 (需先配置jdk) https://www.apache.org/dyn/closer.lua/hbase/2.0.1/hbase ...

  3. hbase 单机版安装

    1.安装jdk参见http://www.cnblogs.com/lvlv/p/4337863.html 安装路径:/usr/java/jdk1.7.0_79 2.下载hbase   http://mi ...

  4. Hbase数据库安装部署

    Hbase单机版安装 hbase介绍 HBase – Hadoop Database是一个分布式的.面向列的开源数据库,该技术来源于Chang et al所撰写的Google论文"Bigta ...

  5. Hbase的安装(hadoop-2.6.0,hbase1.0)

    Hbase的安装相对很简单啊...只要你装了Hadoop 装Hbase就是分分钟的事 如果要装hadoop集群的话 hadoop分类的集群安装好了,如果已经装好单机版~ 那就再配置如下就好~ 一.vi ...

  6. Hadoop、Zookeeper、Hbase分布式安装教程

    参考: Hadoop安装教程_伪分布式配置_CentOS6.4/Hadoop2.6.0   Hadoop集群安装配置教程_Hadoop2.6.0_Ubuntu/CentOS ZooKeeper-3.3 ...

  7. Hbase的安装测试工作

    Hbase的安装测试工作: 安装:http://www.cnblogs.com/neverwinter/archive/2013/03/28/2985798.html 测试:http://www.cn ...

  8. HBase 的安装与配置

    实验简介 本次实验学习和了解 HBase 在不同模式下的配置和安装,以及 HBase 后续的启动和停止等. 一.实验环境说明 1. 环境登录 无需密码自动登录,系统用户名shiyanlou,密码shi ...

  9. HBase的安装与使用

    1.安装 由于还是学习阶段,所以没有在生产环境练习,就在本地建了个虚拟机进行HBase的安装. 下载地址http://www.apache.org/dyn/closer.cgi/hbase/,选择一个 ...

随机推荐

  1. vue 获得当前无素并做相应处理

    <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...

  2. python中写入txt文件需要换行,以及\r 和\n

    在Python中,用open()函数打开一个txt文件,写入一行数据之后需要一个换行 如果直接用 f.write(’\n’)只会在后面打印一个字符串’\n’,而不是换行’需要用 f.write(’\r ...

  3. IQueryable、IEnumberable 、IList与List区别

    IEnumerable:使用的是LINQ to Object方式,它会将AsEnumerable()时对应的所有记录都先加载到内存,然后在此基础上再执行后来的Query IQeurable(IQuer ...

  4. js-秒数转为XX时XX分XX秒(用于计算剩余时间或倒计时)

    export default { data() { return { hours: null, minute: null, second: null } }, methods: { // 秒数 转为 ...

  5. Django 生成数据库表时的报错TypeError: __init__() missing 1 required positional argument: 'on_delete'

    原因及解决办法: https://www.cnblogs.com/phyger/p/8035253.html

  6. BZOJ-1563-郁闷的出纳员(权值线段树)

    偏移量要考虑清楚. #include <bits/stdc++.h> using namespace std; const int N=4e5+10; const int BASE=1e5 ...

  7. Spring Boot 操作 Excel

    Excel 在日常操作中经常使用到,Spring Boot 中使用 POI 操作 Excel 本项目源码 github 下载 1 新建 Spring Boot Maven 示例工程项目 注意:本示例是 ...

  8. FULL OUTER JOIN

    FULL OUTER JOIN 关键字只要左表(table1)和右表(table2)其中一个表中存在匹配,则返回行. SELECT Web.name, access.count, access.dat ...

  9. VMware安装EVE

    众所周知,EVE是一个非常强大的仿真环境,能给我们学习带来很大的帮助,这里主要简单记录一下安装在VMware下安装EVE的过程. 1.准备: 我安装的VMware是WORKSTATION 12 PRO ...

  10. pikachu-xx型注入

    一 xx型注入,一脸懵x,管他什么型注入,先在输入框里随便输入个字符a试试 我们可以发现该传输方式为get型传输,传输的参数为name=a&submit=查询 二 测试使其闭合的符号 加一个单 ...