小工具知识网

当前位置: 首页 > 行业知识 > hadoop集群部署教程

行业知识

hadoop集群部署教程

2026-11-14 13:09:00 来源:互联网转载

文章目录

  • 前言
  • 一、相关介绍
    • 1. 配置文件位置
      • 1.1 只读默认配置文件
      • 1.2 可修改配置文件
      • 1.3 相关环境变量配置文件
      • 二、安装准备
        • 1. 准备centos
        • 2. 配置集群免密登录
        • 3. 部署规划
        • 4. 安装条件
        • 5. 安装jdk
        • 三、安装hadoop
          • 1. 下载并解压hadoop
          • 2. 设置环境变量
            • 2.1 设置hadoop安装目录环境变量
            • 2.2 设置hadoop的root用户环境变量
            • 3. 修改配置文件
              • 3.1 修改 etc/hadoop/hadoop-env.sh 文件
              • 3.2 修改 etc/hadoop/core-site.xml 文件
              • 3.3 修改 etc/hadoop/hdfs-site.xml 文件
              • 3.4 修改 etc/hadoop/mapred-site.xml 文件
              • 3.5 修改 etc/hadoop/yarn-site.xml 文件
              • 3.6 修改 etc/hadoop/workers 文件
              • 3.7 同步配置
              • 4. 格式化文件系统
              • 5. 启动hadoop
              • 6. 浏览器访问
              • 四、hadoop集群命令
                • 1. 启停命令
                  • 1.1 启停 hdfs
                  • 1.2 启停 yarn
                  • ���结

                    前言

                    本文介绍了如何安装和配置Hadoop,一个用于分布式存储和处理大规模数据的开源框架。通过按照本文提供的步骤,您可以在自己的机器上搭建一个Hadoop伪集群,并通过浏览器访问Hadoop的管理页面。本文详细介绍了安装准备、安装JDK、安装Hadoop、修改配置文件、格式化文件系统以及启动Hadoop的步骤。


                    一、相关介绍

                    1. 配置文件位置

                    1.1 只读默认配置文件

                    hadoop的只读默认配置文件位于安装目录下的 share/doc/hadoop/hadoop-project-dist/hadoop-common目录。包括以下默认配置文件:

                    • share/doc/hadoop/hadoop-project-dist/hadoop-common/core-default.xml
                    • share/doc/hadoop/hadoop-project-dist/hadoop-common/hdfs-default.xml
                    • share/doc/hadoop/hadoop-project-dist/hadoop-common/yarn-default.xml
                    • share/doc/hadoop/hadoop-project-dist/hadoop-common/mapred-default.xml

                      1.2 可修改配置文件

                      hadoop的可修改配置文件位于安装目录下的 etc/hadoop目录。包括以下可修改配置文件:

                      • etc/hadoop/core-site.xml
                      • etc/hadoop/hdfs-site.xml
                      • etc/hadoop/yarn-site.xml
                      • etc/hadoop/mapred-site.xml

                        这些配置文件的配置会覆盖默认配置文件的配置。

                        1.3 相关环境变量配置文件

                        hadoop的相关环境变量配置文件位于安装目录下的 etc/hadoop目录。包括以下相关环境变量配置文件:

                        • etc/hadoop/hadoop-env.sh
                        • etc/hadoop/mapred-env.sh
                        • etc/hadoop/yarn-env.sh

                          二、安装准备

                          1. 准备centos

                          准备三台centos,我准备的如下。

                          ip地址主机名
                          192.168.198.101hadoop101
                          192.168.198.102hadoop102
                          192.168.198.103hadoop103

                          修改/etc/hosts文件,配置主机名映射为ip地址。

                          hadoop101、hadoop102、hadoop103节点都要执行。

                          echo >> /etc/hostsecho '192.168.198.101 hadoop101' >> /etc/hostsecho '192.168.198.102 hadoop102' >> /etc/hostsecho '192.168.198.103 hadoop103' >> /etc/hosts

                          2. 配置集群免密登录

                          hadoop101节点执行。

                          ssh-keygen -t rsa -P '' -f ~/.ssh/id_rsacat ~/.ssh/id_rsa.pub >> ~/.ssh/authorized_keyschmod 600 ~/.ssh/authorized_keysssh-copy-id 192.168.198.102ssh-copy-id 192.168.198.103

                          hadoop102节点执行。

                          ssh-keygen -t rsa -P '' -f ~/.ssh/id_rsacat ~/.ssh/id_rsa.pub >> ~/.ssh/authorized_keyschmod 600 ~/.ssh/authorized_keysssh-copy-id 192.168.198.101ssh-copy-id 192.168.198.103

                          hadoop103节点执行。

                          ssh-keygen -t rsa -P '' -f ~/.ssh/id_rsacat ~/.ssh/id_rsa.pub >> ~/.ssh/authorized_keyschmod 600 ~/.ssh/authorized_keysssh-copy-id 192.168.198.101ssh-copy-id 192.168.198.102

                          3. 部署规划

                          hadoop101hadoop102hadoop103
                          HDFSNameNode

                          DataNode

                          SecondaryNameNode

                          DataNode

                          DataNode
                          YARNNodeManagerNodeManagerResourceManager

                          NodeManager

                          4. 安装条件

                          • jdk版本:1.8+

                            5. 安装jdk

                            hadoop101、hadoop102、hadoop103节点都要执行。

                            下载地址:https://www.oracle.com/java/technologies/downloads/#java8

                            下载后上传到/tmp目录下。

                            然后执行下面命令,用于创建目录、解压,并设置系统级环境变量。

                            mkdir -p /opt/moduletar -zxvf /tmp/jdk-8u391-linux-x64.tar.gz -C /opt/module/echo >> /etc/profileecho '#JAVA_HOME' >> /etc/profileecho "export JAVA_HOME=/opt/module/jdk1.8.0_391" >> /etc/profileecho 'export PATH=$PATH:$JAVA_HOME/bin' >> /etc/profilesource /etc/profile

                            三、安装hadoop

                            1. 下载并解压hadoop

                            hadoop101、hadoop102、hadoop103节点都要执行。

                            wget --no-check-certificate https://archive.apache.org/dist/hadoop/common/hadoop-3.0.0/hadoop-3.0.0.tar.gz -P /tmpmkdir -p /opt/soft/hadooptar -zxvf /tmp/hadoop-3.0.0.tar.gz -C /opt/soft/hadoop

                            2. 设置环境变量

                            2.1 设置hadoop安装目录环境变量

                            设置hadoop系统级环境变量,并加载环境变量。

                            hadoop101、hadoop102、hadoop103节点都要执行。

                            echo >> /etc/profileecho '#HADOOP_HOME' >> /etc/profileecho "export HADOOP_HOME=/opt/soft/hadoop/hadoop-3.0.0" >> /etc/profileecho 'export PATH=$PATH:$HADOOP_HOME/bin' >> /etc/profileecho 'export PATH=$PATH:$HADOOP_HOME/sbin' >> /etc/profileecho 'export HADOOP_LOG_DIR=$PATH:$HADOOP_HOME/logs' >> /etc/profilesource /etc/profile

                            2.2 设置hadoop的root用户环境变量

                            hadoop通常不建议以root用户身份来启动服务,因为这可能会导致安全漏洞。如果以root用户启动hadoop就会报错,设置hadoop的root用户环境变量后,就可以用root用户启动hadoop。

                            hadoop101、hadoop102、hadoop103节点都要执行。

                            echo >> /etc/profileecho 'export HDFS_NAMENODE_USER=root' >> /etc/profileecho 'export HDFS_DATANODE_USER=root' >> /etc/profileecho 'export HDFS_SECONDARYNAMENODE_USER=root' >> /etc/profileecho 'export YARN_RESOURCEMANAGER_USER=root' >> /etc/profileecho 'export YARN_NODEMANAGER_USER=root' >> /etc/profilesource /etc/profile

                            3. 修改配置文件

                            hadoop101节点执行。

                            3.1 修改 etc/hadoop/hadoop-env.sh 文件

                            修改 etc/hadoop/hadoop-env.sh 文件,设置Java环境变量。

                            cd /opt/soft/hadoop/hadoop-3.0.0sed -i "s|^# export JAVA_HOME=.*|export JAVA_HOME=/opt/module/jdk1.8.0_391|" "etc/hadoop/hadoop-env.sh"sed -i "s|^export JAVA_HOME=.*|export JAVA_HOME=/opt/module/jdk1.8.0_391|" "etc/hadoop/hadoop-env.sh"

                            3.2 修改 etc/hadoop/core-site.xml 文件

                            修改 /opt/soft/hadoop/hadoop-3.0.0/etc/hadoop/core-site.xml 文件。内容如下所示。

                                            fs.defaultFS        hdfs://hadoop101:8020                    io.file.buffer.size        131072                hadoop.tmp.dir        /opt/soft/hadoop/hadoop-3.0.0/hadoop-tmp-data                hadoop.proxyuser.root.hosts        *                hadoop.proxyuser.root.users        *    

                            3.3 修改 etc/hadoop/hdfs-site.xml 文件

                            修改 /opt/soft/hadoop/hadoop-3.0.0/etc/hadoop/hdfs-site.xml 文件。内容如下所示。

                                        dfs.namenode.http-address        hadoop101:9870                dfs.namenode.secondary.http-address        hadoop102:9868                    dfs.permissions.enabled        false                    dfs.replication        3                    dfs.namenode.name.dir        /opt/hadoop/namenode                    dfs.hosts                hadoop101,hadoop102,hadoop103                    dfs.blocksize        268435456                    dfs.namenode.handler.count        100                    dfs.datanode.data.dir        /opt/soft/hadoop/hadoop-3.0.0/datanode-data    

                            3.4 修改 etc/hadoop/mapred-site.xml 文件

                            修改 /opt/soft/hadoop/hadoop-3.0.0/etc/hadoop/mapred-site.xml 文件。内容如下所示。

                                            mapreduce.framework.name        yarn                    mapreduce.map.memory.mb        1536                    mapreduce.map.java.opts        -Xmx1024M                    mapreduce.reduce.memory.mb        3072                    mapreduce.reduce.java.opts        -Xmx2560M                    mapreduce.task.io.sort.mb        512                    mapreduce.task.io.sort.factor        100                    mapreduce.reduce.shuffle.parallelcopies        50                    mapreduce.jobhistory.address        hadoop102:10020                    mapreduce.jobhistory.webapp.address        hadoop102:19888                    mapreduce.jobhistory.intermediate-done-dir        /opt/soft/hadoop/hadoop-3.0.0/mr-history/tmp                    mapreduce.jobhistory.done-dir        /opt/soft/hadoop/hadoop-3.0.0/mr-history/done    

                            3.5 修改 etc/hadoop/yarn-site.xml 文件

                            修改 /opt/soft/hadoop/hadoop-3.0.0/etc/hadoop/yarn-site.xml 文件。内容如下所示。

                                            yarn.acl.enable        false                        yarn.log-aggregation-enable        true                    yarn.log.server.url        http://hadoop103:19888/jobhistory/logs                    yarn.log-aggregation.retain-seconds        604800                                        yarn.resourcemanager.hostname        hadoop103                    yarn.resourcemanager.scheduler.class        org.apache.hadoop.yarn.server.resourcemanager.scheduler.fair.FairScheduler                                        yarn.nodemanager.aux-services        mapreduce_shuffle                    yarn.nodemanager.env-whitelist        JAVA_HOME,HADOOP_COMMON_HOME,HADOOP_HDFS_HOME,HADOOP_CONF_DIR,CLASSPATH_PREPEND_DISTCACHE,HADOOP_YARN_HOME,HADOOP_MAPRED_HOME    

                            3.6 修改 etc/hadoop/workers 文件

                            修改 /opt/soft/hadoop/hadoop-3.0.0/etc/hadoop/workers 文件。内容如下所示。

                            hadoop101hadoop102hadoop103

                            3.7 同步配置

                            把上面设置的配置文件同步到hadoop102和hadoop103节点。

                            scp -r /opt/soft/hadoop/hadoop-3.0.0/etc/hadoop hadoop102:/opt/soft/hadoop/hadoop-3.0.0/etcscp -r /opt/soft/hadoop/hadoop-3.0.0/etc/hadoop hadoop103:/opt/soft/hadoop/hadoop-3.0.0/etc

                            4. 格式化文件系统

                            hadoop101节点执行。

                            hdfs namenode -format

                            5. 启动hadoop

                            hadoop101节点启动hdfs。

                            cd /opt/soft/hadoop/hadoop-3.0.0/sbin./start-dfs.sh

                            hadoop103节点启动yarn。

                            cd /opt/soft/hadoop/hadoop-3.0.0/sbin./start-yarn.sh

                            6. 浏览器访问

                            浏览器访问地址 http://192.168.198.101:9870 即可进入 NameNode页面。如下图所示。

                            浏览器访问地址 http://192.168.198.102:9868 即可进入 SecondaryNameNode页面。如下图所示。

                            浏览器访问地址 http://192.168.198.103:8088 即可进入 yarn 页面。如下图所示。


                            四、hadoop集群命令

                            1. 启停命令

                            1.1 启停 hdfs

                            cd /opt/soft/hadoop/hadoop-3.0.0/sbin./start-dfs.sh./stop-dfs.sh

                            1.2 启停 yarn

                            cd /opt/soft/hadoop/hadoop-3.0.0/sbin./start-yarn.sh./stop-yarn.sh

                            总结

                            通过本文的指导,您已经学会了如何安装和配置Hadoop,并搭建了一个Hadoop伪集群。Hadoop是一个强大的工具,可以帮助您存储和处理大规模的数据。您可以进一步探索Hadoop的功能和特性,以满足您的数据处理需求。

                            希望本教程对您有所帮助!如有任何疑问或问题,请随时在评论区留言。感谢阅读!

                            参考链接:

                            • https://hadoop.apache.org/docs/r3.0.0/hadoop-project-dist/hadoop-common/ClusterSetup.html#Installation

上一篇:Django——模板

下一篇:服务器内网ip怎么设置的?