实训笔记7.12

7.12

一、座右铭

我的故事你说,我的文字我落,我值几两你定,我去何方我挑。

二、Hadoop的组成

2.1 HDFS:分布式文件存储系统

NameNode

DataNode

Secondary NameNode

2.2 YARN:分布式资源调度系统

ResourceManager

NodeManager

HDFS、YARN:

主从架构的分布式软件

2.3 MapReduce:分布式离线计算框架

三、Hadoop的安装

3.1 Hadoop配置之前必须先做三件事情

  1. 配置JDK
  2. 配置主机和IP的映射 /etc/hosts
  3. 主机之间的免密登录 ~/.ssh

3.2 本地安装–解压之后配置了环境变量

3.3 单点故障问题

伪分布式安装—将分布式软件的所有组件安装到同一个节点 如果是伪分布式安装,从节点只有一个即可

完全分布式安装–将分布式软件的组件安装到不同的节点上 从节点可以有多个

3.4 HA高可用模式安装–将主从架构软件的主节点安装多个

3.3、3.4:

都需要进行Hadoop配置文件的修改的$HADOOP_HOME/etc/hadoop修改的配置文件是一模一样的

3.4.1 hadoop-env.sh

export JAVA_HOME

export HADOOP_HOME=/opt/app/hadoop-3.1.4

export HADOOP_CONF_DIR=/opt/app/hadoop-3.1.4/etc/hadoop

export HDFS_NAMENODE_USER=root export HDFS_DATANODE_USER=root export HDFS_SECONDARYNAMENODE_USER=root export YARN_RESOURCEMANAGER_USER=root export YARN_NODEMANAGER_USER=root

3.4.2 core-site.xml

fs.defaultFS:指定HDFS的通信端口

hadoop.tmp.dir:指的HDFS底层的存储目录
  • <property>  		
    	<name>fs.defaultFS</name>  		
    	<value>hdfs://single:9000</value> 
    </property> 
    <!-- 指定hadoop运行时产生文件的存储目录  HDFS相关文件存放地址--> 
    <property>  	
    	<name>hadoop.tmp.dir</name>  		
    	<value>/opt/app/hadoop-3.1.4/metaData</value> 
    </property>
    

3.4.3 hdfs-site.xml

dfs.replication:hdfs的dn存储的block的备份数

dfs.namenode.http-address——50070,9870

dfs.datanode.http.address——50075,9864

dfs.namenode.secondary.http-address——50090,9868

后三个是:hdfs三个组件的web监控界面

3.4.4 yarn-env.sh

export JAVA_HOME

3.4.5 yarn-site.xml

yarn.resourcemanager.hostname:指定yarm的RM组件安装到哪个主机上

yarn.resourcemanager.classpath:指定YARN软件运行的时候需要的一些环境路径

yarn.resourcemanager.webapp.address:指的是RM的web访问路径

3.4.6 mapred-env.sh

export JAVA_HOME

3.4.7 mapred-site.xml

 <!-- 指定mr运行在yarn上 --> 
 <property>      
 	<name>mapreduce.framework.name</name>     
 	<value>yarn</value>  
 </property>   
 <!-- 指定MR APP Master需要用的环境变量  hadoop3.x版本必须指定-->  
 <property>      
 	<name>yarn.app.mapreduce.am.env</name>      
 	<value>HADOOP_MAPRED_HOME=${HADOOP_HOME}</value>  
 </property>  
 <!-- 指定MR 程序 map阶段需要用的环境变量 hadoop3.x版本必须指定-->  
 <property>      
 	<name>mapreduce.map.env</name>      
 	<value>HADOOP_MAPRED_HOME=${HADOOP_HOME}</value>  
 </property>  
 <!-- 指定MR程序 reduce阶段需要用的环境变量 hadoop3.x版本必须指定-->  
 <property>      
 	<name>mapreduce.reduce.env</name>      
 	<value>HADOOP_MAPRED_HOME=${HADOOP_HOME}</value> 
 </property>

3.4.8 workers/slaves

配置HDFS和YARN的从节点在哪些节点上安装的

3.4.9 log4j.properties

hadoop.log.dir=/opt/app/hadoop-3.1.4/logs 指定hadoop运行过程中日志输出目录

3.4.10 启动hadoop之前必须先格式化HDFS

四、Hadoop的完全分布式安装

  1. 克隆三台虚拟机,三台虚拟机需要配置IP、主机名、主机IP映射、ssh免密登录、时间服务器chrony的安装同步、yum数据仓库更换国内镜像源
  2. 安装JDK
  3. 安装Hadoop完全分布式
  4. 格式化HDFS:namenode所在节点格式化HDFS node1
  5. 启动HDFS和YARN
    1. HDFS是在namenode所在节点启动
    2. YARN是在RM所在节点启动

五、Hadoop的第一个核心组件:HDFS(分布式文件存储系统)

5.1 HDFS的组成

5.1.1 NameNode

  1. 存储整个HDFS集群的元数据(metaData)
  2. 管理整个HDFS集群

5.1.2 DataNode

  1. 存储数据,是存储的数据的block块。——默认情况下block块的大小是128M
  2. blocksize大小的计算公式
    1. 寻址时间:下载文件时找到文件的时间 寻址时间是传输时间的1%的时候是最佳的状态 hdfs的寻址时间平均是10ms
    2. 数据传输速度:100M/s

5.1.3 SecondaryNameNode

辅助NameNode去进行元数据的合并等操作

5.2 HDFS的基本使用

HDFS是一个分布式文件存储系统,可以存储数据(文件数据),HDFS既然是一个文件系统,那么就可以进行文件的上传、下载、删除、创建文件夹等等

HDFS给我们提供了两种操作的方式

  1. 命令行来操作

hdfs dfs 选项 xxx

  1. 通过Java API来进行操作

HDFS不适用于大量小文件的常量、HDFS不能对存储的文件进行修改操作

猜你喜欢

转载自blog.csdn.net/cai_4/article/details/131687836
今日推荐