Hbase的伪分布式安装

Posted SlowTech

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Hbase的伪分布式安装相关的知识,希望对你有一定的参考价值。

Hbase安装模式介绍

单机模式
1> Hbase不使用HDFS,仅使用本地文件系统
2> ZooKeeper与Hbase运行在同一个JVM中

分布式模式
– 伪分布式模式
1> 所有进程运行在同一个节点上,不同进程运行在不同的JVM当中
2> 比较适合实验测试
– 完全分布式模式
1> 进程运行在多个服务器集群中
2> 分布式依赖于HDFS系统,因此布署Hbase之前一定要有一个正常工作的HDFS集群

 

Linux环境准备

关闭防火墙和SELinux

# service iptables stop

# chkconfig iptables off

# vim /etc/sysconfig/selinux

SELINUX=disabled

 

配置主机名及主机名绑定

# vim /etc/sysconfig/network

NETWORKING=yes
HOSTNAME=hbase

# vim /etc/hosts

192.168.244.30 hbase

 

SSH免密码登录

# ssh-keygen

一直按Enter键

# ssh-copy-id -i /root/.ssh/id_rsa.pub root@192.168.244.30

 

安装jdk

# tar xvf jdk-7u79-linux-x64.tar.gz -C /usr/local/

# vim /etc/profile

export JAVA_HOME=/usr/local/jdk1.7.0_79
export PATH=$JAVA_HOME/bin:$PATH
export CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar

# source /etc/profile

 

Hadoop的安装部署

下载地址:http://hadoop.apache.org/releases.html

在这里,选择2.5.2版本

# wget http://mirror.bit.edu.cn/apache/hadoop/common/hadoop-2.5.2/hadoop-2.5.2.tar.gz

# tar xvf hadoop-2.5.2.tar.gz -C /usr/local/

# cd /usr/local/hadoop-2.5.2/

# vim etc/hadoop/hadoop-env.sh

export JAVA_HOME=/usr/local/jdk1.7.0_79

 

配置HDFS

# mkdir /usr/local/hadoop-2.5.2/data/

# vim etc/hadoop/core-site.xml

<configuration>
    <property>
        <name>fs.defaultFS</name>
        <value>hdfs://192.168.244.30:8020</value>
    </property>
    <property>
        <name>hadoop.tmp.dir</name>
        <value>/usr/local/hadoop-2.5.2/data/tmp</value>
    </property>
</configuration>

 

# vim etc/hadoop/hdfs-site.xml

<configuration>
    <property>
        <name>dfs.replication</name>
        <value>1</value>
    </property>
</configuration>

 

配置YARN

# mv etc/hadoop/mapred-site.xml.template etc/hadoop/mapred-site.xml

# vim etc/hadoop/mapred-site.xml

<configuration>
    <property>
        <name>mapreduce.framework.name</name>
        <value>yarn</value>
    </property>
</configuration>

 

# vim etc/hadoop/yarn-site.xml

<configuration>
    <property>
        <name>yarn.nodemanager.aux-services</name>
        <value>mapreduce_shuffle</value>
    </property>
</configuration>

 

启动HDFS

初始化文件系统

# bin/hdfs namenode -format

...
16/09/25 20:33:02 INFO common.Storage: Storage directory /tmp/hadoop-root/dfs/name has been successfully formatted.
...

输出上述信息即代表文件系统初始化成功

 

启动NameNod和DataNode进程

# sbin/start-dfs.sh

16/10/09 19:35:03 WARN util.NativeCodeLoader: Unable to load native-hadoop library for your platform... using builtin-java classes wh
ere applicableStarting namenodes on [hbase]
The authenticity of host \'hbase (192.168.244.30)\' can\'t be established.
RSA key fingerprint is 1a:12:f5:e3:5d:e1:2c:5c:8c:56:52:ba:42:1c:ac:ba.
Are you sure you want to continue connecting (yes/no)? yes
hbase: Warning: Permanently added \'hbase\' (RSA) to the list of known hosts.
hbase: starting namenode, logging to /usr/local/hadoop-2.5.2/logs/hadoop-root-namenode-hbase.out
The authenticity of host \'localhost (::1)\' can\'t be established.
RSA key fingerprint is 1a:12:f5:e3:5d:e1:2c:5c:8c:56:52:ba:42:1c:ac:ba.
Are you sure you want to continue connecting (yes/no)? yes
localhost: Warning: Permanently added \'localhost\' (RSA) to the list of known hosts.
localhost: starting datanode, logging to /usr/local/hadoop-2.5.2/logs/hadoop-root-datanode-hbase.out
Starting secondary namenodes [0.0.0.0]
The authenticity of host \'0.0.0.0 (0.0.0.0)\' can\'t be established.
RSA key fingerprint is 1a:12:f5:e3:5d:e1:2c:5c:8c:56:52:ba:42:1c:ac:ba.
Are you sure you want to continue connecting (yes/no)? yes
0.0.0.0: Warning: Permanently added \'0.0.0.0\' (RSA) to the list of known hosts.
0.0.0.0: starting secondarynamenode, logging to /usr/local/hadoop-2.5.2/logs/hadoop-root-secondarynamenode-hbase.out
16/10/09 19:35:32 WARN util.NativeCodeLoader: Unable to load native-hadoop library for your platform... using builtin-java classes wh
ere applicable

 

启动YARN

# sbin/start-yarn.sh 

starting yarn daemons
starting resourcemanager, logging to /usr/local/hadoop-2.5.2/logs/yarn-root-resourcemanager-hbase.out
localhost: starting nodemanager, logging to /usr/local/hadoop-2.5.2/logs/yarn-root-nodemanager-hbase.out

 

通过jps查看各进程是否启动成功

# jps

2421 NodeManager
2339 ResourceManager
1924 NameNode
2029 DataNode
2170 SecondaryNameNode
2721 Jps

 

也可通过访问http://192.168.244.30:50070/查看hdfs是否启动成功

 

Hbase的安装部署

下载地址:http://mirror.bit.edu.cn/apache/hbase/1.2.3/hbase-1.2.3-bin.tar.gz

在这里,下载的是1.2.3版本

关于hbase和hadoop的版本对应信息,可参考官档的说明

http://hbase.apache.org/book/configuration.html#basic.prerequisites

# wget http://mirror.bit.edu.cn/apache/hbase/1.2.3/hbase-1.2.3-bin.tar.gz

# tar xvf hbase-1.2.3-bin.tar.gz -C /usr/local/

# cd /usr/local/hbase-1.2.3/

# vim conf/hbase-env.sh

export JAVA_HOME=/usr/local/jdk1.7.0_79

 

配置Hbase

# mkdir /usr/local/hbase-1.2.3/data

# vim conf/hbase-site.xml 

<configuration>
  <property>
    <name>hbase.rootdir</name>
    <value>hdfs://192.168.244.30:8020/hbase</value>
  </property>
  <property>
    <name>hbase.zookeeper.property.dataDir</name>
    <value>/usr/local/hbase-1.2.3/data/zookeeper</value>
  </property>
  <property>
    <name>hbase.cluster.distributed</name>
    <value>true</value>
  </property>
</configuration>

 

# vim conf/regionservers 

192.168.244.30

 

启动Hbase

# bin/hbase-daemon.sh start zookeeper

starting zookeeper, logging to /usr/local/hbase-1.2.3/bin/../logs/hbase-root-zookeeper-hbase.out

# bin/hbase-daemon.sh start master

starting master, logging to /usr/local/hbase-1.2.3/bin/../logs/hbase-root-master-hbase.out

# bin/hbase-daemon.sh start regionserver

starting regionserver, logging to /usr/local/hbase-1.2.3/bin/../logs/hbase-root-regionserver-hbase.out

通过jps查看新增的java进程

# jps

2421 NodeManager
2975 HQuorumPeer
3302 HRegionServer
3051 HMaster
2339 ResourceManager
1924 NameNode
2029 DataNode
2170 SecondaryNameNode
3332 Jps

可以看出,新增了HQuorumPeer,HRegionServer和HMaster三个进程。

 

通过http://192.168.244.30:16030/访问Hbase的web页面

 

至此,Hbase的伪分布式集群搭建完毕~

 

参考

1. http://hadoop.apache.org/docs/r2.5.2/hadoop-project-dist/hadoop-common/SingleCluster.html

2. http://hbase.apache.org/book.html#quickstart

以上是关于Hbase的伪分布式安装的主要内容,如果未能解决你的问题,请参考以下文章

hbase-shell + hbase的java api

hbase伪分布式搭建和完全分布式搭建

Hadoop的伪分布式安装和部署的流程

Hadoop的伪分布式安装和部署流程

kafka之kafka的伪分布式安装

Hadoop的伪分布式安装