目录
一、大数据及Hadoop入门
1.1 单节点、分布式、集群
1.1.1 大数据的概念
1.1.2 大数据的本质
二、HDFS Shell命令
2.1、常用相关命令
2.2、上传文件
2.2.1、上传文件介绍
2.2.2上传文件操作
2.3、下载文件
2.4、删除文件
2.5、创建目录
2.6、查看文件系统
2.7、拷贝文件
三、分布式系统原理
3.1、数据块
四、HDFS架构
五、Datanode服役(上线)和退役(下线)
5.1分发到其他节点
5.2、格式化并启动HDFS
hdfs-toc" style="margin-left:40px;">5.3、更新hdfs
六、Centos权限管理
6.1、权限介绍
6.2、修改权限
七、HDFS进程启动流程
八、Hadoop配置文件解释
hadoop%E5%86%85%E6%A0%B8%E5%92%8C%E7%8E%AF%E5%A2%83%E9%85%8D%E7%BD%AE-toc" style="margin-left:40px;">8.1 hadoop内核和环境配置
8.2、mapreduce配置
8.3、yarn配置
8.4、slaves配置
hdfs%E5%8F%8Ayarn%E5%90%AF%E5%8A%A8%E9%AA%8C%E8%AF%81%EF%BC%9A%E8%BF%9B%E7%A8%8B%E5%90%AF%E5%8A%A8%E5%91%BD%E4%BB%A4-toc" style="margin-left:0px;">九、hdfs及yarn启动验证:进程启动命令
一、大数据及Hadoop入门
1.1 单节点、分布式、集群
1.1.1 大数据的概念
大数据的5v特点
Volume:大量
Velocity:高速
Variety:多样
Value:价值
Veracity:真实性
1.1.2 大数据的本质
✳ 1)单台计算机存储这些数据都是很困难的,那怎么办?
答:分发到不同的计算机存储。
✳ 2)只存储有没有意义?
答:无意义,存储是需要投入场地,投入服务器硬件设施,都需要钱维护。
✳ 3)那存储后需要什么?怎么样让存储变得有意义?
答:认真分析,真正地把数据转换成有价值的虚拟产品。
二、HDFS Shell命令
2.1、常用相关命令
hdfs dfs-cat //查看
hdfs dfs-copyFromLocal //从本地复制
hdfs dfs-copyToLocal //复制至本地
hdfs dfs-cp //复制
hdfs dfs-get //获取
hdfs dfs-ls //查看
hdfs dfs-mkdir //创建文件
hdfs dfs-put //传输
hdfs dfs-rm //删除
2.2、上传文件
2.2.1、上传文件介绍
(1)全称形式
hdfs dfs-put ./file hdfs://hadoop1:9000/
hdfs dfs-copyfromlocal ./file hdfs://hadoop1:9000/
(2)省略写法
hdfs dfs-put ./file /
hdfs dfs-copyfromlocal ./file /
问题:为什么能够省略具体hdfs对应ip地址呢?
答:配置了core-site.xml
2.2.2上传文件操作
-put方式上传
[root@hadoop1 ~]# cd /home/java
[root@hadoop1 java]# ls
jdk jdk_1.8.0_131.tar.gz
[root@hadoop1 java]# hdfs dfs -put ./jdk_1.8.0_131.tar.gz hdfs://hadoop1:9000/
-copyFromLocal方式上传
[root@hadoop1 ~]# cd /home/java
[root@hadoop1 java]# ls
jdk jdk_1.8.0_131.tar.gz
[root@hadoop1 java]# hdfs dfs -put ./jdk_1.8.0_131.tar.gz hdfs://hadoop1:9000/
2.3、下载文件
hdfs dfs -get HDFS的根路径下的文件 本地的文件系统
hdfs dfs -copyToLocal /jdk_1.8.0_131.tar.gz ./
前面一个/代表HDFS的根路径,后面一个/代表Linux的根路径
2.4、删除文件
rm -rf dir 删除Linux本地文件系统中对应目录
hdfs dfs -rm -r /dir 删除目录和子目录
2.5、创建目录
hdfs dfs -mkdir /dir 一个目录,不是递归目录
hdfs dfs -mkdir -p /dir1/dir2 递归目录
2.6、查看文件系统
hdfs dfs -ls /
2.7、拷贝文件
cp jdk_1.8.0_131.tar.gz jdk_1 将后者拷贝到前者所在的文件夹中 Linux本地执行
hdfs dfs -cp /jdk_1.8.0_131.tar.gz /jdk1 HDFS文件系统中
三、分布式系统原理
3.1、数据块
把数据切分成一个个固定大小的块(物理切分,不是逻辑切分),将这些块存储到分布式文件系统上
四、HDFS架构
HDFS的文件是在物理上分块存储的 (hadoop2.x版本它的默认blocksize大小128M)
五、Datanode服役(上线)和退役(下线)
5.1分发到其他节点
scp /home/hadoop/hadoop-2.6.1/etc/hadoop/slaves hadoop2:/home/hadoop/hadoop-2.6.1/etc/hadoop/ 分发到其他节点
5.2、格式化并启动HDFS
hdfs namenode -format
start-dfs.sh
格式化,并启动HDFS
hdfs" style="text-align:justify;">5.3、更新hdfs
hdfs dfsadmin -refreshNodes
六、Centos权限管理
6.1、权限介绍
每一组信息如“rwx”,每一个字符都有它自己的特定含义且先后位置是固定的,其中r是读权限、w是写权限、x是可执行权限、-没有对应字符的权限
Linux里面对这些字符设置对应的数值,r是4,w是2,x是1,-是0。“rwx”则是7(=4+2+1)
6.2、修改权限
修改文件夹及子文件夹所有文件
chown 或 chomd -R “权限”或“名:组” 文件夹名称
七、HDFS进程启动流程
DataNode:负责数据块的存储,它是HDFS的小弟
Namenode:负责元数据的存储,接收客户端的请求,维护整个HDFS集群的目录树
Secondary:辅助namenode管理,分担namenode压力
八、Hadoop配置文件解释
hadoop%E5%86%85%E6%A0%B8%E5%92%8C%E7%8E%AF%E5%A2%83%E9%85%8D%E7%BD%AE">8.1 hadoop内核和环境配置
(1)hadoop-env.sh:配置JDK的路径
(2)core-site.xml:配置Hadoop集群的元数据存储路径,配置主节点在哪一台机器上
<configuration><property><name>fs.defaultFS</name>指定namenode将来在哪一台节点启动,通信端口是9000,是fileSystem默认的端口号</property><property><name>hadoop.tmp.dir </name><value>/usr/hadoop-2.6.1/hdpdata</value>指定元数据存储的路径,hdpdata是在执行 hdfs namenode -format后才会自动生成</property></configuration>
8.2、mapreduce配置
主要配置mapred-site.xml
MR资源调度用Yarn
<configuration><property><name>mapreduce.framework.name</name><value>yarn</value></property></configuration>
8.3、yarn配置
配置yarn-site.xml
<configuration><property><name>yarn.resourceManager.hostname</name>配置Yarn老大【resourceManager】将来在哪一台节点启动,注意是自己的master</property><property><name>yarn.nodemanager.aux-services</name><value>mapreduce_shuffle</value>yarn的子服务,必须使用mapreduce_shuffle</property></configuration
8.4、slaves配置
指定datanode将来在哪台节点启动
注:在一台节点上的相关配置修改,要分发到全部集群上
例:
hdfs%E5%8F%8Ayarn%E5%90%AF%E5%8A%A8%E9%AA%8C%E8%AF%81%EF%BC%9A%E8%BF%9B%E7%A8%8B%E5%90%AF%E5%8A%A8%E5%91%BD%E4%BB%A4">九、hdfs及yarn启动验证:进程启动命令
namenode -format
格式化HDFS的作用是初始化集群
(1)HDFS的相关进程:
Namenode(老大)
Datanode(小弟)
SecondaryNameNode(checkpoint节点)
(2)Yarn相关进程
Resourcemanager(老大)
Nodemanager(小弟)
hdfs和yarn相关进程都启动后,hdfs集群管理页面和yarn管理界面才可访问成功
start-dfs.sh
start-yarn.sh
这两个命令等效于start-all.sh
kill - 9
强制杀死该进程
hadoop-daemon.sh start namenode
单独启动HDFS相关的进程