hadoop含有四个模块,分别是 common、 hdfs和yarn。node
commonweb
公共模块。编程
HDFS安全
hadoop distributed file system,hadoop分布式文件系统,负责文件的存储管理。HDFS包括Namenode进程、DataNode进程和Secondary Namenode进程。网络
mapreduce框架
高度抽象的编程模型,包括映射和化简两个阶段,是大数据计算技术的基础。ssh
yarn分布式
资源调度框架,完成在job执行时,进行集群总体资源的调配管理的。集群中全部资源的配置都有ResourceManager完成。oop
High availability,系统提供持续服务的能力,一般使用9的个数来衡量,例如5个9就是指99.999%。fetch
high availability,高可用问题。 衡量系统持续提供服务的能力。一般使用几个9衡量。 99.999% //折合一年能够宕机5分钟 99.9999% //折合一年能够宕机5分钟
1.local 不会启动任何进程。 2.pesudo 一个节点启动全部进程(5). 3.full 在不一样节点启动不一样进程。 4.HA模式 active(宕机) + standby(待命)
http://namenode:50070/ http://2nn:50090/ http://datanode:50075/
start-all.sh start-dfs.sh start-yarn.sh hadoop-daemon.sh start namenode hadoop-daemons.sh start datanode
不一样的hadoop版本,对副本的放置策略也不用。
按照ip地址返回网络拓扑树形结构/a/b/c/xxx | /a/b/c/xxx
每一个节点到达共同交换机的跃点数的总和。
协同服务,HA服务支持。 容灾能力 : (n - 1) / 2 奇数.
每一个目录下的内容相同,用于备份。
每一个目录下的内容不一样,用于扩容。
1.配额管理 1.1)空间配额 限制 1.2)目录配额 限制目录或文件的个数 hdfs dfsadmin -setQuota 1 data2 //1保持目录为空 hdfs dfsadmin -clsQuota data2 //1保持目录为空 2.快照 瞬间照相(差别化存储)。 3.OIV offline image viewer,离线镜像查看器 fsimage(元数据) 4.OEV offline edit viewer,离线编辑日志查看器。 edit存放的对dfs的操做过程。
[hdfs-site.xml] 1.dfs.namenode.checkpoint.period=3600 两次检查点的时间间隔. 2.操做记录数=1000,000 操做记录超过该值,也会致使检查点的建立。 dfs.namenode.checkpoint.txns 3.检查周期(默认60) dfs.namenode.checkpoint.check.period=60 4.设置检查点文件个数,默认是2 dfs.namenode.num.checkpoints.retained=2 5.手动融合镜像文件(须要安全模式) hdfs dfsadmin -safemode enter hdfs dfsadmin -saveNamespace hdfs dfsadmin -safemode leave 6.从client能够下载镜像文件 //下载集群的镜像文件到当前目录下 hdfs dfsadmin -fetchImage .
保存块复制信息等和datanode的心跳信息到日志文件。 该日志文件在namenode的本地logs下。 hdfs dfsadmin -metasave 1.log
hdfs dfsadmin -safemode get //查看 hdfs dfsadmin -safemode enter //进入 hdfs dfsadmin -safemode leave //退出 hdfs dfsadmin -safemode wait //等待
//启用快照 hfds dfsadmin -allowSnapshot data //禁用快照 hfds dfsadmin -disallowSnapshot data //建立快照 hdfs dfs -createSnapshot data sp1 //删除 hdfs dfs -deleteSnapshot data sp1 //重命名 hdfs dfs -renameSnapshot data sp1 sp2 删除目录时,若是是可快照目录而且有快照,没法删除,须要 先删除快照再删除目录。
1.描述 hdfs的datanode下线由dfs.hosts.exclude属性控制,yarn的nodemanager下线 由yarn.resourcemanager.nodes.exclude-path控制。 2.dfs.hosts.exclude 配置datanode黑名单文件路径名,名单中的节点不容许链接到nn。若是该属性不配置, 全部节点均可以链接。 3.dfs.hosts 配置datanode白名单文件路径名,名单中的节点容许链接到nn。若是该属性不配置, 全部节点均可以链接。 4.规则 dfs.hosts dfs.host.exlucde result --------------------------------------------------- NO NO Not NO YES Not YES NO Yes YES YES Yes并将退役 5.退役实操 5.0)准备黑白名单 dfs_exclude.conf dfs_include.conf 5.1)配置hdfs-site.xml的黑白名单属性 <property> <name>dfs.hosts</name> <value>/soft/hadoop/etc/full/dfs_include.conf</value> </property> <property> <name>dfs.hosts.exclude</name> <value>/soft/hadoop/etc/full/dfs_exclude.conf</value> </property> 5.2)添加退役节点地址到黑名单,不要更新白名单 [dfs_exclude.conf] s102 5.3)刷新nn hdfs dfsadmin -refreshNodes 5.4)进入webui,查看退役的节点是否显式为"退役中",开始复制数据块到其余节点。 5.5)一旦复制完成,状态显式"Decommissioned",中止退役节点 5.6)从白名单中删除退役节点 s103 s104 s106 5.7)再次刷新节点 hdfs dfsadmin -refreshNodes 5.8)从slaves中删除退役节点 s103 s104 s106
1.准备环境 克隆新虚拟机 配置ssh 删除本地临时目录 2.实操过程 2.1)添加新地址到白名单 s103 s104 s106 s102 [删除黑名单记录] 2.2)刷新名称节点 hdfs dfsadmin -refreshNodes 2.3)更新slaves文件 s103 s104 s106 s102 2.4)启动新节点的datanode进程 [s102] hadoop-daemon.sh start datanode 2.5)检查webui
1.描述 hdfs的datanode下线由dfs.hosts.exclude属性控制,yarn的nodemanager下线 由yarn.resourcemanager.nodes.exclude-path控制。 2.dfs.hosts.exclude 配置datanode黑名单文件路径名,名单中的节点不容许链接到nn。若是该属性不配置, 全部节点均可以链接。 3.dfs.hosts 配置datanode白名单文件路径名,名单中的节点容许链接到nn。若是该属性不配置, 全部节点均可以链接。 4.规则 dfs.hosts dfs.host.exlucde result --------------------------------------------------- NO NO Not NO YES Not YES NO Yes YES YES Yes并将退役 5.退役实操 5.0)准备黑白名单 yarn_exclude.conf yarn_include.conf 5.1)配置yarn-site.xml的黑白名单属性 <property> <name>yarn.resourcemanager.nodes.include-path</name> <value>/soft/hadoop/etc/full/yarn_include.conf</value> </property> <property> <name>yarn.resourcemanager.nodes.exclude-path</name> <value>/soft/hadoop/etc/full/yarn_exclude.conf</value> </property> 5.2)添加退役节点地址到黑名单,不要更新白名单 [yarn_exclude.conf] s102 5.3)刷新nn yarn rmadmin -refreshNodes 5.4)进入webui,查看退役的节点是否显式为"退役中",开始复制数据块到其余节点。 http://rm:8088/ 5.5)一旦复制完成,状态显式"Decommissioned",中止退役节点 5.6)从白名单中删除退役节点 [yarn-include.conf] s103 s104 s106 5.7)再次刷新节点 yarn rmadmin -refreshNodes 5.8)从slaves中删除退役节点 s103 s104 s106