关于集群

fsimage和edits文件分别指的是什么?存的是什么?
fsimage:HDFS文件系统元数据的镜像文件,其中包含HDFS文件系统的所有目录和文件inode及相关属性的序列化信息。?
edits:用户操作的编辑日志文件,存放HDFS文件系统的所有更新操作的动作,文件所有写操作会被记录到Edits文件中。

.默认情况下进行ckeckpoint(合并镜像及编辑日志)的触发条件是什么?
默认情况下,2NN每隔一小时执行一次checkpoint
默认情况下,一分钟检查一次Edits文件的操作次数,当操作次数达到1百万时,2NN执行一次checkpoint。

工作中假如你的namenode发生故障,导致namenode中的元数据丢失,如何恢复数据?
方法一:将2NN所在服务器元数据存储目录namesecondary中数据拷贝到NameNode存储元数据的name目录下,重新开启服务即可。
方法二:使用-importCheckpoint选项启动NameNode守护进程,将2NN所在服务器元数据存储目录namesecondary拷贝到NameNode所在服务器的同级目录下,导入检查点数据,重新开启服务即可。
1.修改hdfs-site.xml中的

dfs.namenode.checkpoint.period
120

<property>
  <name>dfs.namenode.name.dir</name>
  <value>/opt/module/hadoop-2.7.2/data/tmp/dfs/name</value>
</property>
导入检查点数据:hdfs namenode -importCheckpoint

什么情况下集群会进入安全模式?安全模式下集群有有什么限制?如何查看、进入、退出、等待安全模式
1.NameNode启动时,会将镜像文件(Fsimage)和编辑日志(Edits)加载到内存。一旦在内存中成功建立文件系统元数据的映像,则创建一个新的Fsimage文件和一个空的编辑日志。此时,NameNode开始监听DataNode请求。这个过程期间,NameNode处于安全模式。当数据块的副本数不满足(dfs.replication.min=1)最小副本数时,不会主动退出安全模式;
2.安全模式下:NameNode的文件系统对于客户端来说是只读的。
3.(1)bin/hdfs dfsadmin -safemode get (功能描述:查看安全模式状态)
(2)bin/hdfs dfsadmin -safemode enter (功能描述:进入安全模式状态)
(3)bin/hdfs dfsadmin -safemode leave (功能描述:离开安全模式状态)
(4)bin/hdfs dfsadmin -safemode wait (功能描述:等待安全模式状态)
注意:集群正常启动完成后,自动退出安全模式,如果无法正常退出可使用hdfs dfsadmin -safemode leave退出安全模式;对于全新创建的HDFS集群,NameNode启动后不会进入安全模式,因为没有Block信息。

DataNode工作机制
1)一个数据块在DataNode上以文件形式存储在磁盘上,包括两个文件,一个是数据本身,一个是元数据包括数据块的长度,块数据的校验和,以及时间戳。
2)DataNode启动后向NameNode注册,通过后,周期性(1小时)的向NameNode上报所有的块信息。
3)心跳是每3秒一次,心跳返回结果带有NameNode给该DataNode的命令如复制块数据到另一台机器,或删除某个数据块。如果超过10分钟没有收到某个DataNode的心跳,则认为该节点不可用。
4)集群运行中可以安全加入和退出一些机器。

启动集群时,我们要对namenode进行格式化操作?为什么只能格式化一次
格式化命令:hdfs namenode -format ,因为格式化NameNode,就会产生新的集群id,导致NameNode和DataNode的集群id不一致,集群找不到已往数据(现象datanode无法正常启动);所以,重新格式化NameNode时,一定要先删除data数据和log日志,
然后再格式化NameNode,后再启动集群

启动集群的相关命令有哪些(完整写出来)?
启动集群之前一定要格式化(/opt/module/hadoop-2.7.2)
bin/hdfs namenode -format ( has been successfully formatted)

启动HDFS服务
启动namenode
	sbin/hadoop-daemon.sh start|stop namenode
启动datanode
	sbin/hadoop-daemon.sh start|stop  datanode
			
检查namenode的web页面是否可以访问
	http://192.168.232.201:50070
		
启动YARN服务
启动resourcemanager
	sbin/yarn-daemon.sh start|stop resourcemanager
			
启动nodemanager
	sbin/yarn-daemon.sh start|stop nodemanager
			
检查yarn的web页面:http://192.168.232.201:8088
	
开启历史服务
	sbin/mr-jobhistory-daemon.sh start|stop historyserver
		
2.实现了集群的群停和群起
 群起群停HDFS服务进程(再namenode所在的服务器上)
 配置etc/hadoop/slaves  (相对于hadoop-2.7.2)
 群起的命令:start-dfs.sh
 群停的命令:stop-dfs.sh
	   
 群起群停YARN服务进程(再resourcemanager所在的服务器上)
	配置etc/hadoop/slaves  (相对于hadoop-2.7.2)
	群起的命令:start-yarn.sh
	群停的命令:stop-yarn.sh
	stop-all.sh  | start-all.sh

现在为了满足公司业务需求,在原有hadoop集群的基础之上要求扩展两个节点(也可以说扩展两台服务器),该如何操作?
1.从现有集群的任意服务器克隆两台服务器,修改主机名和ip地址
2.删除集群hadoop-2.7.2目录下的data logs目录
3.修改/etc/hosts文件,添加本机的主机、ip映射关系
4.将/etc/hosts分发到其他服务器
5.配置免密登录
6.启动datanode和nodemanager

公司现有100台服务器组成的集群,由于疫情期间业务骤减,现需要减少10台服务器,如何退役这些节点?有哪几种方式退役节点?
本业务场景适合使用黑名单退役节点:
步骤:
1.可以在hadoop-2.7.2/etc/hadoop目录下创建黑名单dfs.hosts.exclude文件
2.在dfs.hosts.exclude文件中添加要退役的服务器名称
3.在hdfs-site.xml文件中添加黑名单那的配置项

dfs.hosts.exclude
黑名单文件绝对路径

4.刷新NameNode、刷新ResourceManager
hdfs dfsadmin -refreshNodes
yarn rmadmin -refreshNodes

退役的方式:
黑名单:在黑名单上面的主机都会被强制退出。
白名单:添加到白名单的主机节点,都允许访问NameNode,不在白名单的主机节点,都会被强制退出。
注意:黑名单和白名单最好不要同时出现,如果同时出现不允许白名单和黑名单中同时出现同一个主机名称。

刷新namenode的命令是什么? 刷新resourcemanager的命令是什么?(课件里面找)
刷新NameNode、刷新ResourceManager
hdfs dfsadmin -refreshNodes
yarn rmadmin -refreshNodes

namenode是怎么确定datanode能够正常工作的?他们之间是怎么保持联系的?
1.datanode会先向namdnode注册,namdnode返回注册成功;
后每一小时datanode向namenode上传块信息,
每3秒datanode向namenode发送一次心跳包,并携带namenode给datanode的命令,
默认情况下如果超过10分30秒
namenode没有收到datanode的心跳,则任务datanode掉线。
2.dn和nn是通过心跳包来保持联系的

简要描述如何安装配置apache 的一个开源Hadoop,只描述即可,无需列出具体步骤,列出具体步骤更好?
1、准备服务器修改ip和主机名(虚拟机需要)、创建用户和软件安装目录
2、安装JDK并配置环境变量(/etc/profile);
  3、关闭防火墙;
  4、配置hosts文件,方便hadoop通过主机名访问(/etc/hosts);
  5、设置ssh免密码登录;
  6、解压缩hadoop安装包,并配置环境变量;
  7、修改配置文件hadoop-env.sh、yarn-env.sh、mapred-env.sh、 core-site.xml hdfs-site.xml mapred-site.xml yarn-site.xml;
  8、格式化hdfs文件系统(hadoop namenode -format);
  9、启动hadoop:start-def.sh、start-yarn.sh
  10、使用jps查看进程。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值