Hadoop 2.8.3本地环境搭建+Centos7.6+jdk12.0.2

本文详细介绍了如何在本地环境中搭建Hadoop 2.8.3,包括下载与配置jdk12.0.2,配置Hadoop环境,修改相关配置文件如core-site.xml、hdfs-site.xml、mapred-site.xml和yarn-site.xml,以及启动和检查Hadoop服务。同时,文章还提到了解决DataNode启动问题的方法和端口映射注意事项。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

以下仅为Hadoop本地环境搭建:

一、准备工具包:

1、下载jdk,官方地址:https://www.oracle.com/technetwork/java/javase/downloads/jdk12-downloads-5295953.html

 

2、下载hadoop包,地址:https://archive.apache.org/dist/hadoop/common/hadoop-2.8.3/(其中src是源码包,未编译的,直接下载已编译的tar.gz包)

 

二、配置jdk环境和hadoop环境

 

1,jdk环境:在usr目录下新建java文件夹:mkdir /url/java

 

2,编辑环境变量: vi /etc/profile  

在结尾加上:

export JAVA_HOME=/usr/java/jdk-12.0.2
export CLASSPATH=.:$JAVA_HOME/jre/lib/rt.jar:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar
export PATH=$PATH:$JAVA_HOME/bin

 

3,编辑完成后保存退出:!wq ,重新启动配置文件:source /etc/profile

 

4,输入验证是否配置成功:java version  (成功如下)

 

5,hadoop环境:在home目录下新建myHadoop文件夹:mkdir /home/myHadoop

 

6,解压hadoop压缩包到myHadoop中:tar -zxvf hadoop-2.8.3.tar.gz -C /myHadoop

 

7,解压完hadoop包后配置java环境,进入环境文件:vi ./myHadoop/hadoop-2.8.3/etc/hadoop/hadoop-env.sh

结尾添加java路径:export JAVA_HOME=/usr/java/jdk-12.0.2

 

三、配置hadoop配置文件:进入目录(/home/myHadoop/hadoop-2.8.3/etc/hadoop/)下对以下四个配置文件进行相应配置

1,配置core-site.xml(添加NameNode的地址和临时配置文件的配置信息):vi core-site.xml

<configuration>

<!-- NameNode的主机地址和端口 -->

         <property>
              <name>fs.defaultFS</name>
              <value>hdfs://localhost:9000</value>
         </property>

<!-- 运行时产生临时文件的存储目录 -->

        <property>
              <name>hadoop.tmp.dir</name>
              <value>/home/myHadoop/tmp</value>
         </property>

</configuration>

因为我配置的hostname是localhost,所以写的是localhost,以方便映射地址

修改hostname映射关系:注释前面两个,以防止其他端口会映射到前面的地址去,192.168.6.66是我配置nat网络的固定地址

修改后,输入命令重新加载网络使得修改生效:/etc/init.d/network restart

 

2,配置hdfs-site.xml(配置HDFS副本的数量,在单独一个datanode上运行):vi hdfs-site.xml

 <configuration>

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

</configuration>

 

3,配置mapred-site.xml (配置mapreduce运行在yarn上):vi mapred-site.xml 

配置文件里面是没有mapred-site.xml文件的,

所以需要把 mapred-site.xml.template复制一份并重命名为 mapred-site.xml:mv mapred-site.xml.template  mapred-site.xml

 <configuration>

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

</configuration>

 

4,配置yarn-site.xml(配置ResourceManager的地址和reducer获取数据的方式):vi yarn-site.xml

 <configuration>

<!-- ResourceManager的地址 -->

       <property>
              <name>yarn.resourcemanager.hostname</name>
              <value>localhost</value>
        </property>

<!-- reducer获取数据的方式-->
        <property>
              <name>yarn.nodemanager.aux-services</name>
              <value>mapreduce_shuffle</value>
        </property>

</configuration>

 

5,关闭防火墙:(针对系统默认防火墙-firewall)

(1)查看防火墙状态:firewall-cmd --state

(2)停止防火墙:systemctl stop firewalld.service 

(3)禁止开机自启动:systemctl disable firewalld.service

(4)重启防火墙:firewall-cmd --reload

(5)打开防火墙:systemctl start firewalld

 

6,关闭selinux:进入--vi /etc/selinux/config,将SELINUX=enforcing改为SELINUX=disabled

 

以上配置完成后,开始准备运行hadoop

 

四、运行hadoop服务

1,格式化hdfs:先去到hadoop包的bin目录下运行: ./hdfs namenode -format

格式化成功信息:

 

2,启动测试hdfs:去到hadoop包的sbin目录下运行:./start-all.sh  

或者在当前目录下直接运行:../sbin/start-all.sh 

运行后将一个个启动hadoop的5个服务,且需要输入密码,解决方案如下:

本地模式自动配置ssh免密登录配置如下:

(1)安装openSSH包:yum install openssh-server

(2)安装完成后,执行 以下安装命令  生成秘钥文件 :  ssh-keygen -t rsa,弹出需要enter的地方一直点击enter键即可,成功生成信息如下:

(3)实现本地登录免密码登录,运行:cat /root/.ssh/id_rsa.pub >> /root/.ssh/authorized_keys

 

3,配置ssh后,下次启动hdfs,则不必再输入密码,运行jps,即可看到运行的5个服务如下:

 

4,访问地址:192.168.6.66:50070,成功如下:

 

5,访问地址:192.168.6.66:8088,成功如下:

 

五,注意点

1,输入netstat -lntp|grep java  ,即可查看所有java服务的开放端口(红框处是映射为配置的hostname对应的地址,若映射为127.0.0.1,可配置/etc/hosts文件,注释127.0.0.1地址,或配置其他映射地址即可成功访问)

 

2,dataNode 没有启动起来的原因:每一次format,namenode都会生成新的clusterID , 而datanode还是保持原来的clusterID.

提供两种解决方法如下:

(1)去到tmp/dfs/name/current/VERSION目录下 复制namenode的clusterID.用该clusterID把所有datanode节点机器中tmp/dfs/data/current/VERSION中的clusterID替换掉

(2)直接删掉hadoop的临时文件tmp,在core-site.xml中配置的tmp文件路径,删掉该目录后,重新格式化(hadoop包的bin目录下执行命令:./hdfs namenode -format)format hdfs后即可重新生成对应的clusterID

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值