Hadoop2.7.2 HBase2.0.0环境搭建

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/huaishu/article/details/78720890

集群配置

HBase – Hadoop Database,是一个高可靠性、高性能、面向列、可伸缩的分布式存储系统,利用HBase技术可在廉价PC Server上搭建起大规模结构化存储集群。


一、基础环境

JDK    :1.8.0_65 (要求1.6+)

ZooKeeper:3.4.10

Hadoop:2.7.2

HBase:2.0.0-alpha4

主机数:3(要求3+,且必须是奇数,因为ZooKeeper的选举算法)

服务器列表:
主机名 IP地址 JDK ZooKeeper myid
Master 10.116.33.109 1.8.0_65 server.1 1
Slave1 10.27.185.72 1.8.0_65 server.2 2
slave2 10.25.203.67 1.8.0_65 server.3 3

二、zk、hadoop安装

zk 安装参考 《 分布式ZooKeeper-3.4.10集群安装 》

三、HBase 安装(HBase 自管理ZK)

下载解压HBase文件
cd /data/spark/
wget "http://archive.apache.org/dist/hbase/2.0.0-alpha4/hbase-2.0.0-alpha4-bin.tar.gz"
tar zxvf hbase-2.0.0-alpha4-bin.tar.gz

环境变量

vim ~/.bash_profile
export HBASE_HOME=/data/spark/hbase-2.0.0-alpha4 
export PATH=$HBASE_HOME/bin:$PATH  
export HBASE_CLASSPATH=/data/spark/hbase-2.0.0-alpha4/conf
执行  source ~/.bash_profile使环境变量生效

配置hbase-env.sh JAVA_HOME
export JAVA_HOME=/opt/jdk1.8.0_65 
export HBASE_MANAGES_ZK=true   使用自带zookeeper

修改配置文件hbase-site.xml

<configuration>  
    <property>  
        <name>hbase.rootdir</name>  
        <value>hdfs://Master:9000/hbase</value>  
    </property>  
    <property>  
        <name>hbase.cluster.distributed</name>  
        <value>true</value>  
    </property>  
    <property>  
        <name>hbase.zookeeper.quorum</name>  
        <value>Master,Slave1,Slave2</value>  
    </property>  
    <property>  
        <name>hbase.temp.dir</name>  
        <value>/data/spark/hbase-2.0.0-alpha4/tmp</value>  
    </property>  
    <property>  
        <name>hbase.zookeeper.property.dataDir</name>  
        <value>/data/spark/hbase-2.0.0-alpha4/tmp/zookeeper</value>  
    </property>  
    <property>  
        <name>hbase.master.info.port</name>  
        <value>60010</value>  
    </property>  
</configuration> 
hbase.zookeeper.quorum  配置必须用IP,使用hostname会报错,与MapReduce 冲突。

各个主机之间复制HBase

 scp -r /data/spark/hbase-2.0.0-alpha4 Slave1:/data/spark
 scp -r /data/spark/hbase-2.0.0-alpha4 Slave2:/data/spark

启动HBase

 启动之前先启动hadoop和zookeeper集群
HBase只需在一个节点上执行启动HBase命令,与Hadoop一样
$HADOOP_HOME/sbin/start-all.sh
cd /data/spark/hbase-2.0.0-alpha4/bin
./start-hbase.sh

检查hbase启动情况

Slave 进程检查
29541 NodeManager
30456 HQuorumPeer
29435 DataNode
30541 HRegionServer
30718 Jps

Master进程检查
532 Jps
14278 NodeManager
18376 HMaster
18313 HQuorumPeer
14172 DataNode
18511 HRegionServer

HBase配置web界面
http://Maseter IP:60010/master-status
注意:HBase自管理ZK中,hosts文件中有主机名对应的IP,否则会报错。
zookeeper.ClientCnxn: Opening socket connection to server iZwz9evsidoafzcicmva9nZ/10.25.203.67:2181. Will not attempt to authenticate using SASL (unknown error)

导入数据

hdsf dfs -put test_hbase.csv /lw6/test
hbase  org.apache.hadoop.hbase.mapreduce.ImportTsv  -Dimporttsv.separator="," -Dimporttsv.columns=HBASE_ROW_KEY,f1 t1 /lw6/test/test_hbase.csv -Dimporttsv.bulk.output=/lw6/test/output.txt
Import 工具主要是通过转换为MapReduce 导入HBase。
注意:导入过程中出现任务无法Running,yarn日志显示无法找到主机,主要是因为主机名未修改,只是配置节点名称导致。

Hbase基本命令

参考:https://www.cnblogs.com/xiaolei2017/p/7245299.html

与数据库一样有DML、DDL操作,命令操作不一样。

扫描二维码关注公众号,回复: 4088629 查看本文章

名称

命令表达式

创建表

create '表名称', '列名称1','列名称2','列名称N'

添加记录      

put '表名称', '行名称', '列名称:', '值'

查看记录

get '表名称', '行名称'

查看表中的记录总数

count  '表名称'

删除记录

delete  '表名' ,'行名称' , '列名称'

删除一张表

先要屏蔽该表,才能对该表进行删除,第一步 disable '表名称' 第二步  drop '表名称'

查看所有记录

scan "表名称"  

查看某个表某个列中所有数据

scan "表名称" , ['列名称:']

更新记录 

就是重写一遍进行覆盖




猜你喜欢

转载自blog.csdn.net/huaishu/article/details/78720890