摘要: 本文主要介绍搭建Hadoop、HBase、Zookeeper集群环境的搭建
一、基础环境准备

1、下载安装包(均使用当前最新的稳定版本,截止至2017年05月24日)

1)jdk-8u131

下载地址:Java SE Development Kit 8

2)hadoop-2.7.3

下载地址:Index of /apache/hadoop/common/hadoop-2.7.3

3)hbase-1.2.5

下载地址:Index of /apache/hbase/1.2.5

4)zookeeper-3.4.10

下载地址:Index of /apache/zookeeper/zookeeper-3.4.10

2、修改hosts文件(使用的三台集群主机默认IP为192.168.0.100、192.168.0.101、192.168.0.102)

vim /etc/hosts

添加以下信息

192.168.0.100 master
192.168.0.101 slave1
192.168.0.102 slave2
3、安装JDK

-- 解压jdk安装包

mkdir /usr/java

tar -zxvf jdk-8u131-linux-x64.tar.gx -C /usr/java

-- 拷贝jdk至slave1及slave2中

scp -r /usr/java slave1:/usr

scp -r /usr/java slave2:/usr

-- 设置jdk环境变量

vim /etc/environment

JAVA_HOME=/usr/java/jdk1.8.0_131
JRE_HOME=/usr/java/jdk1.8.0_131/jre

vim /etc/profile

export JAVA_HOME=/usr/java/jdk1.8.0_131
export JRE_HOME=${JAVA_HOME}/jre
export CLASSPATH=.:$JAVA_HOME/jre/lib/rt.jar:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar
export PATH=$PATH:$JAVA_HOME/bin
4、设置免密登陆

slave1

ssh-keygen -t rsa

cp ~/.ssh/id_rsa.pub ~/.ssh/slave1_id_rsa.pub

scp ~/.ssh/slave1_id_rsa.pub master:~/.ssh/

slave2

ssh-keygen -t rsa

cp ~/.ssh/id_rsa.pub ~/.ssh/slave2_id_rsa.pub

scp ~/.ssh/slave2_id_rsa.pub master:~/.ssh/

master

ssh-keygen -t rsa

cat ~/.ssh/id_rsa.pub >> ~/.ssh/authorized_keys

cat ~/.ssh/slave1_id_rsa.pub >> ~/.ssh/authorized_keys

cat ~/.ssh/slave2_id_rsa.pub >> ~/.ssh/authorized_kyes

-- 拷贝文件至slave1及slave2

scp ~/.ssh/authorized_keys slave1:~/.ssh

scp ~/.ssh/authorized_keys slave2:~/.ssh

5、关闭防火墙及SELINUX

-- 关闭防火墙

systemctl stop firewalld.service

systemctl disable firewalld.service

-- 关闭SELINUX

vim /etc/selinux/config

-- 注释掉

SELINUX=enforcing

SELINUXTYPE=targeted

-- 添加
SELINUX=disabled
二、Hadoop环境搭建

1、解压缩安装包及创建基本目录

tar -zxvf hadoop-2.7.3-x64.tar.gz -C /usr

cd /usr/hadoop-2.7.3

mkdir tmp logs hdf hdf/data hdf/name

2、修改hadoop配置文件

-- 修改 slaves 文件

vim /usr/hadoop-2.7.3/etc/hadoop/slaves

-- 删除 localhost,添加
slave1
slave2

-- 修改 core-site.xml 文件

vim /usr/hadoop-2.7.3/etc/hadoop/core-site.xml

-- 在 configuration 节点中添加以下内容

fs.default.name
hdfs://master:9000

hadoop.tmp.dir
file:/usr/hadoop-2.7.3/tmp

-- 修改 hdfs-site.xml 文件

vim /usr/hadoop-2.7.3/etc/hadoop/hdfs-site.xml

-- 在 configuration 节点添加以下内容

dfs.datanode.data.dir
/usr/hadoop-2.7.3/hdf/data
true

dfs.namenode.name.dir
/usr/hadoop-2.7.3/hdf/name
true

-- 修改 mapred-site.xml 文件

cp /usr/hadoop-2.7.3/etc/hadoop/mapred-site.xml.template /usr/hadoop-2.7.3/etc/hadoop/mapred-site.xml

vim /usr/hadoop-2.7.3/etc/hadoop/mapred-site.xml

-- 在 configuration 节点添加以下内容

mapreduce.framework.name
yarn

mapreduce.jobhistory.address
master:10020

mapreduce.jobhistory.webapp.address
master:19888

-- 修改 yarn-site.xml 文件

vim /usr/hadoop-2.7.3/etc/hadoop/yarn-site.xml

-- 在 configuration 节点添加以下内容

yarn.nodemanager.aux-services.mapreduce.shuffle.class
org.apache.mapred.ShuffleHandler

yarn.resourcemanager.address
master:8032

yarn.resourcemanager.scheduler.address
master:8030

yarn.resourcemanager.resource-tracker.address
master:8031

yarn.resourcemanager.admin.address
master:8033

yarn.resourcemanager.webapp.address
master:8088

3、复制hadoop到slave节点

scp -r /usr/hadoop-2.7.3 slave1:/usr

scp -r /usr/hadoop-2.7.3 slave2:/usr

4、配置 master 和 slave 的 hadoop 环境变量

vim /etc/profile

-- 添加如下内容
export HADOOP_HOME=/usr/hadoop-2.7.3
export PATH=$HADOOP_HOME/bin:$HADOOP_HOME/sbin:$PATH
export HADOOP_LOG_DIR=/usr/hadoop-2.7.3/logs
export YARN_LOG_DIR=$HADOOP_LOG_DIR

-- 保存后执行

source /etc/profile

vim ~/.bashrc

-- 添加如下内容
export HADOOP_PREFIX=/usr/hadoop-2.7.3/
5、格式化 namenode

/usr/hadoop-2.7.3/sbin/hdfs namenode -format

6、启动 hadoop

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

到这一步已经成功完成了hadoop环境的搭建

三、Zookeeper环境搭建

1、解压缩 zookeeper 安装包,并建立基本目录

tar -zxvf zookeeper-3.4.10.tar.gz -C /usr

mkdir /usr/zookeeper-3.4.10/data

2、修改配置文件

-- 复制配置文件模板

cp /usr/zookeeper-3.4.10/conf/zoo-sample.cfg /usr/zookeeper-3.4.10/conf/zoo.cfg

-- 修改配置文件

vim /usr/zookeeper-3.4.10/conf/zoo.cfg

-- 添加如下内容
dataDir=/usr/zookeeper-3.4.10/data
server.1=master:2888:3888
server.2=slave1:2888:3888
server.3=slave2:2888:3888

-- 创建myid文件(master、slave1、slave2均需更新)

touch /usr/zookeeper-3.4.10/data/myid

vim /usr/zookeeper-3.4.10/myid

-- 添加如下内容
1(master节点添加)
2(slave2节点添加)
3(slave3节点添加)
3、启动zookeeper

-- master、slave1、slave2增需要执行

cd /usr/zookeeper-3.4.10/bin

./zkServer.sh start

./zkServer.sh status

到这一步完成了zookeeper环境的搭建

四、HBase环境搭建

1、解压缩hbase安装包

tar -zxvf hbase-1.2.5-bin.star.gz -C /usr

mkdir /usr/hbase-1.2.5-bin/logs

2、修改配置文件

vim /usr/hbase-1.2.5/conf/hbase-env.sh

-- 添加如下内容
export JAVA_HOME=/usr/java/jdk1.8.0_131
export HBASE_LOG_DIR=${HBASE_HOME}/logs
export HBASE_MANAGES_ZK=false
3、修改regionservers

vim /usr/hbase-1.2.5/conf/regionservers

-- 删除localhost,新增如下内容
master
slave1
slave2
4、修改配置文件

vim /usr/hbase-1.2.5/conf/hbase-site.xml

-- 在configuration节点下添加如下内容

hbase.rootdir
hdfs://master:9000/hbase

hbase.cluster.distributed
true

hbase.zookeeper.quorum
master,slave1,slave2

hbase.zookeeper.property.dataDir
/usr/zookeeper-3.4.10/data

hbase.master
hdfs://master:60000

5、复制hbase到slave中

scp -r /usr/hbase-1.2.5 slave1:/usr

scp -r /usr/hbase-1.2.5 slave2:/usr

6、启动hbase

/usr/hbase-1.2.5/bin/start-hbase.sh

到这一步hbase环境搭建完成

CentOS7搭建 Hadoop + HBase + Zookeeper集群的更多相关文章

  1. [推荐]Hadoop+HBase+Zookeeper集群的配置

    [推荐]Hadoop+HBase+Zookeeper集群的配置 Hadoop+HBase+Zookeeper集群的配置  http://wenku.baidu.com/view/991258e881c ...

  2. ZooKeeper1 利用虚拟机搭建自己的ZooKeeper集群

    前言:       前段时间自己参考网上的文章,梳理了一下基于分布式环境部署的业务系统在解决数据一致性问题上的方案,其中有一个方案是使用ZooKeeper,加之在大数据处理中,ZooKeeper确实起 ...

  3. 用三台虚拟机搭建Hadoop全分布集群

    用三台虚拟机搭建Hadoop全分布集群 所有的软件都装在/home/software下 虚拟机系统:centos6.5 jdk版本:1.8.0_181 zookeeper版本:3.4.7 hadoop ...

  4. Hadoop(三)手把手教你搭建Hadoop全分布式集群

    前言 上一篇介绍了伪分布式集群的搭建,其实在我们的生产环境中我们肯定不是使用只有一台服务器的伪分布式集群当中的.接下来我将给大家分享一下全分布式集群的搭建! 其实搭建最基本的全分布式集群和伪分布式集群 ...

  5. Hadoop(三)搭建Hadoop全分布式集群

    原文地址:http://www.cnblogs.com/zhangyinhua/p/7652686.html 阅读目录(Content) 一.搭建Hadoop全分布式集群前提 1.1.网络 1.2.安 ...

  6. 『实践』VirtualBox 5.1.18+Centos 6.8+hadoop 2.7.3搭建hadoop完全分布式集群及基于HDFS的网盘实现

    『实践』VirtualBox 5.1.18+Centos 6.8+hadoop 2.7.3搭建hadoop完全分布式集群及基于HDFS的网盘实现 1.基本设定和软件版本 主机名 ip 对应角色 mas ...

  7. ZooKeeper学习之路 (九)利用ZooKeeper搭建Hadoop的HA集群

    Hadoop HA 原理概述 为什么会有 hadoop HA 机制呢? HA:High Available,高可用 在Hadoop 2.0之前,在HDFS 集群中NameNode 存在单点故障 (SP ...

  8. 基于 ZooKeeper 搭建 Hadoop 高可用集群

    一.高可用简介 二.集群规划 三.前置条件 四.集群配置 五.启动集群 六.查看集群 七.集群的二次启动 一.高可用简介 Hadoop 高可用 (High Availability) 分为 HDFS ...

  9. Hadoop 学习之路(八)—— 基于ZooKeeper搭建Hadoop高可用集群

    一.高可用简介 Hadoop 高可用 (High Availability) 分为 HDFS 高可用和 YARN 高可用,两者的实现基本类似,但 HDFS NameNode 对数据存储及其一致性的要求 ...

随机推荐

  1. HDU 1569 方格取数(2)(最大流最小割の最大权独立集)

    Description 给你一个m*n的格子的棋盘,每个格子里面有一个非负数. 从中取出若干个数,使得任意的两个数所在的格子没有公共边,就是说所取数所在的2个格子不能相邻,并且取出的数的和最大.   ...

  2. Python中变量名里面的下划线

    1 变量名前后都有两个下划线(__X__),表示是系统级变量: 2 变量名前只有一个下划线(_X),表示该变量不是由from module import *导入进来的: 3 变量名前有两个下划线(__ ...

  3. Acm hust 1.25

    闲着无聊做了点hust上 acm的训练题 A题 http://acm.hust.edu.cn/vjudge/contest/view.action?cid=104738#problem/A 看了20分 ...

  4. # ML学习小笔记—Classification

    关于本课程的相关资料http://speech.ee.ntu.edu.tw/~tlkagk/courses_ML17.html 通过模型可以分类输入,此时根据分类结果的正确与否会有一个Loss函数.找 ...

  5. Divide two integers without using multiplication, division and mod operator.

    描述 不能使用乘法.除法和取模(mod)等运算,除开两个数得到结果,如果内存溢出则返回Integer类型的最大值.解释一下就是:输入两个数,第一个数是被除数dividend,第二个是除数divisor ...

  6. OnDraw和Opanit的区别

    OnPaint是WM_PAINT消息的消息处理函数,在OnPaint中调用OnDraw,一般来说,用户自己的绘图代码应放在OnDraw中.  OnPaint() 是CWnd的类成员,负责响应WM_PA ...

  7. vue-cli项目里npm安装使用elementUI

    第一步:进入到项目目录里 npm i element-ui -S 第二步:在main.js中引入 import ElementUI from 'element-ui' import 'element- ...

  8. C# 饼形图

    原文链接:https://www.cnblogs.com/icyJ/archive/2012/10/08/Chart_Pie.html 需要实现的目标是: 1.将数据绑定到pie的后台数据中,自动生成 ...

  9. Thread.Sleep(0)

    理解Thread.Sleep函数 我们可能经常会用到 Thread.Sleep 函数来使线程挂起一段时间.那么你有没有正确的理解这个函数的用法呢? 思考下面这两个问题: 1.假设现在是 2008-4- ...

  10. 从实战角度浅析snmp

    Snmp  Simple Network Management Protocol Snmp最终是为五花八门的网管软件服务的,由于接触的网管软件较少,所以对snmp的理解至今还仅限于初级配置阶段.以下言 ...