Hadoop-2.7.4 集群快速搭建
Hadoop简介
Hadoop是一个由Apache基金会所开发的分布式系统基础架构。
用户可以在不了解分布式底层细节的情况下,开发分布式程序。充分利用集群的威力进行高速运算和存储。
Hadoop实现了一个分布式文件系统(Hadoop Distributed File System),简称HDFS。HDFS有高容错性的特点,并且设计用来部署在低廉的(low-cost)硬件上;而且它提供高吞吐量(high throughput)来访问应用程序的数据,适合那些有着超大数据集(large data set)的应用程序。HDFS放宽了(relax)POSIX的要求,可以以流的形式访问(streaming access)文件系统中的数据。
Hadoop的框架最核心的设计就是:HDFS和MapReduce。HDFS为海量的数据提供了存储,则MapReduce为海量的数据提供了计算。
Hadoop
分布式存储系统HDFS (Hadoop Distributed File System )
- 分布式存储系统
- 提供了 高可靠性、高扩展性和高吞吐率的数据存储服务
分布式计算框架MapReduce
- 分布式计算框架
- 具有 易于编程、高容错性和高扩展性等优点。
HDFS优点
高容错性
- 数据自动保存多个副本
- 副本丢失后,自动恢复
适合批处理
- 移动计算而非数据
- 数据位置暴露给计算框架
适合大数据处理
- GB 、TB 、甚至PB 级数据
- 百万规模以上的文件数量
- 10K+ 节点
可构建在廉价机器上
- 通过多副本提高可靠性
- 提供了容错和恢复 机制
HDFS缺点
低延迟数据访问
- 比如毫秒级
- 低延迟与高吞吐率
小文件存取
- 占用NameNode 大量内存
- 寻道时间超过读取时间
并发写入、文件随机修改
- 一个文件只能有一个写者
- 仅支持append
准备工作
环境
JDK:1.8
Hadoop Release:2.7.4
centos:7.3 node1(master) 主机: 192.168.252.121
node2(slave1) 从机: 192.168.252.122
node3(slave2) 从机: 192.168.252.123
安装 JDK
CentOs7.3 安装 JDK1.8
创建用户
建议创建一个单独的用户Hadoop以从Unix文件系统隔离Hadoop文件系统
$ useradd hadoop
$ passwd hadoop
New password:
Retype new password:
授权 root 权限,在root
下面加一条hadoop
的hadoop ALL=(ALL) ALL
$ chmod 777 /etc/sudoers
$ vi /etc/sudoers
root ALL=(ALL) ALL
hadoop ALL=(ALL) ALL
$ pkexec chmod 0440 /etc/sudoers
免秘钥登录
SSH 免秘钥
CentOs7.3 Hadoop 用户 ssh 免密登录
安装
下载解压
在 ndoe1 上操作
su hadoop
cd /home/hadoop/
wget https://mirrors.tuna.tsinghua.edu.cn/apache/hadoop/common/hadoop-2.7.4/hadoop-2.7.4.tar.gz
tar -zxvf hadoop-2.7.4.tar.gz
环境变量
如果是对所有的用户都生效就修改vi /etc/profile
文件
如果只针对当前用户生效就修改 vi ~/.bahsrc
文件
sudo vi /etc/profile
#hadoop
export PATH=${HADOOP_HOME}/bin:$PATH
export HADOOP_HOME=/home/hadoop/hadoop-2.7.4/
使环境变量生效,运行 source /etc/profile
使/etc/profile
文件生效
配置Hadoop
进入hadoop 配置文件目录
cd /home/hadoop/hadoop-2.7.4/etc/hadoop/
编辑 hadoop-env.sh
文件,找到 JAVA_HOME
改为 JDK 的安装目录
sudo vi hadoop-env.sh
export JAVA_HOME=/lib/jvm
修改 core-site.xml
打开 core-site.xml文件并对其进行编辑,如下图所示。
vi core-site.xml
<configuration><property><name>fs.defaultFS</name><value>hdfs://node1:9000</value></property><property><name>hadoop.tmp.dir</name><value>file:/home/hadoop/hadoop-2.7.4/tmp</value></property>
</configuration>
修改 hdfs-site.xml
打开hdfs-site.xml文件并对其进行编辑,如下图所示。
vi hdfs-site.xml
<configuration><property><name>dfs.namenode.secondary.http-address</name><value>node1:50090</value></property><property><name>dfs.replication</name><value>2</value></property><property><name>dfs.namenode.name.dir</name><value>file:/home/hadoop/hadoop-2.7.4/tmp/dfs/name</value></property><property><name>dfs.datanode.data.dir</name><value>file:/home/hadoop/hadoop-2.7.4/tmp/dfs/data</value></property>
</configuration>
修改 mapred-site.xml
目录下么没有这个文件,这有一个模板,我们需要先拷贝一份
cp mapred-site.xml.template mapred-site.xml
vi mapred-site.xml
<configuration><property><name>mapreduce.framework.name</name><value>yarn</value></property><property><name>mapreduce.jobhistory.address</name><value>node1:10020</value></property><property><name>mapreduce.jobhistory.webapp.address</name><value>node1:19888</value></property>
</configuration>
修改 yarn-site.xml
vi yarn-site.xml
<configuration><!-- Site specific YARN configuration properties --><property><name>yarn.resourcemanager.hostname</name><value>node1</value></property><property><name>yarn.nodemanager.aux-services</name><value>mapreduce_shuffle</value></property>
</configuration>
配置集群
复制节点
将 hadoop-2.7.4 文件夹重打包后复制到其他子节点
cd /home/hadoop/tar zcvf hadoop.tar.gz hadoop-2.7.4
scp hadoop.tar.gz hadoop@node2:/home/hadoop/
scp hadoop.tar.gz hadoop@node3:/home/hadoop/
在其他子节点 解压
tar -zxvf hadoop.tar.gz
配置slaves文件
修改(Master主机)node1/etc/hadoop/slaves
该文件指定哪些服务器节点是datanode
节点。删除locahost
,添加所有datanode
节点的主机名
cd /home/hadoop/hadoop-2.7.4/etc/hadoop/[hadoop@node1 hadoop]$ cat slaves
node2
node3
集群操作
Format
格式化namenode和datanode并启动,(在master上执行就可以了 不需要在slave上执行)
cd /home/hadoop/hadoop-2.7.4/bin./hadoop namenode -format
./hadoop datanode -format
启动 hadoop
关闭防火墙
systemctl stop firewalld.service
cd /home/hadoop/hadoop-2.7.4/sbin./start-dfs.sh
./start-yarn.sh
./mr-jobhistory-daemon.sh start historyserver
或者
./start-all.sh./mr-jobhistory-daemon.sh start historyserver
查看进程服务
查看启动进程,缺少以下任一进程都表示出错
$ jps
2528 NameNode
2720 SecondaryNameNode
2872 ResourceManager
3151 JobHistoryServer
查看端口占用情况
netstat -tnlp | grep java
访问node1
http://192.168.252.121:50070
http://192.168.252.121:8088
停止 hadoop
cd /home/hadoop/hadoop-2.7.4/sbin./stop-all.sh
或者 jps 查看进程kill
掉
Hadoop-2.7.4 集群快速搭建相关推荐
- 【Hadoop生态圈】1.Hadoop入门教程及集群环境搭建
文章目录 1.简介 2.环境准备 3.安装hadoop 3.修改Hadoop配置文件 3.1.hadoop-env.sh配置 3.2.core-site.xml配置 3.3.hdfs-site.xml ...
- 云计算与大数据实验二 Hadoop的安装和集群的搭建
一.实验目的 理解Hadoop集群架构和工作原理 掌握Hadoop安装环境和步骤 掌握Hadoop安装过程的配置,集群的搭建和启动 二.实验内容 Hadoop安装和JDK环境准备 集群的搭建和启动 三 ...
- spark集群,kafka集群和zookeeper的docker集群快速搭建
准备操作 安装docker(宿主机) yum install docker (宿主机时centos用yum管理包) systemctl daemon-reload(重加载deamon服务,是docke ...
- 手把手教你搭建Hadoop生态系统伪分布式集群
Hello,我是 Alex 007,一个热爱计算机编程和硬件设计的小白,为啥是007呢?因为叫 Alex 的人太多了,再加上每天007的生活,Alex 007就诞生了. 手把手教你搭建Hadoop生态 ...
- 记Hadoop HA高可用性分布式集群搭建过程
为完成毕业设计中并行算法测试,在学习后,自己在虚拟机搭建了一个基于Hadoop的分布式集群,在这里做个记录,菜鸟首次写博客,已深夜,下面直接进入主题: 规划与说明 在hadoop集群中通常由两个Nam ...
- 大数据技术之Hadoop概述集群环境搭建常见错误解决等
Hadoop概述 文章目录 Hadoop概述 1. Hadoop是什么 2. Hadoop发展历史 4. Hadoop的优势 5. Hadoop组成 6. 大数据技术生态体系 7. 推荐系统框架图略图 ...
- 大数据介绍、集群环境搭建、Hadoop介绍、HDFS入门介绍
大数据介绍.集群环境搭建.Hadoop介绍.HDFS入门介绍 文章目录 大数据介绍.集群环境搭建.Hadoop介绍.HDFS入门介绍 1.课前资料 2.课程整体介绍 3.大数据介绍 3.1 什么是大数 ...
- (超详细)基于Zookeeper的Hadoop HA集群的搭建
基于Zookeeper的Hadoop HA集群的搭建 JunLeon--go big or go home 前言: 高可用(high availability,HA)指的是若当前工作中的机器宕机了,系 ...
- Python +大数据-Hadoop生态-Linux(二)-集群搭建和安装
Python +大数据-Hadoop生态-Linux(二)-集群搭建和安装 今日课程学习目标 1.掌握Linux用户.权限管理 2.掌握Linux常用系统命令 3.掌握服务器集群环境搭建 4.了解sh ...
最新文章
- 大学可以学前端开发_所有开发人员在大学中应该学习的东西
- python—函数实例一
- BZOJ1208[HNOI2004]宠物收养场——treap
- 树莓派3B+功耗测试、初体验、图形化配置树莓派3B+配置方法。Raspberry Pi 3B+测评...
- Spring松耦合的实现
- 成为中国最好的Magento开发公司
- (王道408考研数据结构)第一章绪论-第一节:数据结构的基本概念、三要素、逻辑结构和物理结构
- 结构型模式-装饰模式(扩展系统功能)
- 写好规范 Java 代码去大厂!
- 服务器常规维修与判断方法,服务器常规维修与判断方法88119.doc
- jquery中html()、text()、val()的区别与使用
- 毕设题目:Matlab语音情感识别
- turbo码书籍推荐
- 众包专访:快得难以想象!开源中国众包解决了团队开发的燃眉之急
- 图片标签及以图搜图场景应用
- 计算机类自主招生推荐信,自主招生推荐信范文15篇
- Android 中自定义ViewGroup实现流式布局的效果
- 2021年美赛解题思路汇总Final!!!
- 矩阵特征分解(svd)介绍及雅克比(Jacobi)方法实现特征值和特征向量的求解(C++/OpenCV/Eigen)
- 代码实现:圣诞树效果(易懂,必会)/用html实现圣诞树效果