栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 前沿技术 > 大数据 > 大数据系统

Hadoop 搭建HDFS 集群 --- 学习记录

Hadoop 搭建HDFS 集群 --- 学习记录

准备操作:
    创建三个虚拟机(master x1 service x2),我这里使用的是UbuntuServer。安装jdk
    # 安装jdk8
    sudo apt-get install openjdk-8-jdk
    
    # 查看安装路径
    sudo update-alternatives --config java
    
    # 设置java home
    sudo vim ~/.bashrc
    
    # 在末尾加入如下代码
    export JAVA_HOME=/usr/lib/jvm/java-8-openjdk-amd64
    export PATH=$JAVA_HOME/bin:$PATH
    export CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar
    
    # 查看安装结果
    java -version
    

    配置无密码登录ssh

    Linux 配置 免密登录 学习笔记https://blog.csdn.net/HongzhuoO/article/details/123451766

    下载Hadoop压缩包并创建一个文件夹用于存放。使用命令解压,这里我使用的是3.3.1版本 
    tar -xzvf hadoop-3.3.1-aarch64.tar.gz

    编辑全局配置文件,追加Hadoop路径
    # 编辑用户下的文件
    sudo vim ~/.bashrc
    
    # 追加以下配置项目
    export HADOOP_HOME=$HOME/hadoop_ss/hadoop-3.3.1
    export PATH=$PATH:$HADOOP_HOME/bin
    export PATH=$PATH:$HADOOP_HOME/sbin
    
    编辑完成后建议重启一次 ,或者执行下面的命令
    . ~/.bashrc

    进入hadoop主目录创建存储文件夹
    # 进入hadoop主目录
    cd $HADOOP_HOME
    
    # 创建dfs 和 tmp 文件夹
    mkdir dfs tmp
    
    # 进入刚刚创建好的dfs文件夹
    cd dfs
    
    # 创建 data 和 name 文件夹
    mkdir data name

    切换到hadoop 配置文件目录准备开始配置
    # 切换到 hadoop 配置文件目录
    cd $HADOOP_HOME/etc/hadoop

    编辑 workers 文件 (hadoop 2.x 版本叫 slaves 3.x 叫 workers)
    # 编辑 workers
    vim workers
    
    # 删除默认的  localhost 并添加所有主机名 (就是之前 hosts 文件中配置的那些)
    # 例如
    
    hdfs_master
    hdfs_name1
    hdfs_name2
    
    
    

    编辑 hadoop-env.sh 脚本,填写 JAVA_HOME路径
    # 找到 JAVA_HOME 解开注释并填写为主机正确的Javahome 路径
    
    ##
    ## THIS FILE ACTS AS THE MASTER FILE FOR ALL HADOOP PROJECTS.
    ## SETTINGS HERE WILL BE READ BY ALL HADOOP COMMANDS.  THEREFORE,
    ## ONE CAN USE THIS FILE TO SET YARN, HDFS, AND MAPREDUCE
    ## ConFIGURATION OPTIONS INSTEAD OF xxx-env.sh.
    ##
    ## Precedence rules:
    ##
    ## {yarn-env.sh|hdfs-env.sh} > hadoop-env.sh > hard-coded defaults
    ##
    ## {YARN_xyz|HDFS_xyz} > HADOOP_xyz > hard-coded defaults
    ##
    
    # Many of the options here are built from the perspective that users
    # may want to provide OVERWRITING values on the command line.
    # For example:
    #
    JAVA_HOME=/usr/lib/jvm/java-8-openjdk-amd64
    #
    # Therefore, the vast majority (BUT NOT ALL!) of these defaults
    # are configured for substitution and not append.  If append
    # is preferable, modify this file accordingly.

    编辑 core-site.xml 配置文件
    # 在configuration节点中进行配置,具体如下
    
    
    
    
    
    
    
    
    
            
                   fs.defaultFS
                   hdfs://devhdfsmaster(这是主节点名称):9000
            
            
                   io.file.buffer.size
                   131072
            
            
                   hadoop.tmp.dir
                   file:(hadoop 下的tmp文件夹路径。如果是在用户目录下,那么需要加上用户目录路径)/hadoop_ss/hadoop-3.3.1/tmp
            
    

    编辑 hdfs-site.xml 配置文件
    # 修改configuration 节点内容,如下所示。
    
    
    
    
    
    
    
    
    
    #########################################################################
    ###### 该配置项目仅可开发测试时临时加上,不可用于生产环境和预发布测试 #######
    
    
            
                    dfs.permissions.enabled
                    false
            
    
    #########################################################################
    
    
    
    
            
                   dfs.namenode.name.dir
                   file:(hadoop的name文件夹路径,如果是用户目录下 那么需要加上用户目录)/hadoop_ss/hadoop-3.3.1/dfs/name
            
            
                   dfs.namenode.data.dir
                   file:(hadoop的data文件夹路径,如果是用户目录下 那么需要加上用户目录)/hadoop_ss/hadoop-3.3.1/dfs/data
            
            
                   dfs.replication
                   
                   2
            
            
                   dfs.http.address
                   主节点主机名:50070
            
            
                   dfs.namenode.secondary.http-address
                   主节点主机名:50090
            
    

    修改 mapred-site.xml 配置文件
    
    
    
    
    
    
    
            
                   mapreduce.framework.name
                   yarn
            
            
                   mapreduce.jobhistory.address
                   Master主机名:10020
            
            
                   mapreduce.jobhistory.webapp.address
                   Master主机名:19888
            
    

    修改 yarn-site.xml 配置文件
    
    
    
    
    
            
                   yarn.resourcemanager.address
                   Master主机名:8032
            
            
                   yarn.resourcemanager.scheduler.address
                   Master主机名:8030
            
            
                   yarn.resourcemanager.resource-tracker.address
                   Master主机名:8031
            
            
                   yarn.resourcemanager.admin.address
                   Master主机名:8033
            
            
                   yarn.resourcemanager.webapp.address
                   Master主机名:8088
            
            
                   yarn.nodemanager.aux-services
                   mapreduce_shuffle
            
            
                   yarn.nodemanager.aux-services.mapreduce.shuffle.class
                   org.apache.hadoop.mapred.ShuffleHandler
            
    

    将配置好的Hadoop文件夹发送到其他节点
    scp -r hadoop文件夹 用户名@主机名:

    不要忘了 在其他节点也要执行【步骤6】编辑全局配置文件,追加Hadoop路径

    修改每个节点上的Hadoop文件夹权限
    chmod -R a+w hadoop_ss/hadoop-3.3.1

    格式化Namenode
    $HADOOP_HOME/bin/hdfs namenode -format

    常用命令
    # 启动
    start-all.sh
    
    # 停止
    stop-all.sh
    
    # 上传一张照片到 TestPhoto 目录
    hadoop fs -put test.png /TestPhoto

    在网页查看控制台 访问 http://主节点IP:50070

注意事项:

如果在网页或者程序中出现上传或下载错误以及找不到主机这样的问题,可以尝试把Hadoop服务器的Hosts文件给程序或网站服务器一份。(Windows 的host路径为 C:WindowsSystem32driversetc )。但这可能仍然不是一个好的解决方法,期待后续解决。

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/761922.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号