0


hadoop3.3.6完全分布式搭建

hadoop完全分布式安装配置需要使用 root 用户和 hadoop 用户完成相关配置,使用三个节点完成 Hadoop 完全分布式安装配置。命令中使用绝对路径,hadoop版本为3.3.6。

(1)在 master 节点中的 /opt/software 目录下将文件 hadoop-3.3.6.tar.gz 安装包解压到 /opt/module 路径中;

# 在master上执行
tar -zxvf /opt/software/hadoop-3.3.6.tar.gz -C /opt/module

(2)在 master 节点中将解压的 Hadoop 安装目录重命名为 hadoop ,并修改该目录下的所有文件的所属者为 hadoop,所属组为 hadoop;

# 在master上执行
mv /opt/module/hadoop-3.3.6.tar.gz /opt/module/hadoop
chown -R hadoop:hadoop /opt/module/hadoop

(3)在 master 节点中使用 hadoop 用户依次配置 hadoop-env.sh、core-site.xml、hdfs-site.xml、mapred-env.sh、mapred-site.xml、yarn-env.sh、yarn-site.xml、workers 配置文件,Hadoop 集群部署规划如下表;
服务器masterslave1slave2HDFSNameNodeHDFSSecondaryNameNodeHDFSDataNodeDataNodeDataNodeYARNResourceManagerYARNNodeManagerNodeManagerNodeManager历史日志服务器JobHistoryServer
配置hadoop-env.sh

# 在master上执行
vi /opt/module/hadoop/etc/hadoop/hadoop-env.sh
export JAVA_HOME=/opt/module/jdk
export HADOOP_HOME=/opt/module/hadoop
export HADOOP_CONF_DIR=$HADOOP_HOME/etc/hadoop
export HADOOP_LOG_DIR=$HADOOP_HOME/log

配置core-site.xml

# 在master上执行
vi /opt/module/hadoop/etc/hadoop/core-site.xml
<configuration>
    <property>
        <name>fs.defaultFS</name>
        <value>hdfs://master:9000</value>
    </property>
</configuration>

配置hdfs-site.xml

# 在master上执行
vi /opt/module/hadoop/etc/hadoop/hdfs-site.xml
<configuration>
    <property>
        <name>dfs.replication</name>
        <value>3</value>
    </property>

    <property>
        <name>dfs.namenode.hosts</name>
        <value>master,slave1,slave2</value>
    </property>

    <property>
        <name>dfs.blocksize</name>
        <value>268435456</value>
    </property>
</configuration>

配置mapred-env.sh

# 在master上执行
vi /opt/module/hadoop/etc/hadoop/mapred-env.sh
export JAVA_HOME=/opt/module/jdk

配置mapred-site.xml

# 在master上配置
vi /opt/module/hadoop/etc/hadoop/mapred-site.xml
<configuration>
    <property>
        <name>mapreduce.framework.name</name>
        <value>yarn</value>
    </property>

    <property>
        <name>yarn.app.mapreduce.am.env</name>
        <value>HADOOP_MAPRED_HOME=$HADOOP_HOME</value>
    </property>

    <property>
        <name>mapreduce.map.env</name>
        <value>HADOOP_MAPRED_HOME=$HADOOP_HOME</value>
    </property>

    <property>
        <name>mapreduce.reduce.env</name>
        <value>HADOOP_MAPRED_HOME=$HADOOP_HOME</value>
    </property>
<configuration>

配置yarn-env.sh

# 在master上配置
vi /opt/module/hadoop/etc/hadoop/yarn-env.sh
export JAVA_HOME=/opt/module/jdk
export HADOOP_HOME=/opt/module/hadoop
export HADOOP_CONF_DIR=$HADOOP_HOME/etc/hadoop
export HADOOP_LOG_DIR=$HADOOP_HOME/logs

配置yarn-site.xml

# 在master上配置
vi /opt/module/hadoop/etc/hadoop/yarn-site.xml
<configuration>
    <property>
        <name>yarn.resourcemanager.hostname</name>
        <value>master</value>
    </property>

    <property>
        <name>yarn.nodemanager.aux-services</name>
        <value>mapreduce_shuffle</value>
    </property>

    <property>
        <name>yarn.log-aggregation-enable</name>
        <value>true</value>
    </property>

    <property>
        <name>yarn.resourcemanager.scheduler.class</name>
        <value>org.apache.hadoop.yarn.server.resourcemanager.scheduler.fair.FairScheduler</value>
    </property>
</configuration>

配置workers

vi /opt/module/hadoop/etc/hadoop/workers
master
slave1
slave2

(4)在 master 节点中使用 scp 命令将配置完的 hadoop 安装目录直接拷贝
至 slave1 和 slave2 节点;

# 在master上执行
scp -r /opt/module/hadoop slave1:/opt/module
scp -r /opt/module/hadoop slave2:/opt/module

(5)在 slave1 和 slave2 节点中将 hadoop 安装目录的所有文件的所属者为 hadoop,所属组为 hadoop;

# 在slave1上执行
chown -R hadoop:hadoop /opt/module/hadoop
# 在slave2上执行
chown -R hadoop:hadoop /opt/module/hadoop

(6)在三个节点的 /etc/profile 文件中配置 Hadoop 环境变量 HADOOP_HOME 和 PATH 的值,并让配置文件立即生效;

# 在三台服务器执行
export HADOOP_HOME=/opt/module/hadoop
export PATH=$PATH:$HADOOP_HOME/bin:$HADOOP_HOME/sbin
source /etc/profile

(7) 在 master 节点中初始化 Hadoop 环境 namenode;

# 在master上执行
hadoop namenode -format

(8) 在 master 节点中依次启动 HDFS、YARN 集群和历史服务。在 master 上将执行命令 jps 查看java进程情况;

# 在master上执行
start-dfs.sh
start-yarn.sh
mapred --daemon start historyserver
jps
# jps输出结果如下
NameNode
DataNode
SecondaryNameNode
NodeManager
ResourceManager
JobHistoryServer
Jps

(9) 在 slave1 上将执行命令 jps 查看java进程情况;

# 在slave1上执行
jps
# jps输出结果如下
DataNode
NodeManager
Jps

本文转载自: https://blog.csdn.net/AMRXC/article/details/142202557
版权归原作者 平台搭建与运维 所有, 如有侵权,请联系我们删除。

“hadoop3.3.6完全分布式搭建”的评论:

还没有评论