《Hadoop(一)概述与配置安装.docx》由会员分享,可在线阅读,更多相关《Hadoop(一)概述与配置安装.docx(23页珍藏版)》请在金锄头文库上搜索。
1、Hadoop(一)概述与配置安装Hadoop之HDFS一.Hadoop学习要点二.Hadoop基础概述 关于大数据 关于Hadoop Hadoop组成三.Hadoop实践操作*1. 运行环境搭建 1)虚拟机环境准备 2)安装JDK 3)安装Hadoop Hadoop目录结构2.Hadoop运行模式3.完全分布式部署Hadoop集群4)准备工作 使用rsync远程同步工具,编辑集群分发脚本 配置SSH免密登陆 编辑jpsall脚本5)配置集群最小集群部署规划修改集群配置文件 a)核心配置文件:core-site.xml b)HDFS配置文件:hdfs-site.xml c)YARN配置文件:ya
2、rn-site.xml d)MapReduce配置文件:mapred-site.xml分发安装文件到其他集群6)单点启动7)群起集群 配置workers 启动集群3.集群启动/停止方式总结4.Web端查看Hadoop运行情况四.常见问题五.虚拟机系统配置脚本学习一个框架,主要关注这个框架是什么、干什么、原理、怎么用、实地使用场景中可能存在的问题、原因及优化。大数据开发面试指南一.Hadoop学习要点Hadoop 体系是我们学习大数据框架的基石,尤其是 MapReduce、HDFS、Yarn 三驾马车基本垫定了整个数据方向的发展道路。也是后面我们学习其他框架的基础,关于 Hadoop 本身我们主
3、要应该掌握: HDFS架构理解(基础) HDFS源码/工作原理(高级) MapReduce架构理解(基础) MapReduce源码/原理/Shuffle原理(高级) MapReduce二次排序(编程,必选) YARN架构理解(基础) YARN源码/工作原理(高级)其主要是三方面内容:1)HDFS 十分熟悉 HDFS 的架构图和读写流程 十分熟悉 HDFS 的配置 熟悉 DataNode 和 NameNode 的作用 NameNode 的 HA 搭建和配置,Fsimage 和 Edit Journal 的作用的场景 HDFS 操作文件的常用命令 HDFS 的安全模式2)MapReduce 掌握
4、MapReduce 的工作原理 能用 MapReduce 手写代码实现简单的 WordCount 或者 TopN 算法 掌握 MapReduce Combiner 和 Partitioner的作用 熟悉 Hadoop 集群的搭建过程,并且能解决常见的错误 熟悉 Hadoop 集群的扩容过程和常见的坑 如何解决 MapReduce 的数据倾斜 Shuffle 原理和减少 Shuffle 的方法3)Yarn Yarn 的产生背景和架构 Yarn 中的角色划分和各自的作用 Yarn 的配置和常用的资源调度策略 Yarn 进行一次任务资源调度的过程二.Hadoop基础概述关于大数据什么是大数据?多大算
5、是大数据?其有什么特点?大数据(BigData) :指无法在一定时间范围内用常规软件工具进行捕捉、管理和处理的数据集合,是需要新处理模式才能具有更强的决策力、洞察发现力和流程优化能力的海量、高增长率和多样化的信息资产。按顺序给出数据存储单位: bit.、Byte、KB、MB、GB、TB、PB、EB、ZB、YB、BB、NB、DB。大数据的特点:4V volume 大量 velocity 高速 variety 多样 value 低价值密度关于HadoopHadoop三大发行版本:Apache、Cloudera、Hortonworks。 Apache版本最原始(最基础)的版本,对于入门学习最好(手动
6、挡)。 Cloudera内部集成了很多大数据框架。对应产品CDH(自动挡)。 Hortonworks文档较好。对应产品HDP。Hadoop的优势:4高 1)高可靠性:多个数据副本 2)高扩展性:节点方便扩展 3)高效性:MapReduce思想下的并行工作,加快任务处理速度 4)高容错性:能自动将失败任务重新分配Hadoop官方网站:http:/hadoop.apache.org/Hadoop组成 1)Hadoop HDFS:一个高可靠、高吞吐量的分布式文件系统。 2)Hadoop MapReduce:一个分布式的离线并行计算框架。 3)Hadoop YARN:作业调度与集群资源管理的框架。 4
7、)Hadoop Common:支持其他模块的工具模块。Hadoop2.x 之后,将之前的MapReduce部分分为MapReduce与YARN两个部分,其目的是为了解耦。解耦的一个好处就是可以实现MapReduce的可插拔,从而更加方便地替换计算框架。MapReduce将计算过程分为两个阶段:Map和Reduce 1)Map阶段并行处理输入数据 2)Reduce阶段对Map结果进行汇总YARN架构: 1)ResourceManager(rm):处理客户端请求、启动/监控ApplicationMaster、监控NodeManager、资源分配与调度; 2)NodeManager(nm):单个节点
8、上的资源管理、处理来自ResourceManager的命令、处理来自ApplicationMaster的命令; 3)ApplicationMaster:数据切分、为应用程序申请资源,并分配给内部任务、任务监控与容错。 4)Container:对任务运行环境的抽象,封装了CPU、内存等多维资源以及环境变量、启动命令等任务运行相关的信息。三.Hadoop实践操作*1. 运行环境搭建Hadoop的运行环境安装主要包括三大部分:基础的集群操作系统的准备、具体的运行环境安装包括JDK和Hadoop两个部分。1)虚拟机环境准备单台最小安装的虚拟机:内存4G,硬盘50G,并安装必要环境:sudo yum i
9、nstall -y epel-releasesudo yum install -y psmisc nc net-tools rsync vim lrzsz ntp libzstd openssl-static tree iotop git如果有需要,修改YUM源为国内镜像修改虚拟机的静态IPsudo vim /etc/sysconfig/network-scripts/ifcfg-ens33修改主机名sudo hostnamectl -static set-hostname hadoop101配置主机名称映射,打开/etc/hostssudo vim /etc/hosts修改windows的h
10、osts文件 路径:C:WindowsSystem32driversetc关闭虚拟机防火墙sudo systemctl stop firewalldsudo systemctl disable firewalld创建新用户,并重启sudo useradd zxysudo passwd zxyreboot配置atguigu用户具有root权限visudo修改/etc/sudoers文件,找到下面一行(91行),在root下面添加一行,如下所示:# Allow root to run any commands anywhereroot ALL=(ALL) ALLatguigu ALL=(ALL)
11、ALL在/opt目录下创建下创建module、software文件夹;并修改module、software文件夹的所有者sudo mkdir modulesudo mkdir softwaresudo mkdir /opt/module /opt/softwaresudo chown zxy:zxy /opt/module /opt/software关机照快照,再克隆两台虚拟机 修改其IP,主机名2)安装JDK卸载现有JDKrpm -qa | grep -i java | xargs -n1 sudo rpm -e nodeps grep -i 或 -ignore-case : 忽略字符大小写
12、的差别 xargs是给命令传递参数的一个过滤器: -n num 后面加次数,表示命令在执行的时候一次用的argument的个数,默认是用所有的将JDK导入到opt目录下面的software文件夹下解压JDK到/opt/module目录下tar -zxvf /opt/software/jdk-8u212-linux-x64.tar.gz -C /opt/module/配置JDK环境变量 新建/etc/profile.d/my_env.sh文件:一般用户对该文件夹只有只读权限,所以需要sudosudo vim /etc/profile.d/my_env.sh 在my_env.sh文件中添加如下内容
13、#JAVA_HOMEexport JAVA_HOME=/opt/module/jdk1.8.0_212export PATH=$PATH:$JAVA_HOME/bin 保存后退出 重启xshell窗口,让环境变量生效,或者运行命令source /etc/profile.d/my_env.sh测试JDK是否安装成功java -version如果能看到版本信息,则Java正常安装;否则试着重启。3)安装HadoopHadoop下载地址: https:/archive.apache.org/dist/hadoop/common/hadoop-3.1.3进入到Hadoop安装包的路径下,解压安装文件到
14、/opt/module下面zxyhadoop101 $ cd /opt/software/zxyhadoop101 software$ tar -zxvf hadoop-3.1.3.tar.gz -C /opt/module/zxyhadoop101 software$ ls /opt/module/hadoop-3.1.3添加Hadoop环境变量,并执行source命令zxyhadoop101 hadoop-3.1.3$ sudo vim /etc/profile.d/my_env.sh在profile文件末尾添加JDK路径:(shift+g)#HADOOP_HOMEexport HADOOP_HOME=/opt/module/hadoop-3.1.3export PATH=$PATH:$HADOOP_HOME/binexport PATH=$PATH:$HADOOP_HOME/sbin测试是否安装成功zxyhadoop101 hadoop-3.1.3$ source /etc/profile.d/my_env.shzxyhadoop101 hadoop-3.1.3$ hadoop versionHadoop 3.1.3Hadoop目录结构zxyhadoop102 hadoop-3.1.3$ ll总用量 180d