Hadoop3.2.2完全分布式环境搭建

一、集群部署规划

hadoop100:NameNode、DataNode、NodeManager
hadoop101:SecondaryNameNode、DataNode、ResourceManager、NodeManager

二、首先修改hosts文件

vi /etc/hosts

在这里插入图片描述

三 、配置系统必须的环境变量(java+hadoop)

# 1、修改配置文件
vi /etc/profile

#==========分界线 start=============
# set java home
JAVA_HOME=/usr/local/jdk1.8
CLASSPATH=.:$JAVA_HOME/lib.tools.jar
PATH=$JAVA_HOME/bin:$PATH
export JAVA_HOME CLASSPATH PATH

# set hadoop home
export HADOOP_HOME=/opt/hadoop-3.2.2
export PATH=$PATH:$HADOOP_HOME/bin
export PATH=$PATH:$HADOOP_HOME/sbin
#==========分界线 end===============

# 2、让环境变量生效
source /etc/profile

四、设置ssh免密登录

# 1、生成公钥和私钥
ssh-keygen -t rsa

# 2、将私钥copy到目标服务器
ssh-copy-id hadoop100
ssh-copy-id hadoop101

五、hadoop配置文件修改

  1. 修改core-site.xml
    <configuration>
        <!--指定NameNode地址-->
         <property>
             <name>fs.defaultFS</name>
             <value>hdfs://hadoop100:9000</value>
         </property>
         <!--指定Hadoop运行时产生文件的存放路径-->
         <property>
             <name>hadoop.tmp.dir</name>
             <value>/opt/hadoop-3.2.2/data/tmp</value>
         </property>
     </configuration>
    
    1.1 修改 hadoop-env.sh
    # 1、设置java环境变量
    export JAVA_HOME=/usr/local/jdk1.8
    # 2、配置用户名
    export HDFS_NAMENODE_USER=root
    export HDFS_DATANODE_USER=root
    export HDFS_SECONDARYNAMENODE_USER=root
    export YARN_RESOURCEMANAGER_USER=root
    export YARN_NODEMANAGER_USER=root
    
  2. 修改 hdfs-site.xml
<configuration>
	<!--设置文件存储的副本数-->
    <property>
        <name>dfs.replication</name>
        <value>2</value>
    </property>
	<!--设置secondaryNameNode地址-->
    <property>
        <name>dfs.namenode.secondary.http-address</name>
        <value>hadoop101:50090</value>
    </property>
</configuration>

3.1 修改 yarn-env.sh

 # 设置java环境变量
export JAVA_HOME=/usr/local/jdk1.8

3.2 修改 yarn-site.xml

<configuration>
	<!--Reducer获取数据的方式-->
    <property>
        <name>yarn.nodemanager.aux-services</name>
        <value>mapreduce_shuffle</value>
    </property>
    <!--ResourceManager地址-->
    <property>
        <name>yarn.resourcemanager.hostname</name>
        <value>hadoop101</value>
    </property>
    <!--日志聚合-->
    <property>
        <name>yarn.log-aggregation-enable</name>
        <value>true</value>
    </property>
    <!--日志保留时间-->
    <property>
        <name>yarn.log-aggregation.retain-seconds</name>
        <value>3600</value>
    </property>
</configuration>

4.1 修改mapred-env.sh

 # 设置java环境变量
export JAVA_HOME=/usr/local/jdk1.8

4.2 修改 mapred-site.xml

<configuration>
	<!--指定MR运行在yarn上-->
    <property>
        <name>mapreduce.framework.name</name>
        <value>yarn</value>
    </property>
    <!--指定历史服务器地址-->
    <property>
        <name>mapreduce.jobhistory.address</name>
        <value>hadoop101:10020</value>
    </property>
    <!--指定历史服务器web端地址-->
    <property>
        <name>mapreduce.jobhistory.webapp.address</name>
        <value>hadoop101:19888</value>
    </property>
</configuration>
  1. 修改workers文件
vi workers

#===hadoop程序会读取workers文件中的内容,作为集群的依据=======
hadoop100
hadoop101

六、格式化NameNode

# 这里如果不是第一次启动,请将 /data 以及 /logs 目录及文件全部删除
# 在 NameNode 所在的服务器 Hadoop100上,执行如下命令进行格式化
hadoop namenode -format

七、群起测试

# 启动 NameNode与 DataNode
start-dfs.sh
# 启动yarn必须在resourceManager的节点上执行
start-yarn.sh
# 查看启动情况
jps
  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Hadoop是一个开源的分布式计算框架,它可以处理大规模的数据。在这篇文章中,我将会介绍如何在完全分布式环境下搭建Hadoop 3.1.2。 1. 首先,你需要安装Java。Hadoop需要Java的运行环境,你可以在Oracle官网上下载Java。 2. 下载Hadoop 3.1.2的二进制文件,你可以在官网上下载。下载完成后,解压缩文件到一个目录中,比如/home/hadoop/hadoop-3.1.2。 3. 在/etc/profile文件中添加如下内容: export JAVA_HOME=/usr/lib/jvm/jre-1.8.0-openjdk-1.8.0.242.b08-0.el7_7.x86_64 export PATH=$JAVA_HOME/bin:$PATH export HADOOP_HOME=/home/hadoop/hadoop-3.1.2 export PATH=$HADOOP_HOME/bin:$PATH export PATH=$HADOOP_HOME/sbin:$PATH 这样,我们就可以在任何地方使用Hadoop命令了。 4. 在Hadoop的配置文件中,我们需要修改三个文件:hadoop-env.sh、core-site.xml、hdfs-site.xml。 在hadoop-env.sh文件中,我们需要设置JAVA_HOME的路径: export JAVA_HOME=/usr/lib/jvm/jre-1.8.0-openjdk-1.8.0.242.b08-0.el7_7.x86_64 在core-site.xml文件中,我们需要设置Hadoop的默认文件系统类型和地址: <configuration> <property> <name>fs.defaultFS</name> <value>hdfs://localhost:9000</value> </property> </configuration> 在hdfs-site.xml文件中,我们需要设置Hadoop的数据存储目录: <configuration> <property> <name>dfs.replication</name> <value>1</value> </property> <property> <name>dfs.namenode.name.dir</name> <value>/home/hadoop/hadoop-3.1.2/hdfs/namenode</value> </property> <property> <name>dfs.datanode.data.dir</name> <value>/home/hadoop/hadoop-3.1.2/hdfs/datanode</value> </property> </configuration> 5. 启动Hadoop集群。在这里,我们需要启动namenodedatanode。在启动之前,我们需要格式化namenodehadoop namenode -format 然后,我们可以启动Hadoop了: start-dfs.sh start-yarn.sh 6. 验证Hadoop集群是否正常工作。我们可以使用下面的命令来查看Hadoop集群的状态: hadoop dfsadmin -report 这个命令会返回Hadoop集群的一些信息,包括datanode的状态、集群的副本数等。 至此,Hadoop 3.1.2完全分布式环境搭建完成。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值