hadoop2.6.4集群的搭建
hadoop集群搭建(亲自操作成功步骤!值得信赖!)
1.1集群简介
hadoop的核心组件:
HDFS(分布式文件系统)
YARN(运算资源调度系统)
MapReduce(分布式运算编程框架)
HADOOP集群具体来说包含两个集群:HDFS集群和YARN集群,两者逻辑上分离,但物理上常在一起
HDFS集群:
负责海量数据的存储,集群中的角色主要有 NameNode / DataNode
YARN集群:
负责海量数据运算时的资源调度,集群中的角色主要有 ResourceManager /NodeManager
(那mapreduce是什么呢?它其实是一个应用程序开发包)
本集群搭建案例,以5节点为例进行搭建,角色分配如下:
|
hdp-node-01 NameNode SecondaryNameNode hdp-node-02 ResourceManager hdp-node-03 DataNode NodeManager hdp-node-04 DataNode NodeManager hdp-node-05 DataNode NodeManager |
部署图如下:

1.2服务器准备
本案例使用虚拟机服务器来搭建HADOOP集群,所用软件及版本:
Vmware 10.0
Centos 6.7 64bit
1.3网络环境准备
采用NAT方式联网
网关地址:192.168.33.1
3个服务器节点IP地址:192.168.33.201、192.168.33.202、192.168.33.203
子网掩码:255.255.255.0
1.4服务器系统设置
添加HADOOP用户
useradd hadoop
passwd hadoop
为HADOOP用户分配sudoer权限
su root
vi /etc/sudoers
hadoop ALL=(ALL)ALL
同步时间
设置主机名
hadoop1
hadoop2
hadoop3
配置内网域名映射:
192.168.33.201 hadoop1
192.168.33.202 hadoop2
192.168.33.203 hadoop3
配置ssh免密登陆
设置三个机器的本机免密登录(三台机器配置一样):
ssh-keygen -t rsa ---一直回车即可
cd /root/.ssh/ ---生成了公钥和私钥
cat id_rsa.pub >> authorized_keys ---将公钥追加到授权文件中
more authorized_keys ---可以查看到里面追加的公钥
ssh hadoop1
配置两两之间的免密登录:
将hadoop1中的公钥复制到hadoop2中ssh-copy-id -i hadoop2 验证一下:ssh hadoop2
将hadoop3中的公钥复制到hadoop2中ssh-copy-id -i hadoop2 验证一下:ssh hadoop2
这样hadoop2中的授权文件就有三个机器的公钥,再把hadoop2中的授权文件复制给hadoop1和hadoop3
scp /root/.ssh/authorized_keys hadoop1:/root/.ssh/
scp /root/.ssh/authorized_keys hadoop3:/root/.ssh/
这样就ok了!
关闭防火墙
#查看防火墙状态
service iptables status
#关闭防火墙
service iptables stop
#查看防火墙开机启动状态
chkconfig iptables --list
#关闭防火墙开机启动
chkconfig iptables off
1.5 Jdk环境安装
上传jdk安装包
规划安装目录 /usr/local/jdk
解压安装包
配置环境变量 /etc/profile
1.6 HADOOP安装部署
上传HADOOP安装包
规划安装目录 /usr/local/hadoop
解压安装包(编译后的hadoop压缩包)
tar -zxvf hadoop-2.6.4.tar.gz
配置环境变量 $HADOOP_HOME/bin:$HADOOP_HOME/sbin
修改配置文件 $HADOOP_HOME/etc/hadoop/
最简化配置如下:
vi hadoop-env.sh(修改)
|
# The java implementation to use. export JAVA_HOME=/usr/local/jdk |
vi core-site.xml
|
<configuration> <property> <name>fs.defaultFS</name> <value>hdfs://hadoop1:9000</value> 默认端口9000 </property> <property> <name>hadoop.tmp.dir</name> <value>/usr/local/hadoop/tmp</value> </property> </configuration> |
vi hdfs-site.xml(可以不用配置,全部使用默认值)
|
<configuration> <property> <name>dfs.namenode.name.dir</name> <value>/usr/local/hadoop/data/name</value> </property> <property> <name>dfs.datanode.data.dir</name> <value>/usr/local/hadoop/data/data</value> </property> <property> <name>dfs.replication</name> <value>3</value> 默认HDFS副本数为3个 </property> <property> <name>dfs.secondary.http.address</name> <value>hadoop1:50090</value> </property> </configuration> |
vi mapred-site.xml(重命名mv mapred-site.xml.template mapred-site.xml)
|
<configuration> <property> <name>mapreduce.framework.name</name> <value>yarn</value> 指定mapreduce运行在yarn平台上,默认为local </property> </configuration> |
vi yarn-site.xml
|
<configuration> <property> <name>yarn.resourcemanager.hostname</name> <value>hadoop1</value> 指定yarn的resourcemanager的地址 </property> <property> <name>yarn.nodemanager.aux-services</name> <value>mapreduce_shuffle</value> reducer获取数据的方式 </property> </configuration> |
把hadoop1中的jdk、hadoop文件夹复制到其他两个节点:
scp -r /usr/local/jdk hadoop2:/usr/local/
scp -r /usr/local/jdk hadoop3:/usr/local/
scp -r /usr/local/hadoop hadoop2:/usr/local/
scp -r /usr/local/hadoop hadoop3:/usr/local/
将hadoop1中的环境变量复制到其他两个节点中:
scp /etc/profile hadoop2:/etc/
scp /etc/profile hadoop3:/etc/
复制完了以后,在hadoop2和hadoop3中分别都执行source /etc/profile
vi slaves(/usr/local/hadoop/etc/hadoop/slaves写上从节点的主机名,slaves主要是为了自动化启动脚本使用的,不修改的话,hadoop集群照样能启动)
|
hadoop2 hadoop3 |
1.7 启动集群
初始化HDFS(hadoop1)
|
bin/hadoop namenode -format |

NameNode只能在hadoop1上启动,因为配置在hadoop1上
hadoop-daemon.sh start namenode
DataNode三个节点上都可以启动
Hadoop-daemon.sh start datanode
在hadoop1上,start-all.sh启动集群,可以jps,查看相关进程是否开启了。http://hadoop1:50070





启动HDFS
|
sbin/start-dfs.sh |
启动YARN
|
sbin/start-yarn.sh |
hadoop2.6.4集群的搭建的更多相关文章
- Hadoop-2.7.1集群环境搭建
摘自:http://blog.csdn.net/u014039577/article/details/49813531 由于日志数据量越来越大,数据处理的逻辑越来越复杂,同时还涉及到大量日志需要批处理 ...
- 分享一份关于Hadoop2.2.0集群环境搭建文档
目录 一,准备环境 三,克隆VM 四,搭建集群 五,Hadoop启动与测试 六,安装过程中遇到的问题及其解决方案 一,准备环境 PC基本配置如下: 处理器:Intel(R) Core(TM) i5-3 ...
- Hadoop-2.7.2集群的搭建——集群学习日记
前言 因为比赛的限制是使用Hadoop2.7.2,估在此文章下面的也是使用Hadoop2.7.2,具体下载地址为Hadoop2.7.2 开始的准备 目前在我的实验室上有三台Linux主机,因为需要参加 ...
- HBase0.99.2集群的搭建步骤(在hadoop2.6.4集群和zookeeper3.4.5集群上)
HBase介绍(NoSql,不是关系型数据库) HBase是一个高可靠性.高性能.面向列.可伸缩的分布式存储系统,利用HBASE技术可在廉价PC Server上搭建起大规模结构化存储集群. HBase ...
- CentOS6.4上搭建hadoop-2.4.0集群
公司Commerce Cloud平台上提供申请主机的服务.昨天试了下,申请了3台机器,搭了个hadoop环境.以下是机器的一些配置: emi-centos-6.4-x86_64medium | 6GB ...
- 懒人记录 Hadoop2.7.1 集群搭建过程
懒人记录 Hadoop2.7.1 集群搭建过程 2016-07-02 13:15:45 总结 除了配置hosts ,和免密码互连之外,先在一台机器上装好所有东西 配置好之后,拷贝虚拟机,配置hosts ...
- centos7 下搭建hadoop2.9 分布式集群
首先说明,本文记录的是博主搭建的3节点的完全分布式hadoop集群的过程,环境是centos 7,1个nameNode,2个dataNode,如下: 1.首先,创建好3个Centos7的虚拟机,具体的 ...
- hadoop2集群环境搭建
在查询了很多资料以后,发现国内外没有一篇关于hadoop2集群环境搭建的详细步骤的文章. 所以,我想把我知道的分享给大家,方便大家交流. 以下是本文的大纲: 1. 在windows7 下面安装虚拟机2 ...
- Kafka:ZK+Kafka+Spark Streaming集群环境搭建(十)安装hadoop2.9.0搭建HA
如何搭建配置centos虚拟机请参考<Kafka:ZK+Kafka+Spark Streaming集群环境搭建(一)VMW安装四台CentOS,并实现本机与它们能交互,虚拟机内部实现可以上网.& ...
随机推荐
- CentOS安装git及使用Gitolite来管理版本库
首先吐槽一下网上的各种教程,大部分都扯蛋,估计都是些所谓的"编辑"在网上瞎抄来的-- 以下内容都是基于CentOS的服务器端,Mac OS X的客户端. 如果是使用的Windows ...
- 【纪中集训2019.3.27】【集训队互测2018】小A的旅行(白)
题目 描述 \(0-n-1\)的图,满足\(n\)是\(2\)的整数次幂, $ i \to j $ 有 $ A_{i,j} $ 条路径: 一条路径的愉悦值定义为起点和终点编号的\(and\)值 ...
- opencv ---getRotationMatrix2D函数
getRotationMatrix2D函数 主要用于获得图像绕着 某一点的旋转矩阵 Mat getRotationMatrix2D(Point2f center, double angle, dou ...
- Hadoop生态圈-flume日志收集工具完全分布式部署
Hadoop生态圈-flume日志收集工具完全分布式部署 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 目前为止,Hadoop的一个主流应用就是对于大规模web日志的分析和处理 ...
- 用yaml来编写配置文件
yaml是一个数据序列化的标准,适用于所有开发语言,最大的特点是可读性好. yaml的一个主要应用方向就是编写配置文件,有非常多的系统和框架采用yaml进行配置. yaml有以下基本规则: 1.大小写 ...
- Codeforces 923 A. Primal Sport
http://codeforces.com/contest/923/problem/A 题意: 初始有一个x0,可以选择任意一个<x0的质数p,之后得到x1为≥x0最小的p的倍数 然后再通过x1 ...
- bzoj千题计划210:bzoj2642 | Poj3968 | UVALive 4992| hdu 3761 Jungle Outpost
http://www.lydsy.com/JudgeOnline/problem.php?id=2642 题意: n个瞭望台,形成一个凸n边形.这些瞭望台的保护范围是这个凸包内的任意点. 敌人进攻时, ...
- 蓝桥杯 算法提高 8皇后·改 -- DFS 回溯
算法提高 8皇后·改 时间限制:1.0s 内存限制:256.0MB 问题描述 规则同8皇后问题,但是棋盘上每格都有一个数字,要求八皇后所在格子数字之和最大. 输入格式 一个8*8 ...
- git的权威指南
CHENYILONG 博客 git的权威指南 全屏 © chenyilong.本站由Postach.io 博客
- Python super() 函数
super() 函数是用于调用父类(超类)的一个方法. super 是用来解决多重继承问题的,直接用类名调用父类方法在使用单继承的时候没问题,但是如果重定义某个方法,该方法会覆盖父类的同名方法,但有时 ...