• Hbase分布式集群部署


    目录

    一、环境说明

    二、部署Hbase

    2.1 解压Hbase

    2.2 移动解压包

    2.3 修改 hbase-env.sh文件

    2.4 修改环境变量

    2.5 修改hbase-site.xml文件

    2.6 修改regionservers 文件

    2.7 分发hbase

    2.7.1 分发hbase包

    2.7.2 分发环境配置

    2.8 启动hbase服务

    2.8.1 环境生效

    2.8.2 master节点执行

    2.8.3 node2节点执行

    2.8.4 访问


    一、环境说明

    系统环境描述:本教程基于CentOS 8.0版本虚拟机
    Hadoop集群:

    节点NNNNJNZKFCZKDNRMNMIP
    master***192.168.31.215
    node1****192.168.31.8
    node2**192.168.31.9
    node3*****192.168.31.167
    node4****192.168.31.154

    Hbase 集群规划:

    节点HMasterHRegionServerZKIP
    master*192.168.31.215
    node1*192.168.31.8
    node2**192.168.31.9
    node3**192.168.31.167
    node4**192.168.31.154

    软件版本:

    软件版本
    jdk1.8.0_211
    zookeeper3.8.2
    Hbase2.5.5
    Hdoop3.3.4

    提示:Hbase 是基于Hadoop的,在开始Hbase之前,需要确保你的Hadoop集群是可用的。同时,本次部署需要的zookeeper,我使用的是Hadoop集群中的,关于zookeeper的部署,这里不做描述。因为该文章是基于部署Hadoop之后,所以一些机器的基本配置这里不做描述,比如机器的免密登录,机器的hosts文件设置,包括基本的JDK安装等,如果对于这些部分有操作上的疑问,欢迎查看之前Hadoop的系列文章。具体可参考:一篇文章带你学会Hadoop-3.3.4集群部署_夜夜流光相皎洁_小宁的博客-CSDN博客

    二、部署Hbase

    2.1 解压Hbase

    tar -zxvf hbase-2.5.5-bin.tar.gz

    2.2 移动解压包

    mv hbase-2.5.5 /usr/local/

    2.3 修改 hbase-env.sh文件

    1. cd /usr/local/hbase-2.5.5/conf
    2. vim hbase-env.sh
    3. export JAVA_HOME=/usr/local/jdk1.8.0_211

    2.4 修改环境变量

    1. vim /etcprofile
    2. export HBASE_HOME=/usr/local/hbase-2.5.5
    3. export PATH=$PATH:$HBASE_HOME/bin

    2.5 修改hbase-site.xml文件

    vim hbase-site.xml

    1. <!-- hbase是否部署为集群模式 -->
    2. <property>
    3. <name>hbase.cluster.distributed</name>
    4. <value>true</value>
    5. </property>
    6. <!--zookeeper 集群ip -->
    7. <property>
    8. <name>hbase.zookeeper.quorum</name>
    9. <value>node2:2181,node3:2181,node4:2181</value>
    10. </property>
    11. <!--zookeeper data dir -->
    12. <property>
    13. <name>hbase.zoopkeeper.property.dataDir</name>
    14. <value>/usr/local/hbase-2.5.5/data/zookeeper</value>
    15. </property>
    16. <!--要把hbase的数据存储hdfs上的路径 -->
    17. <property>
    18. <name>hbase.rootdir</name>
    19. <value>hdfs://master:9000/hbase</value>
    20. </property>
    21. <!--hbase 数据目录 -->
    22. <property>
    23. <name>hbase.tmp.dir</name>
    24. <value>/usr/local/hbase-2.5.5/data/hbase/tmp</value>
    25. </property>
    26. <property>
    27. <name>hbase.unsafe.stream.capability.enforce</name>
    28. <value>false</value>
    29. </property>
    30. <!-- Flink Secondary Index -->
    31. <property>
    32. <name>hbase.regionserver.wal.codec</name>
    33. <value>org.apache.hadoop.hbase.regionserver.wal.IndexedWALEditCodec</value>
    34. </property>
    35. <property>
    36. <name>hbase.column.max.version</name>
    37. <value>2</value>
    38. </property>
    39. <property>
    40. <name>hbase.regionserver.global.memstore.size</name>
    41. <value>0.2</value>
    42. </property>
    43. <property>
    44. <name>hbase.regionserver.global.memstore.size.lower.limit</name>
    45. <value>0.8</value>
    46. </property>
    47. <!-- 实际的Block Size = Heap size * hfile.block.cache.size, 需要重启才能生效,HDFS读较多时,可以增加zhe -->
    48. <property>
    49. <name>hfile.block.cache.size</name>
    50. <value>0.2</value>
    51. </property>
    52. <!--bytes,每个用户写缓存数,默认2097152; 总消耗内存=hbase.client.write.buffer * hbase.regionserver.handler.count -->
    53. <property>
    54. <name>hbase.hregion.memstore.flush.size</name>
    55. <value>134217728</value>
    56. </property>
    57. <!--RPC handler,default 30-->
    58. <property>
    59. <name>dfs.namenode.service.handler.count</name>
    60. <value>48</value>
    61. </property>
    62. <!-- Phoenix error-->
    63. <property>
    64. <name>phoenix.coprocessor.maxServerCacheTimeToLiveMs</name>
    65. <value>300000</value>
    66. </property>
    67. <!-- Region Split Policy -->
    68. <property>
    69. <name>hbase.regionserver.region.split.policy</name>
    70. <value>org.apache.hadoop.hbase.regionserver.DisabledRegionSplitPolicy</value>
    71. </property>
    72. <!-- Compacting 604800000 -->
    73. <property>
    74. <name>hbase.hstore.compactionthreshold</name>
    75. <value>5</value>
    76. </property>
    77. <property>
    78. <name>hbase.hstore.compaction.max</name>
    79. <value>10</value>
    80. </property>
    81. <property>
    82. <name>hbase.hstore.blockingStoreFiles</name>
    83. <value>16</value>
    84. </property>
    85. <property>
    86. <name>hbase.hregion.majorcompaction</name>
    87. <value>0</value>
    88. </property>
    89. <property>
    90. <name>hbase.hstore.compaction.throughput.higher.bound</name>
    91. <value>20971520</value>
    92. <description>The default is 20 MB/sec</description>
    93. </property>
    94. <property>
    95. <name>hbase.hstore.compaction.throughput.lower.bound</name>
    96. <value>10485760</value>
    97. <description>The default is 10 MB/sec</description>
    98. </property>

    2.6 修改regionservers 文件

    配置你希望启动HRegionserver服务的节点

    1. vim regionservers
    2. node1
    3. node3
    4. node4

    2.7 分发hbase

    2.7.1 分发hbase包

    1. scp -r /usr/local/hbase-2.5.5/ root@node1:/usr/local/
    2. scp -r /usr/local/hbase-2.5.5/ root@node2:/usr/local/
    3. scp -r /usr/local/hbase-2.5.5/ root@node3:/usr/local/
    4. scp -r /usr/local/hbase-2.5.5/ root@node4:/usr/local/

    2.7.2 分发环境配置

    1. scp /etc/profile root@node1:/etc/profile
    2. scp /etc/profile root@node2:/etc/profile
    3. scp /etc/profile root@node3:/etc/profile
    4. scp /etc/profile root@node4:/etc/profile

    提示:注意执行source /etc/profile 使环境生效

    2.8 启动hbase服务

    2.8.1 环境生效

    执行source /etc/profile 使环境生效(所有节点)

    source /etc/profile

    2.8.2 master节点执行

    start-hbase.sh

    可以通过netstat -anp | grep 16010 探测端口是否被启用,通过jps 查看master 是否有HMaster 服务启动,有则证明启动成功

    注意:启动服务之前,需要先启动zookeeper

    2.8.3 node2节点执行

    hbase-daemon.sh start master

    通过jps 指令查看node2节点,是否有HMaster服务启动,有则证明启动成功。

    注意:启动服务之前,需要先启动zookeeper

    2.8.4 访问

    浏览器访问服务:

    Backup Master: master

    能成功访问到HBase的页面,查看信息和我们配置的没有出入,符合预期,说明本次HBase集群服务部署成功了。

    好了,今天HBase分布式集群部署的相关内容就分享到这里,如果帮助到大家,欢迎大家点赞+关注+收藏,有疑问也欢迎大家评论留言!

  • 相关阅读:
    强大的SQL计算利器-SPL
    基于SSM的企业人事管理系统
    【设计模式】——策略模式
    正则表达式每个字符的学习
    [Games 101] Lecture 10 Geometry 1 (Introduction)
    C语言中的指针
    android 动画中插值器Interpolator详解
    Spring 6.X IoC 容器
    安装ROS
    思科设备BGP配置命令
  • 原文地址:https://blog.csdn.net/qq_25409421/article/details/133128601