Hadoop2.7.2 HBase2.0.0环境搭建

集群配置

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地址JDKZooKeepermyid
Master10.116.33.1091.8.0_65server.11
Slave110.27.185.721.8.0_65server.22
slave210.25.203.671.8.0_65server.33

 

二、ZK、Hadoop安装

 

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

hadoop 安装参考《spark-2.2.0 集群安装部署以及hadoop集群部署

 

三、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操作,命令操作不一样。

 

名称

命令表达式

创建表

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

添加记录      

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

查看记录

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

查看表中的记录总数

count  '表名称'

删除记录

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

删除一张表

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

查看所有记录

scan "表名称"  

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

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

更新记录 

就是重写一遍进行覆盖

 

 

 

 

  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值