【Linux】- HBase集群部署 [19]

简介

apache HBase是一种分布式、可扩展、支持海量数据存储的 NoSQL 数据库。

和Redis一样,HBase是一款KeyValue型存储的数据库。

不过和Redis涉及方向不同

  • Redis设计为少量数据,超快检索
  • HBase设计为海量数据,快速检索

HBase在大数据邻域应用十分广泛。

安装

本次部署分别在node1,node2,node3 三台服务器部署

1、HBase依赖zookeeper,JDK,Hadoop(HDFS),请先确保服务器已经完成以上部署。

  • 集群化软件前置准备(JDK)
  • zookeeper
  • Hadoop

2、【node1执行】下载HBase安装包

2.1、下载

复制代码
wget http://archive.apache.org/dist/hbase/2.1.0/hbase-2.1.0-bin.tar.gz

2.2、解压

复制代码
tar -zxvf hbase-2.1.0-bin.tar.gz -C /export/server

2.3、配置软链接

复制代码
ln -s /export/server/hbase-2.1.0 /export/server/hbase

3、【node1执行】修改配置文件,修改conf/hbase-env.sh文件

复制代码
# 在28行配置JAVA_HOME
export JAVA_HOME=/export/server/jdk

# 在126行配置
# 意思表示,不使用HBase自带的zookeeper,而是用独立的zookeeper
export HBASE_MANAGES_ZK=false

# 在任意行,添加以下内容
export HBASE_DISABLE_HADOOP_CLASSPATH_LOOKUP="true"

4、【node1执行】 修改配置文件,修改conf/hbase-site.xml文件

复制代码
# 将文件的全部内容替换成如下内容:
<configuration>
    <!-- HBase数据在HDFS中的存放的路径 -->
    <property>
        <name>hbase.rootdir</name>
        <value>hdfs://node1:8020/hbase</value>
    </property>

    <!-- Hbase的运行模式,false是单机模式,true是分布式模式,若为false,Hbase和zookeeper会运行在同一个JVM里面 -->
    <property>
        <name>hbase.cluster.distributed</name>
        <value>true</value>
    </property>
    <!-- zookeeper的地址 -->
    <property>
        <name>hbase.zookeeper.quorum</name>
        <value>node1,node2,node3</value>
    </property>
    <!-- zookeeper的快照的存储位置 -->
    <property>
        <name>hbase.zookeeper.property.dataDir</name>
        <value>/export/server/apache-zookeeper-3.7.2-bin/data</value>
    </property>
    <!-- V2.1版本,在分布式情况下,设置为false -->
    <property>
        <name>hbase.unsafe.stream.capability.enforce</name>
        <value>false</value>
    </property>
</configuration>

5、【node1执行】 修改配置文件,修改conf/regionservers文件

复制代码
# 填下如下内容
node1
node2
node3

6、【node1执行】,分发hbase到其他服务器

复制代码
scp -r /export/server/hbase-2.1.0 node2:/export/server/
scp -r /export/server/hbase-2.1.0 node3:/export/server/

7、【node2、node3执行】配置软链接

复制代码
ln -s /export/server/hbase-2.1.0/ /export/server/hbase

8、【node1、node2、node3】,配置环境变量,在/etc/profile目录下

复制代码
# 添加内容
export HBASE_HOME=/export/server/hbase
export PATH=$HBASE_HOME/bin:$PATH

# 刷新
source /etc/profile

9、【node1执行】 启动hbase

请确保:hadoop hdfs、zookeeper已经启动

复制代码
start-hbase.sh

# 停止
stop-hbase.sh

10、验证hbase

浏览器打开:http://node1:16010,即可查看到hbase的web页面

11、简单测试使用hbase

【node1执行】

复制代码
hbase shell

# 创建表
create 'test' ,'cf'

# 插入数据
put 'test','rk', 'cf:info'

# 查询数据
get 'test', 'rk'

# 扫描表数据
scan 'test'
相关推荐
潮起鲸落入海6 分钟前
mysql 5.x源码安装
数据库·mysql
逸模9 分钟前
AI+BIM 重构连锁公装新范式 逸模打造数字化营建核心底座
大数据·人工智能·笔记·其他·信息可视化·重构
睡不醒男孩03082336 分钟前
第一篇:多云与多模态时代的企业级数据库云管理平台(DBaaS)选型指南
数据库·clup·中启乘数
小二·1 小时前
向量数据库实战
数据库
炘爚1 小时前
Phase 5:MySQL 连接池
数据库·mysql
谁似人间西林客1 小时前
工业大数据实战:看中国智造如何用数据驱动效率革命
大数据·单例模式
2501_933670791 小时前
数学成绩偏弱是否能填报大数据专业
大数据
j_xxx404_1 小时前
MySQL库操作硬核解析:字符集、校验规则、大小写比较、备份恢复与连接排查
运维·服务器·数据库·人工智能·mysql·ai·oracle
minji...2 小时前
MySQL数据库 (五) MySQL表的约束(上),非空约束,默认值约束,零填充约束,主键约束,符合主键
数据库·mysql·表的约束·主键约束·非空约束·复合主键·零填充约束
陆水A2 小时前
【实时数仓·3】Flink多表JOIN状态爆炸——Event Time Temporal JOIN + TTL分层治理
大数据·数据仓库·数据分析·flink·数据库开发·bigdata