linux安装Hadoop-3.1.3-单机/伪分布(图文详细版)

linux安装Hadoop-3.1.3-单机/伪分布

0、官方下载地址

[Apache Hadoop下载地址](https://hadoop.apache.org/releases.html)

[Apache Hadoop历史版本](https://archive.apache.org/dist/hadoop/common/)

一、前提准备

1.1 免密登录本机

登录本机:ssh localhost

输入密码,成功后退出登录:exit

如果这一步失败,请先执行上面登录本机步骤:cd ~/.ssh/

会有提示,都按回车就可以:ssh-keygen -t rsa

加入授权* :cat ./id_rsa.pub >> ./authorized_keys

再一次实验登录本机,发现可以直接登录不用密码了:ssh localhost

2.2 jdk的安装,参照博主另一篇文章linux的JDK安装

查看jdk是否安装成功:java -version

如果没有安装jdk,记得安装。建议卸载自带的openjdk

在这里插入图片描述

二、Hadoop单机配置(非分布式)

1、上传文件
  • 使用工具上传

  • 命令行上传 scp hadoop-3.1.3.tar.gz user@192.168.10.133:/home/user

2、解压hadoop压缩包

tar -zxvf hadoop-3.1.3.tar.gz

3、创建hadoop目录

sudo mkdir /usr/local/hadoop

4、移动到hadoop

sudo mv hadoop-3.1.3 /usr/local/hadoop/

5、进入local目录

cd /usr/local/hadoop

6、将hadoop权限给user

sudo chown -R user:user hadoop-3.1.3/

7、查看hadoop是否可以使用

/usr/local/hadoop/hadoop-3.1.3/bin/hadoop version

输入hadoop版本即可代表hadoop可以使用

在这里插入图片描述

Hadoop 默认模式为非分布式模式(本地模式),无需进行其他配置即可运行。非分布式即单 Java 进程,方便进行调试。

三、Hadoop伪分布安装,配置 HDFS

说明:

Hadoop 可以在单节点上以伪分布式的方式运行,Hadoop 进程以分离的 Java 进程来运行,节点既作为 NameNode 也作为 DataNode,同时,读取的是 HDFS 中的文件。
Hadoop 的配置文件位于 /usr/local/hadoop/etc/hadoop/ 中,伪分布式需要修改2个配置文件 core-site.xml 和 hdfs-site.xml 。Hadoop的配置文件是 xml 格式,每个配置以声明 property 的 name 和 value 的方式来实现。

3.1 修改配置文件 core-site.xml

进入目录:cd /usr/local/hadoop/hadoop-3.1.3/etc/hadoop

修改文件:sudo vim ./core-site.xml

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

3.2 修改配置文件 hdfs-site.xml

sudo vim ./hdfs-site.xml

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

3.3 执行NameNode的格式化

cd /usr/local/hadoop/hadoop-3.1.3
./bin/hdfs namenode -format

在这里插入图片描述

显示 “successfully formatted” 和 “Exitting with status 0” 的提示,便成功了,否则显示 “Exitting with status 1” 就是出错。

3.4 开启NameNode 、DataNode守护进程

cd /usr/local/hadoop/hadoop-3.1.3
./bin/hdfs namenode -format
报错:

如果出现以下错误

在这里插入图片描述

关闭程序: ./sbin/stop-dfs.sh

cd /usr/local/hadoop/hadoop-3.1.3/etc/hadoop

sudo vim hadoop-env.sh

在上面加上以下

export JAVA_HOME=/usr/local/jdk/jdk1.8.0_351
export HADOOP=/usr/local/hadoop/hadoop-3.1.3
export PATH=$PATH:/usr/local/hadoop/hadoop-3.1.3/bin

同时删除tmp文件夹中的内容

cd /usr/local/hadoop/hadoop-3.1.3/tmp

执行初始化:

cd /usr/local/hadoop/hadoop-3.1.3
./bin/hdfs namenode -format

过程中可能会输入Y/N,大小写最好和他一样

再次启动
cd /usr/local/hadoop/hadoop-3.1.3
./sbin/start-dfs.sh

jps  #输入jps看是否全部启动

在这里插入图片描述

3.5 Web 界面查看 NameNode 和 Datanode 信息

还可以在线查看 HDFS 中的文件

Hadoop2.x 为 http://localhost:50070

Hadoop3.x 已改为http://localhost:9870 http://192.168.10.128:9870

在这里插入图片描述

3.6 启动 YARN 来负责资源管理与任务调度

启动 YARN 有个好处是可以通过 Web 界面查看任务的运行情况

YARN:YARN 是从 MapReduce 中分离出来的,负责资源管理与任务调度。YARN 运行于 MapReduce 之上,提供了高可用性、高扩展性,YARN 的更多介绍在此不展开,有兴趣的可查阅相关资料。
上述通过 ./sbin/start-dfs.sh 启动 Hadoop,仅仅是启动了 MapReduce 环境,我们可以启动 YARN ,让 YARN 来负责资源管理与任务调度。

3.6.1 关闭hadoop
cd /usr/local/hadoop/hadoop-3.1.3
./sbin/stop-dfs.sh
3.6.2 修改配置文件 mapred-site.xml

重命名(有的已经改好了就不用改了):

mv ./etc/hadoop/mapred-site.xml.template ./etc/hadoop/mapred-site.xml

修改文件:

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

<configuration>
 <property>
	<name>mapreduce.framework.name</name>
	<value>yarn</value>
 </property>
</configuration>
3.6.3 修改yarn-site.xml

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

<configuration>
 <property>
	<name>yarn.nodemanager.aux-services</name>
	<value>mapreduce_shuffle</value>
 </property>
</configuration>
3.6.4 启动YARN

先启动hadoop

cd /usr/local/hadoop/hadoop-3.1.3
./sbin/start-dfs.sh

启动YARN

./sbin/start-yarn.sh  # 启动YARN
./sbin/mr-jobhistory-daemon.sh start historyserver  
#开启历史服务器,才能在Web中查看任务运行情况

查看jps,发现多了三个

在这里插入图片描述

启动 YARN 之后,运行实例的方法还是一样的,仅仅是资源管理方式、任务调度不同。观察日志信息可以发现,不启用 YARN 时,是 “mapred.LocalJobRunner” 在跑任务,启用 YARN 之后,是 “mapred.YARNRunner” 在跑任务。启动 YARN 有个好处是可以通过 Web 界面查看任务的运行情况:,如下图所示。

YARN Web页面

http://local:8088/cluster 远程: http://192.168.10.128:8088/cluster

在这里插入图片描述

3.7 退出

cd /usr/local/hadoop/hadoop-3.1.3/  #进入目录

./sbin/mr-jobhistory-daemon.sh stop historyserver 
./sbin/stop-yarn.sh   #退出yarn
./sbin/stop-dfs.sh    #退出hadoop

完成啦!!!好好玩你的Hadoop吧

LinuxLinuxLinuxLinuxLinux5.65.65.6企业 企业 下成功搭建 下成功搭建 下成功搭建 HadoopHadoopHadoopHadoopHadoopHadoop伪分布 测试环境。本次在一台服务 测试环境。本次在一台服务 测试环境。本次在一台服务 测试环境。本次在一台服务 测试环境。本次在一台服务 测试环境。本次在一台服务 测试环境。本次在一台服务 测试环境。本次在一台服务 测试环境。本次在一台服务 器上进行伪分布式搭建。 器上进行伪分布式搭建。 器上进行伪分布式搭建。 器上进行伪分布式搭建。 器上进行伪分布式搭建。 器上进行伪分布式搭建。 Hadoop Hadoop Hadoop Hadoop Hadoop Hadoop Hadoop 伪分布式模是在单机上拟 伪分布式模是在单机上拟 伪分布式模是在单机上拟 伪分布式模是在单机上拟 伪分布式模是在单机上拟 伪分布式模是在单机上拟 伪分布式模是在单机上拟 Hadoop Hadoop Hadoop Hadoop Hadoop Hadoop Hadoop 分布式, 分布式, 单机上的分布式并不是真正伪,而使用线程模拟。 单机上的分布式并不是真正伪,而使用线程模拟。 单机上的分布式并不是真正伪,而使用线程模拟。 单机上的分布式并不是真正伪,而使用线程模拟。 单机上的分布式并不是真正伪,而使用线程模拟。 单机上的分布式并不是真正伪,而使用线程模拟。 单机上的分布式并不是真正伪,而使用线程模拟。 单机上的分布式并不是真正伪,而使用线程模拟。 单机上的分布式并不是真正伪,而使用线程模拟。 单机上的分布式并不是真正伪,而使用线程模拟。 单机上的分布式并不是真正伪,而使用线程模拟。 单机上的分布式并不是真正伪,而使用线程模拟。 单机上的分布式并不是真正伪,而使用线程模拟。 单机上的分布式并不是真正伪,而使用线程模拟。 单机上的分布式并不是真正伪,而使用线程模拟。 单机上的分布式并不是真正伪,而使用线程模拟。 单机上的分布式并不是真正伪,而使用线程模拟。 Hadoop Hadoop Hadoop Hadoop Hadoop Hadoop Hadoop 本身 是无法区分伪布式 和的,两种配置也很相似唯一不同地方是无法区分伪布式 和的,两种配置也很相似唯一不同地方是无法区分伪布式 和的,两种配置也很相似唯一不同地方是无法区分伪布式 和的,两种配置也很相似唯一不同地方是无法区分伪布式 和的,两种配置也很相似唯一不同地方是无法区分伪布式 和的,两种配置也很相似唯一不同地方是无法区分伪布式 和的,两种配置也很相似唯一不同地方是无法区分伪布式 和的,两种配置也很相似唯一不同地方是无法区分伪布式 和的,两种配置也很相似唯一不同地方是无法区分伪布式 和的,两种配置也很相似唯一不同地方是无法区分伪布式 和的,两种配置也很相似唯一不同地方是无法区分伪布式 和的,两种配置也很相似唯一不同地方是无法区分伪布式 和的,两种配置也很相似唯一不同地方是无法区分伪布式 和的,两种配置也很相似唯一不同地方是无法区分伪布式 和的,两种配置也很相似唯一不同地方是无法区分伪布式 和的,两种配置也很相似唯一不同地方是无法区分伪布式 和的,两种配置也很相似唯一不同地方是无法区分伪布式 和的,两种配置也很相似唯一不同地方是无法区分伪布式 和的,两种配置也很相似唯一不同地方是无法区分伪布式 和的,两种配置也很相似唯一不同地方是无法区分伪布式 和的,两种配置也很相似唯一不同地方是无法区分伪布式 和的,两种配置也很相似唯一不同地方是在单机器上配置,数据节点和名字均一个。 是在单机器上配置,数据节点和名字均一个。 是在单机器上配置,数据节点和名字均一个。 是
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

杨小羊-

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值