作为大数据研发工程师基础技能,当开始着手 Hadoop课程教学时,安装 Hadoop 往往会成为新手的一道门槛。尽管安装其实很简单,书上有写到,官方网站也有 Hadoop 安装配置教程,但由于对 Linux 环境不熟悉,书上跟官网上简略的安装步骤新手往往 Hold 不住。加上网上不少教程也甚是坑,导致很多学生折腾老几天愣是没装好,或者看似配置好了,其实还是无法运行,很是打击学习热情。

环境

本教程使用 CentOS Linux release 7.4.1708 作为系统环境(Centos7.4 64位),请自行安装系统(可参考centos 7.4 详细安装图文教程 - ETl数据挖掘 - 大数据学习网)。

本教程基于原生 Hadoop 2,在 Hadoop 2.7.7 (stable) 版本下验证通过,可适合任何 Hadoop 2.x.y 版本,如 Hadoop 2.7.1、2.6.0、2.4.1等。

准备工作

任务1:安装配置JAVA 环境

具体详细安装步骤参考:centos 7.4 下安装Java1.8 - ETl数据挖掘 - 大数据学习网

任务2:配置SSH免密登录

(1)首先生成密钥对,使用命令:

ssh-keygen## 或者ssh-keygen -t rsa
上面一种是简写形式,提示要输入信息时不需要输入任何东西,直接回车三次即可。

从打印信息中可以看出,私钥id_rsa和公钥id_rsa.pub都已创建成功,并放在 /root/.ssh(隐藏文件夹(以.开头))目录中:

(2)将公钥放置到授权列表文件 authorized_keys中,使用命令:

cp id_rsa.pub authorized_keys

注意:一定要授权列表文件 authorized_keys写对,不能改名。

(3)修改授权列表文件 authorized_keys 的权限,使用命令:

chmod 600 authorized_keys

设置拥有者可读可写,其他人无任何权限(不可读、不可写、不可执行)。

(4)验证免密登录是否配置成功,使用如下命令:

ssh localhost  

安装 Hadoop

1. 进入到/opt/目录,解压Hadoop

cd /opt/
tar -zxvf hadoop-2.7.7.tar.gz -C /usr/local/hadoop

2. 配置Hadoop系统变量

(1) 首先打开/etc/profile文件(系统环境变量:对所有用户有效):

vim /etc/profile

(2) 在文件底部添加如下内容:

#HADOOP
export HADOOP_HOME=/usr/local/hadoop/hadoop-2.7.7
export PATH=$PATH:$HADOOP_HOME/bin:$HADOOP_HOME/sbin
export HADOOP_HOME_WARN_SUPPRESS=1 生效环境变量:source /etc/profile

3.配置HDFS

1. 配置环境变量hadoop-env.sh

打开hadoop-env.sh文件:

vi /usr/local/hadoop/hadoop-2.7.7/etc/hadoop/hadoop-env.sh

找到JAVA_HOME参数位置,修改为本机安装的JDK的实际位置

2. 配置核心组件core-site.xml

该文件是Hadoop的核心配置文件,其目的是配置HDFS地址、端口号,以及临时文件目录。使用如下命令打开“core-site.xml”文件:

vi /usr/local/hadoop/hadoop-2.7.7/etc/hadoop/core-site.xml

将下面的配置内容添加到 <configuration></configuration> 中间:

  <property><name>hadoop.tmp.dir</name><value>file:/usr/local/hadoop/tmp</value><description>Abase for other temporary directories.</description></property><property><name>fs.defaultFS</name><value>hdfs://node02:9000</value></property>

3. 配置文件系统hdfs-site.xml

该文件主要用于配置 HDFS 相关的属性,例如复制因子(即数据块的副本数)、NameNode 和 DataNode 用于存储数据的目录等。在完全分布式模式下,默认数据块副本是3 份。 使用如下命令打开“hdfs-site.xml”文件:

vi /usr/local/hadoop/hadoop-2.7.7/etc/hadoop/hdfs-site.xml 

将下面的配置内容添加到 <configuration></configuration> 中间:

    <property><name>dfs.replication</name><value>1</value></property><property><name>dfs.namenode.name.dir</name><value>file:/usr/local/hadoop/tmp/dfs/name</value></property><property><name>dfs.datanode.data.dir</name><value>file:/usr/local/hadoop/tmp/dfs/data</value></property>

4. 配置slaves文件(无需修改)

该文件用于记录Hadoop集群所有从节点(HDFS的DataNodeYARN的NodeManager所在主机)的主机名,用来配合一键启动脚本启动集群从节点(并且还需要保证关联节点配置了SSH免密登录)。

打开该配置文件:

vi /usr/local/hadoop/hadoop-2.7.7/etc/hadoop/slaves 

我们看到其默认内容为localhost,因为我们搭建的是伪分布式集群,就只有一台主机,所以从节点也需要放在此主机上,所以此配置文件无需修改

 5. 配置yarn配置环境变量yarn-env.sh,补全JAVA_HOME对应参数

该文件是YARN框架运行环境的配置,同样需要修改JDK所在位置。

使用如下命令打开“yarn-env.sh”文件:

vi /usr/local/hadoop/hadoop-2.7.7/etc/hadoop/yarn-env.sh 

找到JAVA_HOME参数位置,将前面的#去掉,将其值修改为本机安装的JDK的实际位置:

 6. 配置计算框架mapred-site.xml

在$HADOOP_HOME/etc/hadoop/目录中默认没有该文件,需要先通过如下命令将文件复制并重命名为“mapred-site.xml”:

cp mapred-site.xml.template mapred-site.xml

接着,打开“mapred-site.xml”文件进行修改:

vim /usr/local/hadoop/hadoop-2.7.7/etc/hadoop/mapred-site.xml

将下面的配置内容添加到 中间:

  <property><name>mapreduce.framework.name</name><value>yarn</value></property>

7. 配置YARN系统yarn-site.xml

本文件是YARN框架的核心配置文件,用于配置 YARN 进程及 YARN 的相关属性。

使用如下命令打开该配置文件:

vim /usr/local/hadoop/hadoop-2.7.7/etc/hadoop/yarn-site.xml

将下面的配置内容加入中间:

 <property><name>yarn.nodemanager.aux-services</name><value>mapreduce_shuffle</value></property>

8.格式化文件系统

hdfs namenode -format

9. 脚本一键启动hdfs

启动集群最常使用的方式是使用脚本一键启动,前提是需要配置 slaves 配置文件和 SSH免密登录。

  • 在本机上使用如下方式一键启动HDFS集群start-dfs.sh

在本机上执行 jps 命令,在打印结果中会看到4 个进程,分别是 NameNode、SecondaryNameNode、Jps、和DataNode,如果出现了这 4 个进程表示HDFS启动成功。

10. 启动集群

在本机上使用如下方式一键启动YARN集群:

start-yarn.sh

ps:start-dfs.sh和start-yarn.sh也是sbin目录下的脚本文件。

打印信息:

  • 在本机上启动了 ResourceManager守护进程

  • 在本机上启动了 NodeManager 守护进程

通过本机的浏览器访问http://本机名:8088或http://本机IP地址:8088查看YARN集群状态,效果如下图所示:

Hadoop安装教程_单机/伪分布式配置_Hadoop 2.7.7(2.7.7)/CentOS Linux release 7.4.1708相关推荐

  1. Hadoop安装教程_单机/伪分布式配置_Hadoop2.6.0/Ubuntu14.04

    给力星 追逐内心的平和 首页 笔记 搜藏 代码 音乐 关于 Hadoop安装教程_单机/伪分布式配置_Hadoop2.6.0/Ubuntu14.04 2014-08-09 (updated: 2016 ...

  2. Hadoop安装教程_单机/伪分布式配置_CentOS6.4/Hadoop2.6.0

    本 Hadoop 教程由厦门大学数据库实验室出品,转载请注明.本教程适合于在 CentOS 6.x 系统中安装原生 Hadoop 2,适用于Hadoop 2.7.1, Hadoop 2.6.0 等版本 ...

  3. Hadoop安装教程_单机/伪分布式配置_Hadoop2.6.0/Ubuntu16.04

    转自http://dblab.xmu.edu.cn/blog/install-hadoop/ 创建hadoop用户 创建了可以登陆的 hadoop 用户,并使用 /bin/bash 作为 shell, ...

  4. Hadoop安装教程_单机伪分布式配置_Hadoop2.6.0(2.7.1)Ubuntu14.04(16.04)

    本教程适合于原生 Hadoop 2,包括 Hadoop 2.6.0, Hadoop 2.7.1 等版本,主要参考了官方安装教程,步骤详细,辅以适当说明,相信按照步骤来,都能顺利安装并运行Hadoop. ...

  5. Ubuntu16.04/Hadoop3.1.3安装教程_单机/伪分布式配置

    Hadoop3.1.3安装教程_单机/伪分布式配置_Hadoop3.1.3/Ubuntu16.04.6 为了方便学习本教程,请读者们利用Linux系统中自带的firefox浏览器打开本指南进行学习. ...

  6. Hadoop3.1.3安装教程_单机/伪分布式配置_Hadoop3.1.3/Ubuntu18.04(16.04)

    厦门大学(林子雨老师)Hadoop3.1.3安装教程_单机/伪分布式配置_Hadoop3.1.3/Ubuntu18.04(16.04)

  7. ubuntu 安装java_Hadoop3.1.3安装教程_单机/伪分布式配置

    环境: 本教程使用 Ubuntu 18.04 64位 作为系统环境(或者Ubuntu 14.04,Ubuntu16.04 也行,32位.64位均可),请自行安装系统 装好了 Ubuntu 系统之后,在 ...

  8. Hadoop2.6.0安装教程_单机/伪分布式配置

    创建hadoop用户 如果你安装 Ubuntu 的时候不是用的 "hadoop" 用户,那么需要增加一个名为 hadoop 的用户. 输入如下命令创建新用户 : sudo user ...

  9. Hadoop安装教4程_单机/伪分布式配置_Hadoop2.6.0/Ubuntu14.0

    Hadoop安装教4程_单机/伪分布式配置_Hadoop2.6.0/Ubuntu14.0 当开始着手实践 Hadoop 时,安装 Hadoop 往往会成为新手的一道门槛.尽管安装其实很简单,书上有写到 ...

  10. Hadoop安装教程_伪分布式配置-Ubuntu-CentOS6(究极详细、厦门大学数据库实验室)

    Hadoop安装教程_伪分布式配置_CentOS6.4/Hadoop2.6.0 Hadoop安装教程_单机/伪分布式配置_Hadoop2.6.0(2.7.1)/Ubuntu14.04(16.04) 林 ...

最新文章

  1. ECharts简单的运行示列(固定数据和交互数据库)
  2. CheckBox的使用(一):onCheckedChanged事件
  3. 解读高效的神经架构搜索ENAS
  4. JavaScript教程之DOM和BOM
  5. Remoting系列专题---构建Remoting“防火墙”
  6. 小白学jquery Mobile《构建跨平台APP:jQuery Mobile移动应用实战》连载四(场景切换)...
  7. 为什么你跟高手有差距?因为他们会在假期里读这5本书
  8. github可视化工具_Github标星2.6K!微软开源的可视化工具,未免太酷炫了吧
  9. php 图片保存到本地文件,php 远程图片保存到本地的函数类
  10. C和C指针小记(五)-指针类型
  11. win8系统服务器地址怎么查,win8查询服务器地址
  12. Android技术知识点:如何添加字体资源
  13. ITIL学习(四) 服务、IT服务、服务台管理、IT服务管理
  14. 【IDEA】idea取消英语拼音提示绿色波浪线
  15. indexOf 的使用
  16. 佳博80系列小票打印机 gp 80180安装驱动,显示打印错误
  17. 冷战与战后东亚国际秩序:影响及后果
  18. gnuplot入门教程
  19. 操作系统之短作业优先实现代码
  20. 如何从产品层面做需求分析——产品定位

热门文章

  1. java 记账系统_案例分享用java开发实现一个记账系统(代码全)
  2. Unity2021.2.0版本汉化
  3. 2020家用千兆路由器哪款好_千兆路由器哪个好 2020年值得入手的家用千兆路由器推荐...
  4. 算法设计与分析(第2版)屈婉玲 刘田 张立昂 王捍贫编著 第三章课后习题答案
  5. 控制算法(二)—— 模糊控制算法
  6. 【基础教程】免疫算法【006期】
  7. Windows 批处理(bat)语法大全
  8. 常见手机定位方式浅谈
  9. 惠普nas服务器装系统,HP-Gen8轻松使用U盘引导安装黑群晖教程及工具程序
  10. 下载envi中遇到的问题