UOS搭建Hbase环境

介绍

HBase 是一个面向列式存储的分布式数据库,其设计思想来源于 Google 的 BigTable 论文。HBase 底层存储基于 HDFS 实现,集群的管理基于 ZooKeeper 实现。HBase 良好的分布式架构设计为海量数据的快速存储、随机访问提供了可能,基于数据副本机制和分区机制可以轻松实现在线扩容、缩容和数据容灾,是大数据领域中 Key-Value 数据结构存储最常用的数据库方案。

下载

下载链接
Hadoop和Hbase有版本对应关系,之前使用了Hadoop3.3.1,这里选择Hbase2.4.14
在这里插入图片描述

构建hadoop镜像

touch Dockerfile
FROM amd64/buildpack-deps:buster-curl as installer

RUN set -x &&\
    curl -SL --output /var/tmp/hbase.tar.gz http://mirrors.aliyun.com/apache/hbase/2.4.13/hbase-2.4.13-bin.tar.gz?spm=a2c6h.25603864.0.0.1ff092c5wfx4JS  &&\
    tar -xzvf /var/tmp/hbase.tar.gz -C /usr/local &&\
    mv /usr/local/hbase-2.4.13 /usr/local/hbase &&\
    rm -rf /var/tmp/hbase.tar.gz 

FROM chenchongbiao/hadoop:v1
ENV HBASE_HOME=/usr/local/hbase
ENV PATH=$PATH:$HBASE_HOME/bin

WORKDIR $HBASE_HOME

COPY --from=installer ["/usr/local/hbase", "/usr/local/hbase"]

单机模式

修改配置文件

hbase/conf/hbase-env.sh

export JAVA_HOME=/usr/local/jdk1.8 
export HBASE_MANAGES_ZK=true

/hbase/conf/hbase-site.xml

  <property>
    <!--默认的rootdir会导致每次start-hbash.sh将重置清空HBase数据 -->
    <name>hbase.rootdir</name>
    <value>file:///usr/local/hbase/tmp</value>
  </property>

运行

touch standalone.yml
version: '3'
services:
  linux01:
    image: chenchongbiao/hbase:v1
    working_dir: /usr/local/hbase
    container_name: linux01
    hostname: linux01
    volumes:
      - ./standalone/conf/hbase-env.sh:/usr/local/hbase/conf/hbase-env.sh
      - ./standalone/conf/hbase-site.xml:/usr/local/hbase/conf/hbase-site.xml
      - ./standalone/bin/start-hbase.sh:/usr/local/hbase/bin/start-hbase.sh
    restart: always

运行单机模式。

sudo docker-compose -f standalone.yml up -d

进入容器

sudo docker exec -it linux01 bash

启动hbase

bin/start-hbase.sh

在这里插入图片描述

进入shell

hbase shell

在这里插入图片描述
退出

exit

伪分布模式

修改配置文件

hbase/conf/hbase-env.sh

export JAVA_HOME=/usr/local/jdk1.8
export HBASE_CLASSPATH=/usr/local/hbase/conf
export HBASE_MANAGES_ZK=true

hbase/con/hbase-site.xml

  <property>
    <name>hbase.rootdir</name>
    <value>hdfs://linux01:9000/hbase</value>
  </property>
  <property>
    <name>hbase.cluster.distributed</name>
    <value>true</value>
  </property>
  <property>
    <name>hbase.unsafe.stream.capability.enforce</name>
    <value>false</value>
  </property>

pseudo.yml

version: '3'
services:
  linux01:
    image: chenchongbiao/hbase:v1
    working_dir: /usr/local/hbase
    container_name: linux01
    hostname: linux01
    volumes:
      - ../hadoop/pseudo/conf/core-site.xml:/usr/local/hadoop/etc/hadoop/core-site.xml
      - ../hadoop/pseudo/conf/hdfs-site.xml:/usr/local/hadoop/etc/hadoop/hdfs-site.xml
      - ../hadoop/pseudo/conf/hadoop-env.sh:/usr/local/hadoop/etc/hadoop/hadoop-env.sh
      - ../hadoop/sbin:/usr/local/hadoop/sbin
      - ./pseudo/conf/hbase-env.sh:/usr/local/hbase/conf/hbase-env.sh
      - ./pseudo/conf/hbase-site.xml:/usr/local/hbase/conf/hbase-site.xml
      - ./pseudo/conf/regionservers:/usr/local/hbase/conf/regionservers
      - ./bin/start-hbase.sh:/usr/local/hbase/bin/start-hbase.sh
    ports:
      - "9870:9870"
      - "16010:16010"
    restart: always

regionservers

linux01

运行

运行伪分布模式

sudo docker-compose -f pseudo.yml  up -d

进入容器

sudo docker exec -it linux01 bash

先启动hadoop再启动hbase,因为我会把容器删掉,所以重新启动时,需要先进行名称节点格式化

hdfs namenode -format

启动hdfs

../hadoop/sbin/start-dfs.sh

在这里插入图片描述启动hbase

bin/start-hbase.sh

在这里插入图片描述

退出

在这里插入图片描述
退出shell

exit

停止hbase

hbase-daemon.sh stop master 
stop-hbase.sh 

停止hadoop

stop-dfs.sh 

分布式模式

不管是Hadoop还是HBase,三种运行模式的区别主要在于配置文件
另外,因为ZooKeeper的特性要求必须是奇数个节点。

修改配置文件

hbase/conf/hbase-env.sh

export JAVA_HOME=/usr/local/jdk1.8
export HBASE_CLASSPATH=/usr/local/hbase/conf
export HBASE_MANAGES_ZK=true
export HBASE_HOME=/usr/local/hbase
export HADOOP_HOME=/usr/local/hadoop
export HBASE_LOG_DIR=/usr/local/hbase/logs  #Hbase日志目录

hbase/conf/hbase-site.xml

  <property>
    <name>hbase.rootdir</name>
    <value>hdfs://linux01:9000/hbase</value>
  </property>
  <property>
    <name>hbase.cluster.distributed</name>
    <value>true</value>
  </property>
  <property>
    <name>hbase.zookeeper.property.dataDir</name>
    <value>/data/hbase/zookeeper</value>
  </property>
  <property>
	<name>hbase.zookeeper.quorum</name>
	<value>linux01,linux02,linux03</value>
	<description>配置zookeeper集群地址,不要指定znode路径,HBase会默认将元数据放在根znode</description>
  </property>

regionservers
三个节点名

linux01
linux02
linux03

运行

运行分布式模式。

sudo docker-compose -f cluster.yml up -d

进入主节点容器。

sudo docker exec -it linux01 bash

名称节点格式化。

hdfs namenode -format

开起hadoop集群。

../hadoop/sbin/start-all.sh

启动hbase

start-hbase.sh

在这里插入图片描述## 进入hbase

hbase shell

退出

exit

停止hbase

hbase-daemon.sh stop master  
stop-hbase.sh  

停止hadoop

../hadoop/sbin/stop-all.sh 

仓库链接

大数据应用开发环境

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
统信uos系统环境部署是指将统信uos操作系统安装并配置到计算机环境中的过程。首先,我们需要准备一台计算机和统信uos系统的安装介质。接下来,将安装介质插入计算机的光驱或USB接口,并将计算机开机。 在计算机开机的过程中,我们需要进入BIOS设置界面,将启动顺序设置为首先从光驱或USB启动。然后,重启计算机并根据提示进入系统安装界面。 在系统安装界面中,我们需要选择正确的安装选项和语言。接下来,我们需要选择磁盘分区和安装位置,并进行相关设置。同时,还可以选择是否进行格式化和设置密码等操作。 安装过程中,根据系统提示我们需要填写一些系统设置的信息,如计算机名称、用户账户等。设置完毕后,点击下一步,系统会开始进行安装程序的拷贝和一些必要的配置。 安装完成后,计算机会重启并进入统信uos系统。此时,我们需要进行一些初始化的配置,如选择时区、联网设置等。 最后,我们可以根据实际需求,安装和配置一些常用的应用程序和工具,如Office套件、浏览器、邮件客户端等。 需要注意的是,统信uos系统环境部署可能因计算机硬件配置、网络环境和操作步骤的不同而有所差异。因此,在部署过程中需要仔细阅读官方文档并按照指引进行操作,确保系统安装和配置的正确性和顺利性。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值