Hadoop运行模式及相关文件说明 一、Hadoop的安装 二、使用普通用户操作 三、hadoop的目录介绍 四、使用HDFS 五、运行MapReduce 六、hadoop的配置文件 七、在使用hadoop命令时

①Hadoop运行的前提是本机已经安装了JDK,配置JAVA_HOME变量

②在Hadoop中启动多种不同类型的进程

	例如NN,DN,RM,NM,这些进程需要进行通信!
	在通信时,常用主机名进行通信!
	
	在192.168.6.100机器上的DN进程,希望访问192.168.6.104机器的NN进程!
	需要在集群的每台机器上,配置集群中所有机器的host映射!
	配置:
		Linux:   /etc/hosts
		Windows:  C:WindowsSystem32driversetchosts
		
	不配报错:  
			 DNS映射异常,HOST映射异常

③注意权限

hadoop框架在运行需要产生很多数据(日志),数据的保存目录,必须让当前启动hadoop进程的用户拥有权限!

④关闭防火墙,设置开机不自启动

centos6:

service iptables stop
chkconfig iptables off

如果使用centos7,要使用这个命令需要额外下载:

sudo yum -y install iptables

二、使用普通用户操作

①创建普通用户atguigu

useradd username

②为atgugiu用户设置密码

passwd username

③赋予atguigu用户root权限

vim /etc/sudoers

④将/opt目录下创建的soft目录和module目录的所属主修改为atguigu

chown -R 用户名:所属组名默认也是用户名 /opt/soft /opt/module

三、hadoop的目录介绍

bin: 使用HDFS和运算MR时,常用的目录!
常用hadoop命令!

sbin: 管理员启动和停止集群使用的命令!

etc: hadoop配置文件所在的目录

四、使用HDFS

完成大数据的存储!
HDFS(hadoop distributed filesystem)

HDFS的运行模式:
取决于参数: fs.defaultFS=file:///(默认)
fs.defaultFS在core-default.xml中!

本地模式(在本机上使用HDFS,使用的就是本机的文件系统)
fs.defaultFS=file:///
分布式模式
要使用的文件系统是一个分布式的文件系统!
一个分布式的文件系统,必须由NN,DN等若干进程共同运行完成文件系统的读写操作!
fs.defaultFS=hdfs://

启动NN: hadoop-daemon.sh start namenode
停止NN: hadoop-daemon.sh stop namenode
启动DN: hadoop-daemon.sh start datanode
停止DN: hadoop-daemon.sh stop datanode

使用: hadoop fs 命令 文件路径

五、运行MapReduce

完成大数据的计算!
①按照MR的规范编写一个程序
②将程序打包为jar
③运行jar中的程序

两种运行模式:
取决于参数mapreduce.framework.name=local(默认)
本地模式(在本机上运行MR) mapreduce.framework.name=local
在本机运行MR!在本机使用多线程的方式,运行多个Task!

分布式,在YARN上运行 mapreduce.framework.name=yarn
将MR提交给YARN,由YARN将Job中的多个task分配到多台机器中,启动container运行task!

需要启动YARN,YARN由RM和NM进程组成!

六、hadoop的配置文件

hadoop安装后,hadoop的性能和表现取决于用户的配置!

4个默认的配置文件:
位置: HADOOP_HOME/share/xxxx.jar/xxx-default.xml

core-default.xml: 设置hadoop最核心的参数!
hdfs-default.xml: 保存的是hdfs相关的参数!
mapred-default.xml: MR程序在运行时,需要使用的参数!
yarn-default.xml: yarn在启动时,需要的参数!

4个用户可以自定义的配置文件: xxx-site.xml
core-site.xml: 用户自定义的设置hadoop最核心的参数!
hdfs-site.xml: 用户自定义的保存的是hdfs相关的参数!
mapred-site.xml: 用户自定义的MR程序在运行时,需要使用的参数!
yarn-site.xml: 用户自定义的yarn在启动时,需要的参数!

用户自定义的配置文件,可以覆盖默认配置文件中同名的参数的值!

Hadoop在启动时,先加载4个默认的配置文件,再加载用户自定义的配置文件,如果用户自定义的配置文件
中有和4个默认配置文件中门的参数,可以覆盖之前已经加载的值!

七、在使用hadoop命令时

可以自定义配置文件的目录: hadoop --config 配置文件的目录
如果没有配置,默认读取 HADOOP_HOME/etc/hadoop 中对应的配置文件!

hadoop-daemon.sh start namenode脚本在执行时,只会去默认的目录中读取配置文件!