Hadoop入门-环境搭建

Hadoop入门-环境搭建

Hadoop简介

  1. HDFS

    1. 1工作机制

      [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-RR6IxWix-1616299004267)(assets/img/image-20200305105822743.png)]

    2. 2组件介绍
      1. NameNode
        NameNode用于存储、生成文件系统的元数据。运行一个实例。
        
      2. SecondaryNameNode
        SecondaryNamenode是Namenode的一个热备,合并NameNode的edit logs到fsimage文件中。
        
      3. DataNode
        DataNode用于存储实际的数据,将自己管理的数据块上报给NameNode ,运行多个实例。
        
  2. Yarn

    1. 工作机制

      [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-g854JP2V-1616299004269)(assets/img/image-20200305003613375.png)]

    2. 组件介绍
      1. ResourceManager
        ResourceManager 负责集群资源统一管理和计算框架管理,主要包括调度与应用程序管理。
        
      2. NodeManager
        NodeManager节点资源管理监控和容器管理,RM是系统中将资源分配给各个应用的最终决策者。
        
      3. AppMaster

        AppMaster各种计算框架的实现(例如MRAppMaster)向ResourceManager申请资源,通知NodeManager管理相应的资源。
        
      4. Container

      Container YARN中的资源抽象,它封装了某个节点上的多维度资源,如内存、CPU等。
      

Hadoop安装

0)准备环境

  1. Centos 7主机(版本自定,建议使用Linux 7)
  2. 配置JDK环境
    1. 下载JDK解压包并上传到/opt/software目录
      #下载Linux x64 Compressed Archive(jdk-8u241-linux-x64.tar.gz)根据系统版本选择位数
      https://www.oracle.com/java/technologies/javase-jdk8-downloads.html#license-lightbox
      
    2. 解压文件
      tar -zxvf jdk-8u241-linux-x64.tar.gz -C /opt/apps
      
    3. 配置环境变量(jdk-8u241-linux-x64是你对应的jdk解压目录)
      #给文件夹重命名
      mv /opt/apps/jdk-8u241-linux-x64 /opt/apps/jdk
      #切换你刚才解压的jdk目录
      cd /opt/apps
      #配置环境变量
      vim /etc/profile
      
      #自定义环境变量 start
      #java path start
      export JAVA_HOME=/opt/apps/jdk
      export CLASS_PATH=.:$JAVA_HOME/lib
      export PATH=$PATH:$JAVA_HOME/bin
      

      [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-xQjpA4Pl-1616299004270)(assets/img/image-20200305002103529.png)]

    4. 测试

      [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-xvvTJp7i-1616299004273)(assets/img/image-20200305002227499.png)]

  3. 安装Hadoop并配置环境变量
    1. ​ 下载安装包并上传到/opt/software目录

      下载地址:
      https://mirrors.tuna.tsinghua.edu.cn/apache/hadoop/common/
      建议选择2.9.2版本,直到链接
      https://mirrors.tuna.tsinghua.edu.cn/apache/hadoop/common/hadoop-2.9.2/hadoop-2.9.2.tar.gz
      
    2. 解压并重命名

      #解压
      tar -zxvf /opt/software/hadoop-2.9.2.tar.gz -C /opt/apps
      #重命名
      mv /opt/software/hadoop-2.9.2 /opt/software/hadoop
      
    3. 配置环境变量

      #配置环境变量
      vim /etc/profile
      
      #HADOOP_HOME start
      export HADOOP_HOME=/opt/apps/hadoop
      export PATH=$PATH:$JAVA_HOME/bin:$HADOOP_HOME/bin:$HADOOP_HOME/sbin
      

      [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-VE2Iz7II-1616299004274)(assets/img/image-20200305003033569.png)]

    4. 测试

      hadoop version
      

      [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-yUxmRpOm-1616299004276)(assets/img/image-20200305002506681.png)]

1)Hadoop单节点部署

  1. 修改/opt/apps/hadoop-2.9.2/etc/hadoop/hadoop-env.sh
    #设置为jdk所在路径
    export JAVA_HOME=/opt/apps/jdk1.8.0_152
    
  2. wordcount(单词统计)案例
    #切换到Hadoop安装目录
    cd opt/apps/hadoop
    #新建input文件夹
    mkdir input
    #拷贝配置文件到刚才创建的文件夹
    cp etc/hadoop/*.xml input
    #运行mapreduce程序
    bin/hadoop jar share/hadoop/mapreduce/hadoop-mapreduce-examples-3.2.1.jar grep input output 'dfs[a-z.]+'
    #查看结果
    cat output/*
    

2)Hadoop伪分布式部署

先切换至Hadoop安装目录

  1. 配置 etc/hadoop/core-site.xml:
    #命令
    vim	etc/hadoop/core-site.xml:
    
    <configuration>
        <property>
            <name>fs.defaultFS</name>
            <value>hdfs://localhost:9000</value>
        </property>
        <!-- 关闭权限认证 -->
      	<property>
          <name>dfs.permissions</name>    
          <value>false</value>
     	</property>
    </configuration>
    
  2. 配置 etc/hadoop/hdfs-site.xml:
    <configuration>
        <property>
            <name>dfs.replication</name>
            <value>1</value>
        </property>
    </configuration>
    
  3. 配置免密登入
    ssh-keygen -t rsa -P '' -f ~/.ssh/id_rsa
    cat ~/.ssh/id_rsa.pub >> ~/.ssh/authorized_keys
    chmod 0600 ~/.ssh/authorized_keys
    
  4. 格式化NameNode
    hdfs namenode -format
    
  5. 启动HDFS
    [root@localhost sbin]# start-dfs.sh
    #查看是否启动成功	使用jps命令
    [root@localhost sbin]# jps
    92017 DataNode		
    97031 NameNode
    92214 SecondaryNameNode
    
  6. 配置 etc/hadoop/mapred-site.xml:
    #没有该文件就使用复制一个
    cp etc/hadoop/mapred-site.xml.template etc/hadoop/mapred-site.xml
    
    #修改配置文件
    <configuration>
        <property>
            <name>mapreduce.framework.name</name>
            <value>yarn</value>
        </property>
        <property>
            <name>mapreduce.application.classpath</name>        <value>$HADOOP_MAPRED_HOME/share/hadoop/mapreduce/*:$HADOOP_MAPRED_HOME/share/hadoop/mapreduce/lib/*</value>
        </property>
    </configuration>
    
  7. 配置 etc/hadoop/yarn-site.xml
    <configuration>
        <property>
            <name>yarn.nodemanager.aux-services</name>
            <value>mapreduce_shuffle</value>
        </property>
        <property>
            <name>yarn.nodemanager.env-whitelist</name>        <value>JAVA_HOME,HADOOP_COMMON_HOME,HADOOP_HDFS_HOME,HADOOP_CONF_DIR,CLASSPATH_PREPEND_DISTCACHE,HADOOP_YARN_HOME,HADOOP_MAPRED_HOME</value>
        </property>
    </configuration>
    
  8. 启动Yarn
    start-yarn.sh
    
  9. 使用jps验证服务是否启动
    [root@localhost Hadoop]# jps
    92017 DataNode
    116388 ResourceManager
    97031 NameNode
    102823 RunJar
    92214 SecondaryNameNode
    116749 Jps
    116511 NodeManager
    

    [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-tJaHxPE3-1616299004277)(assets/img/image-20200304235013400.png)]

  10. 关闭hdfs
    stop-dfs.sh
    
  11. 关闭yarn
    stop-yarn.sh
    

3)Hadoop集群部署(待续)

Hadoop使用

  1. 常见Shell命令
    1. [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-knu4S5Hf-1616299004278)(assets/img/image-20200304235820261.png)]

    2. 示例

      #HDFS创建input目录
      dfs -mkdir input
      #显示目录列表
      dfs -ls
      
  2. 组件端口

    1. HDFS

      #默认50070端口
      http://localhost:50070/
      

      [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-8jlqylA3-1616299004279)(assets/img/image-20200305000629527.png)]

    2. Yarn

      #默认8088端口
      http://localhost:8088/
      

      [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-TPBgrpe1-1616299004280)(assets/img/image-20200305000701705.png)]

5)错误记录

  1. 错误截图

    [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-DlpmuCaL-1616299004280)(assets/img/image-20200307203424683.png)]

    在core-site.xml中设置
    <!--指定操作用户-->
      <property>
          <name>hadoop.http.staticuser.user</name>
          <value>root</value>
      </property>
    
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值