hbase伪集群搭建

hbase 数据存储有三种跑法,跑在本地磁盘上、跑在伪分布式上、跑在完全分布式上--------
额。。。官网的文档挺坑爹的,结合官网、百度、谷歌的各种文档看,只要理解原理,搭建也不算难(当然照的官网文档个看就比较坑爹了)
单机模式 ------->> 这个最简单,免写了,下了包直接解压配置个路径就可以启动了,zk 和 hbase 都是起在同一个 jvm 中的,数据落到本地磁盘。
伪分布式部署方式 ------->> 先部署 hdfs , 再部署 hbase ,它们的各个进程跑在不同的 jvm 中 , hbase只是将数据落到了 hdfs 上。
完全分布式 ------->> 完全分布式用大白话来说,我理解的就是个 伪分布式的 升级款,只是把伪分布式的一台服务器变成了 n 台。。。

完全分布式一定要部署在 物理机上

上边蛋扯的差不多了,下面直接入正题,开始部署
下载什么版本的包自己解决,要想下载最轻松的全部安装包,直接到 cdh 上去下载,百度搜索 cdh ,你懂的、、、然后配置文件每个版本的基本上差不多,没有太大的出入
下面是以 hadoop-2.7.2 、 hbase-1.1.2 为例

一、新系统的话,自己先处理一下系统,这个习惯相信所有运维同行的哥哥们都是有这习惯的。。。关闭不用的防火墙、最大文件打开数、jdk全局变量、dns、主机名解析
建议配置时用 ip 的最后用内网的域名,这样的话,开发的代码也好接入做好的 hbase,用主机名的话,开发的还得自己的 hosts ,我这里用的 内网的 dns 域名。

二、部署 hdfs

   hadoop-2.7.2.tar.gz  包传到 服务器上,解压
         tar xvf  hadoop-2.7.2.tar.gz  -C /home
         cd /home/hadoop-2.7.2
         vim etc/hadoop/hadoop-env.sh
         export JAVA_HOME=/usr/lib/jvm/jdk1.7.0_72
   配置HDFS
         mkdir data
         vim etc/hadoop/core-site.xml

    <configuration>
 <property>
    <name>fs.defaultFS</name>
    <value>hdfs://pretend.hdfs.gag.cn:9000</value>
            <!--这里设置 hdfs 文件系统接口-->
 </property>
 <property>
    <name>hadoop.tmp.dir</name>
    <value>/home/hadoop-2.7.2/data/tmp</value>
            <!--这里为 hdfs 数据存储路径-->
 </property>
</configuration>

    ----------------------------
        vim etc/hadoop/hdfs-site.xml
   <configuration>
   <property>
    <name>dfs.replication</name>
    <value>1</value>
            <!--指定创建的副本数-->
   </property>

</configuration>

    ----------------------------
       配置YARN
         这原配置文件里什么也没有,都是注释内容,直接改名就行
         mv etc/hadoop/mapred-site.xml.template etc/hadoop/mapred-site.xml
         vim etc/hadoop/mapred-site.xml
  <configuration>
  <property>
    <name>mapreduce.framework.name</name>
    <value>yarn</value>
    <!--使用yarn运行mapreduce程序-->
  </property>

</configuration>

         vim etc/hadoop/yarn-site.xml
  <configuration>
  <property>
    <name>yarn.nodemanager.aux-services</name>
    <value>mapreduce_shuffle</value>
            <!--NodeManager上运行的附属服务。需配置成mapreduce_shuffle,才可运行MapReduce程序-->
  </property>

</configuration>
    ------------------------------------
    启动 hdfs
    初次启动 hdfs 先要初始化文件系统,也可以说是格式化文件系统

    bin/hdfs namenode -format

     ![](http://i2.51cto.com/images/blog/201803/05/afb7e0d1a567cae57e0219508b614a64.png?x-oss-process=image/watermark,size_16,text_QDUxQ1RP5Y2a5a6i,color_FFFFFF,t_100,g_se,x_10,y_10,shadow_90,type_ZmFuZ3poZW5naGVpdGk=)

     格式化完毕,启动NameNod和DataNode进程
     启动之前如果修改 jvm 参数的话,在 vim etc/hadoop/hadoop-env.sh  修改 HADOOP_HEAPSIZE 这一项就可以了,默认应该是 1024M 吧

     sbin/start-dfs.sh
     启动以后,有这里显示有 三个配置文件,是 out 后缀的,看日志的话,看 log 后缀的,看有没有 error 级别的报错
     ![](http://i2.51cto.com/images/blog/201803/05/b1fb3c375924ba49aa3cabbee725af10.png?x-oss-process=image/watermark,size_16,text_QDUxQ1RP5Y2a5a6i,color_FFFFFF,t_100,g_se,x_10,y_10,shadow_90,type_ZmFuZ3poZW5naGVpdGk=)

     -----------------------------
     启动YARN
     sbin/start-yarn.sh
     同样是去看这两个的 log 后缀的日志
     这里了 hdfs 就算启动完毕了,这时再 jps 命令可以看到除  jps 进程外有 5 个

     ![](http://i2.51cto.com/images/blog/201803/05/36625774e3955f1fd3014eb85036cadd.png?x-oss-process=image/watermark,size_16,text_QDUxQ1RP5Y2a5a6i,color_FFFFFF,t_100,g_se,x_10,y_10,shadow_90,type_ZmFuZ3poZW5naGVpdGk=)

     查看端口已经有这么多了, 50070 是 hdfs 的 web 端口,以后输入 ip:port 或者 域名:port  来查看 web 页面
     ![](http://i2.51cto.com/images/blog/201803/05/f63bcacf66e6c9eafed5fc72fd97d2e7.png?x-oss-process=image/watermark,size_16,text_QDUxQ1RP5Y2a5a6i,color_FFFFFF,t_100,g_se,x_10,y_10,shadow_90,type_ZmFuZ3poZW5naGVpdGk=)

     ![](http://i2.51cto.com/images/blog/201803/05/eda0a0aca56cfe831f9ecfe0f061696e.png?x-oss-process=image/watermark,size_16,text_QDUxQ1RP5Y2a5a6i,color_FFFFFF,t_100,g_se,x_10,y_10,shadow_90,type_ZmFuZ3poZW5naGVpdGk=)

     ======================================================================

     以上 hdfs 启动没问题后,就可以启动 hbase 了

     tar xvf hbase-1.1.2-bin.tar.gz -C /home/

     cd /home/hbase-1.1.2/

     vim conf/hbase-env.sh

     export JAVA_HOME=/usr/lib/jvm/jdk1.7.0_72

     配置Hbase

     mkdir data

     vim conf/hbase-site.xml 

     <configuration>
   <property>
      <name>hbase.rootdir</name>
      <value>hdfs://pretend.hdfs.gag.cn:9000/hbase</value>
            <!--使用 hdfs 文件系统,端口为上面配置的 hdfs 接口-->
  </property>
  <property>
     <name>hbase.zookeeper.property.dataDir</name>
     <value>/home/hbase-1.1.2/data</value>
             <!--zookeeper数据存储路径,用hbase自带的zookeeper-->
  </property>
  <property>
     <name>hbase.cluster.distributed</name>
     <value>true</value>
             <!--设置hbase模式为集群模式-->
  </property>
</configuration>

 hbase 集群内的服务器,如果是启动完全分布式,这里要填写hbase所有的服务器域名或者 ip 或者 主机名,顺便说一下,hbase和 hadoop 集群全部是已 ssh 远程 调用命令的方式启动其他节点的
    vim conf/regionservers 

    pretend.hbase.gag.cn

    这里的话,我把内存调整了一下,因为开发那边要用,服务器是 8G 的
    vim conf/hbase-env.sh
    export HBASE_MASTER_OPTS="$HBASE_MASTER_OPTS -XX:PermSize=1024m -XX:MaxPermSize=512m"
export HBASE_REGIONSERVER_OPTS="$HBASE_REGIONSERVER_OPTS -XX:PermSize=1024m -XX:MaxPermSize=512m"

启动Hbase

 先启动 zookeeper,如果是完全分布式的话,所有的 hbase节点会以临时节点的方式注册在 zk 里,伪分布式也一样,只不过zk 里只有一个节点,zk 也只有一个节点
 bin/hbase-daemon.sh start zookeeper         启动后查看日志
     bin/hbase-daemon.sh start master               启动后查看日志
     bin/hbase-daemon.sh start regionserver      启动后查看日志

     此时的 jps 可以查看到除 jps 外 8 个进程
     ![](http://i2.51cto.com/images/blog/201803/05/692fd3b3f0fddc59044ac10c47b52adb.png?x-oss-process=image/watermark,size_16,text_QDUxQ1RP5Y2a5a6i,color_FFFFFF,t_100,g_se,x_10,y_10,shadow_90,type_ZmFuZ3poZW5naGVpdGk=)

    hbase 的 web 页面端口是 16010
    ![](http://i2.51cto.com/images/blog/201803/05/13f8e5501414a49cf0165f36cad233e3.png?x-oss-process=image/watermark,size_16,text_QDUxQ1RP5Y2a5a6i,color_FFFFFF,t_100,g_se,x_10,y_10,shadow_90,type_ZmFuZ3poZW5naGVpdGk=)

     如果要加 开机启动的话,最好加上sleep等待,我是这样加的
     ![](http://i2.51cto.com/images/blog/201803/05/d72489bbf28360c894972e2b46a048aa.png?x-oss-process=image/watermark,size_16,text_QDUxQ1RP5Y2a5a6i,color_FFFFFF,t_100,g_se,x_10,y_10,shadow_90,type_ZmFuZ3poZW5naGVpdGk=)

     正常停止方式:
     一定要按照顺序停止
     停止 hbase、zookeeper、hdfs

原文地址:http://blog.51cto.com/rsddn/2083042

时间: 2024-11-07 07:21:25

hbase伪集群搭建的相关文章

大数据学习系列之七 ----- Hadoop+Spark+Zookeeper+HBase+Hive集群搭建 图文详解

引言 在之前的大数据学习系列中,搭建了Hadoop+Spark+HBase+Hive 环境以及一些测试.其实要说的话,我开始学习大数据的时候,搭建的就是集群,并不是单机模式和伪分布式.至于为什么先写单机的搭建,是因为作为个人学习的话,单机已足以,好吧,说实话是自己的电脑不行,使用虚拟机实在太卡了... 整个的集群搭建是在公司的测试服务搭建的,在搭建的时候遇到各种各样的坑,当然也收获颇多.在成功搭建大数据集群之后,零零散散的做了写笔记,然后重新将这些笔记整理了下来.于是就有了本篇博文. 其实我在搭

[dubbo实战] dubbo+zookeeper伪集群搭建

zookeeper作为注册中心,服务器和客户端都要访问,如果有大量的并发,肯定会有等待.所以可以通过zookeeper集群解决. 一.为什么需要zookeeper呢? 大部分分布式应用需要一个主控.协调器或者控制器来管理物理分布的子进程.目前,大多数都要开发私有的协调程序,缺乏一个通用机制,协调程序的反复编写浪费,且难以形成通用.伸缩性好的协调器,zookeeper提供通用的分布式锁服务,用以协调分布式应用.所以说zookeeper是分布式应用的协作服务. 二.zookeeper的工作原理 核心

zookeeper 伪集群搭建

简介Zookeeper 是 一个分布式.开放源码的分布式应用程序协调服务,是Google Chubby的一个开源实现,大多数的分布式应用都需要Zookeeper的支持,这篇文章先简单的和大家分享如何搭建一个zookeeper集群.(笔者注:Chubby是一个lock service,通过这个lock service可以解决分布式中的一致性问题.为这个lock service的实现是一个分布式的文件系统. 环境: 由于我是用自己的笔记本做实验,所以就用了一台虚拟机:其实和真实的差不多:也就配置有些

redis伪集群搭建(亲测无坑)

一.单机版安装部署,伪集群只需要操作前1-8步即可,再往下浏览找到:二.单机版-伪集群 ?安装部署继续搭建,如需设置密码参照第10步 1.安装基本工具 yum install -y?gcc-c++ vim lrzsz wget? 2.创建.进入目录 mkdir /opt/redis cd /opt/redis 3.下载 wget http://download.redis.io/releases/redis-5.0.5.tar.gz 4.解压.查看文件 tar zxvf redis-5.0.5.

ZooKeeper单机伪集群搭建与启动

下载解压 [[email protected] ~]$ tar -zvxf zookeeper-3.4.9.tar.gz 本机ip地址映射 [[email protected] /]$ su - rootPassword: Last login: Sat Aug 4 18:59:38 EDT 2018 on :0 [[email protected] ~]# cd /etc [[email protected] etc]# vim hosts 将本机ip映射为一个主机名,在zoo.cfg中可用这

zookeeper伪集群搭建

下载地址:http://mirror.bit.edu.cn/apache/zookeeper/ yum install telnet -y -y 不再提示 全部选择yes 1.解压三个zk文件夹分别为 zk8081 zk80822.zk2181: mkdir data mkdir logs touch /daata/myid 写入1zk2182: mkdir data mkdir logs touch /daata/myid 写入2zk2183: mkdir data mkdir logs to

HBase的集群搭建

前提:已经安装过jdk,HDFS集群和zookeeper,我的集群规划见HDFS的文章中 1.在1上安装配置hbase 下载:http://mirror.bit.edu.cn/apache/hbase/stable/ tar -zxvf hbase-1.2.6-bin.tar.gz -C itcast/ 2.修改配置文件   cd  /itcast/hbase-1.2.6/conf (1)vi hbase-site.xml <configuration> <!-- 指定hbase在HDF

Redis5以上版本伪集群搭建(高可用集群模式)

redis集群需要至少要三个master节点,我们这里搭建三个master节点,并且给每个master再搭建一个slave节点,总共6个redis节点,这里用一台机器(可以多台机器部署,修改一下ip地址就可以了)部署6个redis实例,三主三从,搭建集群的步骤如下: 第一步:在第一台机器的/usr/local/redis下创建文件夹redis-cluster,然后在其下面创建6个文件夹如下: mkdir -p /usr/local/redis/redis-cluster 进入redis-clus

容器互联,单机伪集群搭建

1.集群示意图 2.从docker hub上获取响应的镜像 docker pull redis docker pull django docker pull haproxy docker pull ubuntu 3.应用栈的启动顺序 启动redis-master容器节点 两个redis-salve容器节点连接到redis-master节点上 两 app节点启动时要连接到redis-master节点上 Hapoxy节点要连接到两个app节点上 综上所述启动顺序为: redis-master----