一、Hadoop概述

1、Hadoop概念:
        是一个由Apache基金会开发的开源分布式计算框架,旨在处理大规模数据集。主要解决海量数据的存储和分析计算问题。广义上来说,Hadoop通常是指一个更广泛的概念——Hadoop生态圈
    
    2、Hadoop优势:
        高可靠性:通过维护多个数据副本,确保在节点故障时仍能继续处理,也不会导致数据的丢失。
        高扩展性:在集群间分配任务数据,可以轻松扩展到数千个节点。
        高效性    :在MapReduce的思想下,通过并行处理加快数据处理速度。
        高容错性:自动保存数据副本,并在任务失败时重新分配。
        低成本    :开源软件,降低了项目成本。
        
    3、组成架构:
        MapReduce(计算)+ Yarn(资源调度)+ HDFS(数据存储)+ Common(辅助工具)
        3.1、MapReduce
            MapReduce 将计算过程分为两个阶段: Map 和 Reduce
            1) Map 阶段并行处理输入数据
            2) Reduce 阶段对Map结果进行汇总
        
        3.2、Yarn
            ResourceManager + NodeManager + ApplicationMaster + Container
            ResourceManager     :是Yarn的核心组件,负责整个集群的资源管理和分配
            NodeManager         :是每个节点上的资源和任务管理器
            ApplicationMaster:是用户提交的每个应用程序的调度和协调者
            Container         :是Yarn中的资源抽象,它封装了NodeManager节点上的多维度资源,如内存、CPU、磁盘和网络等
            
        3.3、HDFS
            NameNode + DataNode + Secondary NameNode(
            NameNode(nn):HDFS的核心,负责管理文件系统的命名空间和元数据信息
            DataNode(dn):HDFS的存储节点,负责存储实际的数据块(Block)
            Secondary NameNode(2nn):主要作用是辅助NameNode,定期合并EditLog和FsImage,生成新的FsImage文件


二、运行环境搭建

    1、虚拟机环境准备(虚拟机搭建自行查询搭建方法)
    
    2、克隆三台虚拟机(hadoop102、hadoop103、hadoop104)
    
    3、安装 Hadoop(官网下载)
    
        3.1、Hadoop重要目录:
            1)bin目录:存放对Hadoop相关服务(hdfs,yarn,mapred)进行操作的脚本
            2)etc目录:Hadoop的配置文件目录,存放Hadoop的配置文件
            3)lib目录:存放Hadoop的本地库(对数据进行压缩解压缩功能)
            4)sbin目录:存放启动或停止Hadoop相关服务的脚本
            5)share目录:存放Hadoop的依赖jar包、文档、和官方案例
            
        3.2、Hadoop运行模式
            本地模式、伪分布式模式以及完全分布式模式
    
    4、安装JDK,分发脚本
    
    5、配置 SSH 无密登录
    
    6、集群配置(自定义配置文件)
        配置策略:NameNode和SecondaryNameNode不要安装在同一台服务器,    ResourceManager也很消耗内存,不要和NameNode、SecondaryNameNode配置在同一台机器上
        配置文件说明:配置文件分默认配置文件和自定义配置文件,只有用户想修改某一默认配置值时,才需要修改自定义配置文件,更改相应属性值
        常用配置文件:core-site.xml、hdfs-site.xml、yarn-site.xml、mapred-site.xml、workers(路径:$HADOOP_HOME/etc/hadoop)
        
    7、群起集群(第一次启动要格式化NameNode:hdfs namenode -format)
        启动HDFS:sbin/start-dfs.sh
        启动YARN:sbin/start-yarn.sh
        常用端口号:(浏览器查看集群信息)
            1)NameNode  内部通信端口            8020 / 9000/9820
            2)NameNode  对用户的查询端口        9870
            3)Yarn      查看任务运行情况        8088
            4)历史服务器通信端口                19888
        
    8、编写Hadoop集群常用脚本(startall,stopall,jpsall)

三、常见错误及解决方案

1、搭建Hadoop完全分布式模式时, scp拷贝Hadoop报错Permission denied, 原因是权限不够

 用下面这条命令:

chmod 777  文件或目录

不是 root 用户, 可能需要加上 sudo 来执行:

sudo chmod  777  文件或目录

运行命令后,文件或目录 的权限就被修改为777(可读可写可执行)

重新执行SCP拷贝操作, 报错问题就会解决了

四、入门常见面试题

1、常用端口号

NameNode        内部通信端口                 8020 / 9000/9820
NameNode        对用户的查询端口          9870
Yarn                   查看任务运行情况          8088
历史服务器通信端口                                19888

2、常用配置文件
core-site.xml、 hdfs-site.xml、 yarn-site.xml、 mapred-site.xml 、workers

Logo

汇聚全球AI编程工具,助力开发者即刻编程。

更多推荐