• 大数据学习18_HBase集群搭建


    HBase介绍

    概念

    HBase是一个分布式的、面向列的开源数据库,一个结构化数据的分布式文件存储系统”。

    Hbase是一种NoSQL数据库,顾名思义便是没有SQL语句的。技术上来讲,它更像是分布式存储而不是分布式数据库

    特点

    • 强读写一致,但是不是“最终一致性”的数据存储,这使得它非常适合高速的计算聚合
    • 自动分片,通过Region分散在集群中,当行数增长的时候,Region也会自动的切分和再分配
    • 自动的故障转移
    • Hadoop/HDFS集成,和HDFS开箱即用,不用太麻烦的衔接
    • 丰富的“简洁,高效”API,Thrift/REST API,Java API
    • 块缓存,布隆过滤器,可以高效的列查询优化
    • 操作管理,Hbase提供了内置的web界面来操作,还可以监控JMX指标

    一个图看懂HBase架构

    • Zookeeper,作为分布式的协调。RegionServer也会把自己的信息写到ZooKeeper中。
    • HDFS是Hbase运行的底层文件系统
    • RegionServer,理解为数据节点,存储数据的。
    • Master RegionServer要实时的向Master报告信息。Master知道全局的RegionServer运行情况,可以控制RegionServer的故障转移和Region的切分。

    HBase集群搭建

    下载

    下载的时候要与安装的Hadoop集群版本对应,我的Hadoop版本是2.7.5的,所以要下在HBase的2.1.0版本。

    地址:https://archive.apache.org/dist/hbase/

    安装解压

    和搭建其他集群一样,命令: tar -xzvf  (安装包名称) -C (解压到的目录)

    配置文件修改

    hbase-env.sh添加以下内容:

    1 export JAVA_ HOME=/export/ servers/jdk1.8.0_ 141/
    2 export HBASE_ MANAGES_ ZK=false

    这是用来指定JDK和zookeeper有关设置

    hbase- site.xml添加以下内容:

     1 <configuration>
     2 <!--HBase数据在HDFS中的存放的路径-->
     3     <property>
     4         <name>hbase.rootdir</name>
     5         <value>hdfs://node01:8020/hbase</value>
     6     </property>
     7 <!--Hbase的运行模式。false是单机模式,true是分布式模式。若为false,Hbase和Zookeeper会运行在同一个JM里面-->
     8     <property>
     9         <name>hbase.cluster.distributed</name>
    10         <value>true</value>
    11     </property>
    12 <!-- ZooKeeper的地址-->
    13     <property>
    14         <name>hbase.zookeeper. quorum</name>
    15         <value>node01,node02,node03</value>
    16     </property>
    17 <!-- ZooKeeper快照的存储位置-->
    18     <property>
    19         <name>hbase.zookeeper. property.dataDir</name>
    20         <value>/export/servers/zookeeper-3.4.9/data</value>
    21     </property>
    22 <!--v2.i版本,在分布式情况下,设置为false -->
    23     <property>
    24         <name>hbase.unsafe.stream.capability.enforce</name>
    25         <value>false</value>
    26     </property>
    27 
    28 </configuration>

    配置环境变量

    #配置Hbase环境变量
    vim /etc/profile
    export HBASE_ HOME=/export/ servers/hbase-2.1.0
    export PATH=$PATH: ${HBASE_ HOME }/bin: ${HBASE_ HOME }/ sbin
    #重载环境变量。
    source
    /etc/profile

    复制jar包到lib,这里的这个jar包是启动HBase时候必须的

    cp $HBASE_ HOME /1ib/client-facing- thirdparty/htrace- core-3.1.0- incubating. jar $HBASE_ HOME/lib/

    修改regionserver 文件(需要regionserver的主机名字)

    vim regionservers 
    node1
    node2
    node3

    分发安装包和配置文件

    1 cd /export/ servers
    2 scp -r hbase-2.1.0/ node2: $PWD
    3 scp -r hbase-2.1.0/ node3: $PWD
    4 scp -r /etc/profile node2: /etc
    5 scp -r /etc/profile node3:/etc

    注意事项

    在启动HBase集群之前要保证三台虚拟机时间同步,和三台机子都要启动zookeeper,否则启动之后进程几秒之后会自动消失。

    如果启动不成功,还可以去conf目录下的logs文件查看报错,根据报错来解决。

  • 相关阅读:
    Python进程池
    Python进程间通信
    python编程中的if __name__ == 'main与windows中使用多进程
    Python进程-实现
    python进程join()函数理解
    python 进程池Pool
    python多进程打印字符,加锁(Lock加锁)
    python进程、多进程
    正则表达式统计字符串中数字的个数
    python 处理xml
  • 原文地址:https://www.cnblogs.com/g414056667/p/13829313.html
Copyright © 2020-2023  润新知