1.简介

HBase系统主要依赖于zookeeper和hdfs系统,所以部署HBase需要先去部署zookeeper和hadoop

2.部署开始

  IP或者HOSTNAME需要根据自身主机信息设定。

  部署资源:

      两个节点:xufeng-2(管理节点) xufeng-3(从节点)

xufeng-3 xufeng-2

zookeeper

namenode

SecondaryNameNode

master

datanode

regionserver

  部署版本:

      CDH5.4.2

  1.设定主机hostname

      #adduser hadoop  //添加一个用户
      #passwd hadoop   //修改密码

  2.设定主机hostame  

vi /etc/sysconfig/network

  3.设定hosts文件:

10.211.55.18 xufeng-
10.211.55.21 xufeng-

  4.拷贝安装包,按照如下设定安装包路径

  

  其中组件文件夹通过软连接到具体安装目录,配置文件独立于安装目录,这样便于后续版本的替换

  安装包可以去官网:http://archive.cloudera.com/cdh5/cdh/5/下载。

  5.安装jdk,如下版本,hadoop已经全面放弃了1.6版本,所以请安装1.7及以上版本

jdk-7u79-linux-x64.rpm

  6.设定无密码登录

hadoop用户下:

xufeng-3上执行:
ssh-keygen
cd ~/.ssh
scp id_rsa.pub xufeng-:/home/hadoop/.ssh/authorized_keys xufeng-2上执行
ssh-keygen
cd ~/.ssh
scp id_rsa.pub xufeng-:/home/hadoop/.ssh/authorized_keys
增加:
启动的时候需要ssh到自身,所以也需要将自身的公钥发布给自己:
在各个节点上执行:
cat ~/.ssh/id_rsa.pub >> ~/.ssh/authorized_keys

  7.设定环境变量,通过环境变量的设定,各个服务可以找到对应的安装路径和配置文件路径  

[hadoop@xufeng- hbase-config]$ vi ~/.bash_profile 

#hadoop
export HADOOP_HOME=/opt/hadoop/hadoop
export HADOOP_CONF_DIR=/opt/hadoop/hadoop-config
export HADOOP_LOG_DIR=/opt/hadoop/hadoop/xufeng
#hbase
export HBASE_HOME=/opt/hadoop/hbase
export HBASE_CONF_DIR=/opt/hadoop/hbase-config #zookeeper
export ZOOKEEPER_HOME=/opt/hadoop/zookeeper
export ZOOCFGDIR=/opt/hadoop/zookeeper-config #spark
export SPARK_HOME=/opt/hadoop/spark
export SPARK_CONF_DIR=/opt/hadoop/spark-config PATH=$PATH:$HOME/bin:$JAVA_HOME/bin:$HADOOP_HOME/bin:$HADOOP_HOME/sbin:$HBASE_HOME/bin:$ZOOKEEPER_HOME/bin:SPARK_HOME/bin export PATH

  配置文件和包分割开来,便于后续方便的替换包(版本)。

  8.【单节点】设定zookeeper,启动zookeeper

  a.将zookeeper安装包内的conf文件夹下的内容拷贝到zookeeper-config目录下,并生成zoo.cfg文件  

[hadoop@xufeng- bin]$ cd /opt/hadoop/zookeeper-config/
[hadoop@xufeng- zookeeper-config]$ ll
总用量
-rwxr-x---. hadoop hadoop 6月 : configuration.xsl
-rwxr-x---. hadoop hadoop 6月 : log4j.properties
-rw-rw-r--. hadoop hadoop 6月 : zoo.cfg
-rw-rw-r--. hadoop hadoop 6月 : zookeeper.out
-rwxr-x---. hadoop hadoop 6月 : zoo_sample.cfg

  zoo.cfg内容

[hadoop@xufeng- zookeeper-config]$ vi zoo.cfg 

tickTime=
dataDir=/opt/hadoop/hadoop_data/zookeeper
clientPort=
~

  b.启动zookeeper

zkServer.sh start

  检查线程

[hadoop@xufeng- zookeeper-config]$ jps
QuorumPeerMain
Jps

  9.设定hadoop,启动hadoop

  需要去主从节点上设定如下几个文件,这些文件都放在了/opt/hadoop/hadoop-config下,通过环境变量的指定进程能够读取到。

  其中如果无特殊需要hadoop-env.sh和log4j文件只从安装包中拷贝不修改。

core-site.xml
hdfs-site.xml
hadoop-env.sh
log4j.properties
slaves

  core-site.xml内容:

<configuration>
<property>
<name>fs.defaultFS</name>
<value>hdfs://xufeng-3:9000</value>
<description>NameNode URI</description>
</property>
<property>
<name>hadoop.tmp.dir</name>
<value>file:///opt/hadoop/hadoop_data/hadoop/hdfs/temp</value>
<description>Abase for other temporary directories.</description>
</property>
</configuration>

  hdfs-site.xml内容:dfs.replication设定为1,因为我们只有一个datanode

<configuration>
<property>
<name>dfs.namenode.name.dir</name>
<value>file:///opt/hadoop/hadoop_data/hdfs/namenode</value>
<description>NameNode directory for namespace and transaction logs storage.</description>
</property>
<property>
<name>dfs.datanode.data.dir</name>
<value>file:///opt/hadoop/hadoop_data/hdfs/datanode</value>
<description>DataNode directory</description>
</property>
<property>
<name>dfs.replication</name>
<value></value>
</property>
<property>
<name>dfs.permissions</name>
<value>false</value>
</property>
<property>
<name>dfs.datanode.use.datanode.hostname</name>
<value>false</value>
</property>
<property>
<name>dfs.namenode.datanode.registration.ip-hostname-check</name>
<value>false</value>
</property>
<property>
<name>dfs.namenode.http-address</name>
<value>xufeng-:</value>
<description>Your NameNode hostname for http access.</description>
</property>
<property>
<name>dfs.namenode.secondary.http-address</name>
<value>xufeng-:</value>
<description>Your Secondary NameNode hostname for http access.</description>
</property>
</configuration>

  slaves内容: 只在xufeng-2这台机器上启动datanode

xufeng-

  启动hdfs

start-dfs.sh
注意:
听说centOS6有一个bug:
需要关闭防火墙才能联通端口: service iptables stop
chkconfig iptables off

  进入页面:hdfs安装完成: 

10,设定HBase,启动HBase

  的地水电费

  将配置文件从安装目录中拷贝到/opt/hadoop/hbase-config,主要有如下文件:

  

  其中hdfs-site.xml为软连接到hadoop的配置文件,因为HBase是作为hdfs的客户端角色。

  hbase-env.sh内容(修改点):不要让HBase使用集成的zookeeper,而是使用我们在xufeng-3上启动的zookeeper服务 

# Tell HBase whether it should manage it's own instance of Zookeeper or not.
export HBASE_MANAGES_ZK=false

  hbase-site.xml内容:

<configuration>
<property>
<name>hbase.cluster.distributed</name>
<value>true</value>
</property>
<property>
<name>hbase.rootdir</name>
<value>hdfs://xufeng-3:9000/hbase</value>
</property>
<property>
<name>hbase.zookeeper.quorum</name>
<value>xufeng-:</value>
</property>
</configuration>

  regionservers内容:只在xufeng-2这个从节点上启动regionserver服务

xufeng-

  

  在xufeng-3节点上启动HBase:

start-hbase.sh

  进入页面:HBase安装完成:

            

  

  

      

部署HBase系统(分布式部署)的更多相关文章

  1. 【Hadoop 分布式部署 一 :分布式部署准备虚拟机 】

    一.将IP配置为静态 按照 下面的操作将IP配置为静态IP  这个静态的IP地址 是你自己设置的,只要符合虚拟机的IP段就可以.最后点击 Apply  需要root密码 将网络断开 (在网络图标左键  ...

  2. 【Hadoop 分布式部署 五:分布式部署之分发、基本测试及监控】

    1.对  hadoop 进行格式化 到  /opt/app/hadoop-2.5.0  目录下 执行命令:    bin/hdfs namenode -format 执行的效果图如下  (  下图成功 ...

  3. 技术分享 | 在GreatDB分布式部署模式中使用Chaos Mesh做混沌测试

    GreatSQL社区原创内容未经授权不得随意使用,转载请联系小编并注明来源. 1. 需求背景与万里安全数据库软件GreatDB分布式部署模式介绍 1.1 需求背景 混沌测试是检测分布式系统不确定性.建 ...

  4. Hadoop及Zookeeper+HBase完全分布式集群部署

    Hadoop及HBase集群部署 一. 集群环境 系统版本 虚拟机:内存 16G CPU 双核心 系统: CentOS-7 64位 系统下载地址: http://124.202.164.6/files ...

  5. BI系统的分布式部署原理和技术实现

    1.什么是分布式 关于"分布式系统"的定义,我们先看下书中是怎么说的.<分布式系统原理和范型>一书中是这样定义分布式系统的:"分布式系统是若干独立计算机的集合 ...

  6. HBase独立集群部署

    HBase是分布式.面向列式存储的开源数据库,来源于Google的论文BigTable,HBase运行于Hadoop平台之上,不同于一般的关系数据库,是一个适合非结构化数据存储的分布式数据库 安装Hb ...

  7. Hadoop生态圈-flume日志收集工具完全分布式部署

    Hadoop生态圈-flume日志收集工具完全分布式部署 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任.   目前为止,Hadoop的一个主流应用就是对于大规模web日志的分析和处理 ...

  8. Hadoop1 Centos伪分布式部署

    前言:       毕业两年了,之前的工作一直没有接触过大数据的东西,对hadoop等比较陌生,所以最近开始学习了.对于我这样第一次学的人,过程还是充满了很多疑惑和不解的,不过我采取的策略是还是先让环 ...

  9. 项目分布式部署那些事(1):ONS消息队列、基于Redis的Session共享,开源共享

    因业务发展需要现在的系统不足以支撑现在的用户量,于是我们在一周之前着手项目的性能优化与分布式部署的相关动作. 概况 现在的系统是基于RabbitHub(一套开源的开发时框架)和Rabbit.WeiXi ...

随机推荐

  1. hadoop中DataNode消失挂掉的原因及解决方法

    昨天在进行Hadoop实验时遇到一个问题,在sbin目录下输入jps命令,查看当前节点的状态时,意外发现DataNode节点不见了!!于是回忆了一下自己之前的操作过程,大概是因为将自己进入文件夹,将某 ...

  2. Kingdom and its Cities - CF613D

    Meanwhile, the kingdom of K is getting ready for the marriage of the King's daughter. However, in or ...

  3. POJ. 1005 I Think I Need a Houseboat(水 )

    POJ. 1005 I Think I Need a Houseboat(水 ) 代码总览 #include <cstdio> #include <cstring> #incl ...

  4. 从零开始学Linux系统(四)之Vi/Vim操作指令

    模式切换: 编辑模式 <-- [:]<--命令模式 -->[a.i.o A.I.O]-->  插入模式 编辑模式操作: 设置行号  :set nu   :set nonu 复制 ...

  5. bzoj1052: [HAOI2007]覆盖问题(二分+构造)

    貌似又写出了常数挺优(至少不劣)的代码>v< 930+人AC #49 写了个O(nlogn)貌似比一些人O(n)还快2333333 这题还是先二分答案,check比较麻烦 显然正方形一定以 ...

  6. 使用httpclient post请求中文乱码解决办法

    使用httpclient post请求中文乱码解决办法   在使用httpclient发送post请求的时候,接收端中文乱码问题解决. 正文: 我们都知道,一般情况下使用post请求是不会出现中文乱码 ...

  7. ubuntu16.04装chrome

    --更简单的方法是先下载chromium浏览器,这是不禁止的,然后打开chromium搜索chrome,chrome的官网下载即可   //安装好后,终端输入google-chrome即可打开 另一种 ...

  8. 清北学堂模拟赛d6t6 棋盘迷宫

    3.棋盘迷宫(boardgame.pas/c/cpp)(boardgame.in/out)时间限制:5s/空间限制:256M[题目描述]小 A 和小 Z 是非常要好的朋友, 而且他们都对迷宫游戏非常有 ...

  9. 重载(Overload)和重写(Override)的区别。重载的方法能否根据返回类型进行区分?

    方法的重载和重写都是实现多态的方式,区别在于前者实现的是编译时的多态性,而后者实现的是运行时的多态性.重载发生在一个类中,同名的方法如果有不同的参数列表(参数类型不同.参数个数不同或者二者都不同)则视 ...

  10. ASP.NET基础学习未整理随笔

    利用新建网站添加的项目可以改完代码直接刷新就行 提交到服务程序的表单一定要具有name.<input type="hidden"value="true"n ...