Hadoop安装与配置详细教程_安装hadoop安装详细步骤-程序员宅基地

技术标签: + Hadoop  Hadoop  

【确保服务器集群安装和配置已经完成!】

前言

请根据读者的自身情况,进行相应随机应变。

我的三台CentOS7服务器:
主机:master(192.168.56.110)
从机:slave0(192.168.56.111)
从机:slave1(192.168.56.112)

每一个节点的安装与配置是相同的,在实际工作中,通常在master节点上完成安装和配置后,然后将安装目录复制到其他节点就可以,没有必要把所有节点都配置一遍,那样没有效率。

注意:所有操作都是root用户权限

下载Hadoop安装包

Hadoop官网:http://hadoop.apache.org/
我这里用的Hadoop版本下载地址:http://archive.apache.org/dist/hadoop/core/hadoop-2.7.5/

解压Hadoop安装包(只在master做)

确保network网络已经配置好,使用Xftp等类似工具进行上传,把hadoop-2.7.5.tar.gz上传到/opt/hadoop目录内。
上传完成后,在master主机上执行以下代码:

cd /opt/hadoop

进入/opt/hadoop目录后,执行解压缩命令:

tar -zxvf hadoop-2.7.5.tar.gz

回车后系统开始解压,屏幕会不断滚动解压过程,执行成功后,系统在hadoop目录自动创建hadoop-2.7.5子目录。

然后修改文件夹名称为“hadoop”,即hadoop安装目录,执行修改文件夹名称命令:

mv hadoop-2.7.5 hadoop

注意:也可用Xftp查看相应目录是否存在,确保正确完成。

我们进入安装目录,查看一下安装文件,如果显示如图文件列表,说明压缩成功
在这里插入图片描述

配置env文件(只在master做)

请先看如下命令(并且记住它们,后续操作大量用到,并且不再赘述):
A. 进入编辑状态:insert
B. 删除:delete
C. 退出编辑状态:ctrl+[
D. 进入保存状态:ctrl+]
E. 保存并退出:" :wq " 注意先输入英文状态下冒号
F. 不保存退出:" :q! " 同上

大概执行顺序:A→B→C→D→E

配置jdk文件
执行命令:

vi /opt/hadoop/hadoop/etc/hadoop/hadoop-env.sh

找到 “ export JAVA_HOME ” 这行,用来配置jdk路径

修改为:export JAVA_HOME=/usr/local/java/jdk1.8.0_162/
在这里插入图片描述

配置核心组件文件(只在master做)

Hadoop的核心组件文件是core-site.xml,位于/opt/hadoop/hadoop/etc/hadoop子目录下,用vi编辑core-site.xml文件,需要将下面的配置代码放在文件的<configuration>和</configuration>之间。

执行编辑core-site.xml文件的命令:

vi /opt/hadoop/hadoop/etc/hadoop/core-site.xml

需要在<configuration>和</configuration>之间加入的代码:

<property>
		<name>fs.defaultFS</name>
		<value>hdfs://master:9000</value>
	</property>
	<property>
		<name>hadoop.tmp.dir</name>
		<value>/opt/hadoop/hadoopdata</value>
</property>

编辑完成后,退出并保存即可!

配置文件系统(只在master做)

Hadoop的文件系统配置文件是hdfs-site.xml,位于/opt/hadoop/hadoop/etc/hadoop子目录下,用vi编辑该文件,需要将以下代码放在文件的<configuration>和</configuration>之间。

执行编辑hdfs-site.xml文件的命令:

vi /opt/hadoop/hadoop/etc/hadoop/hdfs-site.xml

需要在<configuration>和</configuration>之间加入的代码:

<property>
		<name>dfs.replication</name>
		<value>1</value>
</property>

编辑完成后,退出保存即可!

配置 yarn-site.xml 文件(只在master做)

Yarn的站点配置文件是yarn-site.xml,位于/opt/hadoop/hadoop/etc/hadoop子目录下,依然用vi编辑该文件,将以下代码放在文件的<configuration>和</configuration>之间。

执行编辑yarn-site.xml文件的命令:

vi /opt/hadoop/hadoop/etc/hadoop/yarn-site.xml

需要在<configuration>和</configuration>之间加入的代码:

<property>
	<name>yarn.nodemanager.aux-services</name>
	<value>mapreduce_shuffle</value>
</property>
<property>
	<name>yarn.resourcemanager.address</name>
	<value>master:18040</value>
</property>
<property>
	<name>yarn.resourcemanager.scheduler.address</name>
	<value>master:18030</value>
</property>
<property>
	<name>yarn.resourcemanager.resource-tracker.address</name>
	<value>master:18025</value>
</property>
<property>
	<name>yarn.resourcemanager.admin.address</name>
	<value>master:18141</value>
</property>
<property>
	<name>yarn.resourcemanager.webapp.address</name>
	<value>master:18088</value>
</property>

配置MapReduce计算框架文件(只在master做)

在/opt/hadoop/hadoop/etc/hadoop子目录下,系统已经有一个mapred-site.xml.template文件,我们需要将其复制并改名,位置不变。

执行复制和改名操作命令:

cp /opt/hadoop/hadoop/etc/hadoop/mapred-site.xml.template /opt/hadoop/hadoop/etc/hadoop/mapred-site.xml

然后用vi编辑mapred-site.xml文件,需要将下面的代码填充到文件的<configuration>和</configuration>之间。

执行命令:

vi /opt/hadoop/hadoop/etc/hadoop/mapred-site.xml

需要在<configuration>和</configuration>之间加入的代码:

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

编辑完毕,保存退出即可!

配置master的slaves文件(只在master做)

slaves文件给出了Hadoop集群的slave节点列表,该文件十分的重要,因为启动Hadoop的时候,系统总是根据当前slaves文件中的slave节点名称列表启动集群,不在列表中的slave节点便不会被视为计算节点。

执行编辑slaves文件命令:

vi /opt/hadoop/hadoop/etc/hadoop/slaves

注意:用vi编辑slaves文件,应该根据读者您自己所搭建集群的实际情况进行编辑。
例如:我这里已经安装了slave0和slave1,并且计划将它们全部投入Hadoop集群运行。

所以应当加入以下代码:

slave0
slave1

注意:删除slaves文件中原来localhost那一行!

复制master上的Hadoop到slave节点(只在master做)

通过复制master节点上的hadoop,能够大大提高系统部署效率,假设我们有200台需要配置…笔者岂不白头

由于我这里有slave0和slave1,所以复制两次。

复制命令:

scp -r /opt/hadoop root@slave0:/opt
scp -r /opt/hadoop root@slave1:/opt

Hadoop集群的启动-配置操作系统环境变量(三个节点都做)

回到用户目录命令:

cd /opt/hadoop

然后用vi编辑.bash_profile文件,命令:

vi ~/.bash_profile

最后把以下代码追加到文件的尾部:

#HADOOP
export HADOOP_HOME=/opt/hadoop/hadoop
export PATH=$HADOOP_HOME/bin:$HADOOP_HOME/sbin:$PATH

保存退出后,执行命令:

source ~/.bash_profile

source ~/.bash_profile命令是使上述配置生效

提示:在slave0和slave1使用上述相同的配置方法,进行三个节点全部配置。

创建Hadoop数据目录(只在master做)

创建数据目录,命令是:

mkdir /opt/hadoop/hadoopdata

通过Xftp可查看该hadoopdata

格式化文件系统(只在master做)

执行格式化文件系统命令:

hadoop namenode -format

启动和关闭Hadoop集群(只在master做)

首先进入安装主目录,命令是:

cd /opt/hadoop/hadoop/sbin

提示:目前文件位置可在Xshell顶部栏观察

然后启动,命令是:

start-all.sh

执行命令后,系统提示 ” Are you sure want to continue connecting(yes/no)”,输入yes,之后系统即可启动。
注意:可能会有些慢,千万不要以为卡掉了,然后强制关机,这是错误的。

如果要关闭Hadoop集群,可以使用命令:

stop-all.sh

下次启动Hadoop时,无须NameNode的初始化,只需要使用start-dfs.sh命令即可,然后接着使用start-yarn.sh启动Yarn。

实际上,Hadoop建议放弃(deprecated)使用start-all.sh和stop-all.sh一类的命令,而改用start-dfs.sh和start-yarn.sh命令。

验证Hadoop集群是否启动成功

读者您可以在终端执行jps命令查看Hadoop是否启动成功。

在master节点,执行:

jps

如果显示:SecondaryNameNode、 ResourceManager、 Jps 和NameNode这四个进程,则表明主节点master启动成功
在这里插入图片描述
然后分别在slave0和slave1节点下执行命令:

jps

如果成功显示:NodeManager、Jps 和 DataNode,这三个进程,则表明从节点(slave0和slave1)启动成功
在这里插入图片描述

写在后面

如果觉得本文帮助了你,还请高抬贵手赠予 uh5 项目 一个 Star。

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/weixin_44198965/article/details/89603788

智能推荐

C++:重定义:符号重定义:变量重定义(二):解决变量重定义(const static)_const变量和普通变量会重定义吗-程序员宅基地

文章浏览阅读1.7k次,点赞2次,收藏2次。C++:重定义:符号重定义:变量重定义(二):解决变量重定义_const变量和普通变量会重定义吗

EndNote登录出现的一个问题_平板上的endnote注册显示not valid-程序员宅基地

文章浏览阅读1.5w次,点赞11次,收藏5次。EndNote登录出现的一个问题之前在电脑上装了个EndNoteX9,然后就想把自己在另一个电脑上整理的一些文献同步到现在这个电脑上,结果同步的时候发现莫名其妙自己的账户名和密码无效,这给我气的,立马去百度查咋回事,结果没找到原因;然后一直保持了很久不能同步的状态,昨天又想到这个事情,狠了狠心卸载,然后下了个20重装;果然还是不行:点Sync Status就显示 ‘The Username/password specified is not valid’;然后各种试:先是看看密码错了没,重新输_平板上的endnote注册显示not valid

HBuilder各种快捷键-程序员宅基地

文章浏览阅读534次。另外还有一些实用的组合键:Alt+T→V  (检验语法文档)Alt+L→H  (代码历史版本)Hbuilder也要吐槽一下:1.打开相对慢。2.新建文件,为什么不能存放到电脑的目录。3.emmet输入 w100,变成了w1→white-space: ;,弄得每次都要w→Tab→再输入100px,这个体验超级繁琐。4.style,script标签默认就不要带'type=*..._builder快速打出1-100

win10+ ubuntu12.04双系统安装教程与遇到的问题-程序员宅基地

文章浏览阅读149次。1. 准备ISO。 参考:网站http://mirrors.ustc.edu.cn/ubuntu-releases/precise/ 下载ubuntu-12.04.5-desktop-amd64.iso2. 按照教程安装。 参考:https://jingyan.baidu.com/article/60ccbceb18624464cab197ea.html3...._windows10 ubuntu12.04

How can I check if one string contains another substring in JavaScript?_c++ upcoj-5529 lozinke-程序员宅基地

文章浏览阅读567次。http://stackoverflow.com/questions/1789945/how-can-i-check-if-one-string-contains-another-substring-in-javascriptvar s = "foo";alert(s.indexOf("oo") > -1);_c++ upcoj-5529 lozinke

Vue钩子函数中的this为什么能指向Vue的实例而不是指向传入的参数options(Vue源码解读)_res = args ? handler.apply(context, args) : handle-程序员宅基地

文章浏览阅读1.6k次。起因先看一段Vue的代码,在Vue的原型链上增加了一个setData方法,然后实例化Vue对象,传入一个Object类型的参数Vue.prototype.setData = function (key, val) { if (this.data) { this.data[key] = val } else { this.data = { [key]: ..._res = args ? handler.apply(context, args) : handler.call(context);

随便推点

西门子TIA V17发布,附下载链接<EKB>_wincccomfort v17百度网盘-程序员宅基地

文章浏览阅读7.5k次。3 Startdrive V16相关下载链接可以通过如下网址获取软件和相关的手册信息:Startdrive V16 下载地址:https://support.industry.siemens.com/cs/af/en/view/109771710Startdrive V17下载地址:链接:https://pan.baidu.com/s/1jw3N_yjQ1jYefRd8dxgvdQ提取码:JNBSS120 Start..._wincccomfort v17百度网盘

Linux Camera Driver(1):简介_rv1126 dts 配置双目-程序员宅基地

文章浏览阅读4.1k次,点赞3次,收藏18次。Sensor驱动(具有Media Controller属性)位于kernel/drivers/media/i2c目录。Sensor驱动与RKCIF或者RKISP驱动最大程度上独立,二者异步注册,在dts中由remote-endpoint声明连接关系。Sensor一般作为Sub Device并通过pad与rkcif,rkisp或者MIPI Dphy驱动链接在一起。按照datasheet编写上电时序,主要包括vdd,reset,powerdown,clk等。_rv1126 dts 配置双目

记录spring-cloud-gateway获取post请求body参数,以及后端服务处理后的响应参数过程 gateway:2.2.0.RELEASE_spring-cloud gatway post 请求转义-程序员宅基地

文章浏览阅读6.3k次,点赞2次,收藏29次。介绍一下框架版本spring-boot:2.2.1.RELEASEspring-cloud:Hoxton.RELEASE(2.2.0.RELEASE)spring-cloud-gateway:2.2.0.RELEASE在网上找了很多版本的代码,不起作用,要么获取不到body数据,要么重新封装request到后端服务,报文丢失或者最大1024b数据,而且代码繁琐。之前参考京东大神的代码,挨着试了一遍,发现版本不对,已经不能用了,附上链接https://blog.csdn.net/tianya_spring-cloud gatway post 请求转义

istio简介和基础组件原理(服务网格Service Mesh)-程序员宅基地

文章浏览阅读7.2w次,点赞49次,收藏340次。Istio简介 Istio:一个连接,管理和保护微服务的开放平台。 按照isito文档中给出的定义: Istio提供一种简单的方式来建立已部署的服务的网络,具备负载均衡,服务到服务认证,监控等等功能,而不需要改动任何服务代码。简单的说,有了Istio,你的服务就不再需要任何微服务开发框架(典型如Spring Cloud,Dubbo),也不再需要自己手动实现各种复杂的服务..._istio

C# ListView简单示例_c#listview样例-程序员宅基地

文章浏览阅读3.8k次,点赞7次,收藏47次。ListView是用于显示数据的,先在窗体中拉一个lisview控件,还有一些新增、修改、删除、查询按钮和文本框,控件名称为listview,按钮为btnInsert,btnUpate,btnDeleteOne,btnDelete,btnSelect,文本框的名称为txtName,txtSex,txtPhone,txtAddress,设计如下图所示:把listview的View改为Details,添加几项:具体代码using System;using System.Collections.Gene_c#listview样例

hive 编写sql实现每个用户截止到每月为止的最大单月访问次数和累 计到该月的总访问次数_sql题目截止到当月的最大和累计-程序员宅基地

文章浏览阅读2.6k次,点赞3次,收藏11次。1.1 编写sql实现每个用户截止到每月为止的最大单月访问次数和累 计到该月的总访问次数userid,month,visitsA,2015-01,5A,2015-01,15B,2015-01,5A,2015-01,8B,2015-01,25A,2015-01,5A,2015-02,4A,2015-02,6B,2015-02,10B,2015-02,5A,2015-03,16..._sql题目截止到当月的最大和累计