linux下hadoop集群并且配置安装百分百成功

本文介绍了在Linux虚拟机上安装和配置Hadoop集群的方法。首先要下载兼容的JDK版本并卸载自带JDK,接着在hadoop102虚拟机上安装JDK和Hadoop并配置环境变量,之后可通过rsync命令复制到其他虚拟机。部署集群时要合理分配节点,最后完成各节点的配置。

可以去jdk官网下载8或者11版本,别用18因为hadoop会不兼容,先卸载本机的自带的jdk,下面我给大家带一个我在用的hadoop链接

hadoop下载链接

 假设在你的linux上面有三个虚拟机hadoop102 hadoop103 hadoop104

 然后我们打开hadoop102进行安装hadoop,将我们下载好的压缩包利用xftp移到我们的虚拟机文件夹下分别是jdk包和hadoop包,这个虚拟机的文件夹自己没有的创建一个就行,地方都无所谓我是在opt目录下创建的一个software用来存放

 jdk安装配置

 进入到本地文件夹,我们输入tar命令进行文件压缩,并且用-c将他压缩到我们同级的另一个文件夹下起名叫module,没有的提前创建一下。

[root@hadoop102 software]# tar -zxvf jdk-8u212-linux-x64.tar.gz -C /opt/module/

 1.压缩好了之后我们配置jdk环境变量:

1 )新建 /etc/profile.d/my_env.sh 文件,一般我们不会更改本地环境变量所以我们新建一个
[root@hadoop102 software]#  sudo vim /etc/profile.d/my_env.sh

(2)添加如下内容 ,JAVA_HOME后面的路径就是你自己安装jdk的路径,保存后退出,先按esc再按wq保存

#JAVA_HOME
export JAVA_HOME=/opt/module/jdk1.8.0_212
export PATH=$PATH:$JAVA_HOME/bin
3 source 一下 /etc/profile 文件,让新的环境变量 PATH 生效
[root@hadoop102 software]# source /etc/profile

4)我们测试一下java环境变量是否安装好了

[root@hadoop102 software]# java -version

5)如果显示下面的消息证明你已经成功安装好了jdk并且配置好了环境变量,如果没有显示的话重启一下就可以了

 2.我们在hadoop102环境下面安装hadoop

1)还是利用xftp我们将压缩包转入我们的software文件夹里面

2)利用tar -zxvf进行解压压缩,还是压缩到我们的module文件夹里面去

[root@hadoop102 software]# tar -zxvf hadoop-3.1.3.tar.gz -C /opt/module/

3)在我们的module文件夹里面就会看到这两个文件夹

 4)我们将hadoop的环境变量配置一下,这里面用sudo为了将我们的权限设置为root权限防止我们权限不够无法修改,还是进入到我们自己写的配置文件里面去

[root@hadoop102 software]# sudo vim/etc/profile.d/my_env.sh

5)在后面加上配置信息,也就是我们刚才配置好的java信息后面,然后退出并且保存

#HADOOP_HOME
export HADOOP_HOME=/opt/module/hadoop-3.1.3
export PATH=$PATH:$HADOOP_HOME/bin
export PATH=$PATH:$HADOOP_HOME/sbin

 6)同理source让其生效

 [root@hadoop102 software]# source /etc/profile

7)检查hadoop是否配置成功

[root@hadoop102 software]# hadoop version
Hadoop 3.1.3

这个时候我们就已经在hadoop102上面安装好了jdk和hadoop并且配置好了环境变量了,这个时候我们可以采用rsync命令进行复制到其他虚拟机,或者重复上面的工作在其他虚拟机上面进行部署,这里就不一一演示; 

部署hadoop集群 

 当你都部署好了之后我们就可以部署集群了,由于NameNode 和 SecondaryNameNode 工作是具有重复性的并且都消耗内存比较大,不要安装在同一台服务器 ResourceManager 也很消耗内存,不要和 NameNodeSecondaryNameNode 配置在同一台机器上。所以我们将其分开部署:

2 )配置文件说明
Hadoop 配置文件分两类:默认配置文件和自定义配置文件,只有用户想修改某一默认
配置值时,才需要修改自定义配置文件,更改相应属性值。
(1 )默认配置文件:
要获取的默认文件
[core-default.xml]
[hdfs-default.xml]
[yarn-default.xml]
[mapred-default.xml]
2 )自定义配置文件:
core-site.xml hdfs-site.xml yarn-site.xml mapred-site.xml 四个配置文件存放在
$HADOOP_HOME/etc/hadoop 这个路径上,用户可以根据项目需求重新进行修改配置。
所以我们主要配置 core-site.xml hdfs-site.xml yarn-site.xml mapred-site.xml 四个配置文件即可。
配置 core-site.xml
我们通过命令进入hadoop配置中心,然后通过vim进行文件配置修改
[root@hadoop102 /]# cd $HADOOP_HOME/etc/hadoop
[root@hadoop102 hadoop]# vim core-site.xml

<configuration> </configuration>里面加入如下信息即可,注意那个hdfs网页配置可以不需要配置,看你个人,反正我没有配置

<!-- 指定 NameNode 的地址 -->
 <property>
 <name>fs.defaultFS</name>
 <value>hdfs://hadoop102:8020</value>
 </property>
 <!-- 指定 hadoop 数据的存储目录 -->
 <property>
 <name>hadoop.tmp.dir</name>
 <value>/opt/module/hadoop-3.1.3/data</value>
 </property>
 <!-- 配置 HDFS 网页登录使用的静态用户为 自己的root -->
 <property>
 <name>hadoop.http.staticuser.user</name>
 <value>root</value>
 </property>

然后后面的其他三个配置都是一样的修改方式,加入自己需要的配置即可

配置 hdfs-site.xml  

[root@hadoop102 hadoop]# vim hdfs-site.xml
<!-- nn web 端访问地址-->
<property>
 <name>dfs.namenode.http-address</name>
 <value>hadoop102:9870</value>
 </property>
<!-- 2nn web 端访问地址-->
 <property>
 <name>dfs.namenode.secondary.http-address</name>
 <value>hadoop104:9868</value>
 </property>
配置 yarn-site.xml
[root@hadoop102 hadoop]# vim yarn-site.xml
<!-- 指定 MR 走 shuffle -->
 <property>
 <name>yarn.nodemanager.aux-services</name>
 <value>mapreduce_shuffle</value>
 </property>
 <!-- 指定 ResourceManager 的地址-->
 <property>
 <name>yarn.resourcemanager.hostname</name>
 <value>hadoop103</value>
 </property>
 <!-- 环境变量的继承 -->
 <property>
 <name>yarn.nodemanager.env-whitelist</name>
 
<value>JAVA_HOME,HADOOP_COMMON_HOME,HADOOP_HDFS_HOME,HADOOP_CO
NF_DIR,CLASSPATH_PREPEND_DISTCACHE,HADOOP_YARN_HOME,HADOOP_MAP
RED_HOME</value>
 </property>
配置 mapred-site.xml
[root@hadoop102 hadoop]# vim mapred-site.xml
<!-- 指定 MapReduce 程序运行在 Yarn 上 -->
 <property>
 <name>mapreduce.framework.name</name>
 <value>yarn</value>
 </property>

到此我们的hadoop个人配置就已经配置好了,但这个只是hadoop102上面的配置我们需要在103,104上面都需要配置,复制即可

配置集群:

到这里我们默认已经配置好了102,103,104里面的所有内容

我们先配置workers:

[root@hadoop102 hadoop]#  vim /opt/module/hadoop-3.1.3/etc/hadoop/workers

再文件下面输入(注意:该文件中添加的内容结尾不允许有空格,文件中不允许有空行。):

hadoop102
hadoop103
hadoop104

同理我们在其他103,104里面也需要配置

2 )启动集群
1 如果集群是第一次启动 ,需要在 hadoop102 节点格式化 NameNode (注意:格式
NameNode ,会产生新的集群 id ,导致 NameNode DataNode 的集群 id 不一致,集群找
不到已往数据。如果集群在运行过程中报错,需要重新格式化 NameNode 的话,一定要先停
namenode datanode 进程,并且要删除所有机器的 data logs 目录,然后再进行格式 化
[root@hadoop102 hadoop]#  hdfs namenode -format
2 )启动 HDFS
[root@hadoop102 hadoop]#  sbin/start-dfs.sh

(3)在配置了 ResourceManager 的节点(hadoop103)启动 YARN

[root@hadoop102 hadoop]# sbin/start-yarn.sh
4 Web 端查看 HDFS NameNode
浏览器中输入: http://hadoop102:9870
查看 HDFS 上存储的数据信息
5 Web 端查看 YARN ResourceManager
a )浏览器中输入: http://hadoop103:8088
查看 YARN 上运行的 Job 信息
至此我们就配置好集群了
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

新城已无旧少年_

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

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

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

打赏作者

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

抵扣说明:

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

余额充值