利用QJM实现HDFS的HA策略部署与验证工作记录分享(5)

4、 HDFS HA机制的可用性验证

4.1手动切换模式验证 

这里我使用的验证方法主要是模拟ActiveNameNode进程死掉的情况,另外Active NameNode所在节点发生宕机的情况也是一样的。现在集群中nn1Active NameNodenn2StandBy NameNode,具体步骤:

步骤1:进入nn1所在节点即Hadoop-master,运行kill -9  $NameNodePIDnn1杀死(此时集群中只有一个StandByNameNode)。

步骤2:往集群上传文件,或者执行hadoop fs相关命令提示连接不到(此时,集群中没有Active NameNode来处理客户端的RPC请求)。看错误信息:

wKioL1PLzTqhS06nAAd7j72C53I301.jpg

步骤3:恢复集群,将StandBy NameNode转换为Active NameNode。进入nn2所在节点即hadoop-slave01执行:

$HADOOP_HOME/bin/hdfshaadmin -transitionToActive nn2

此时,nn2已经变成为Active NameNode,看50070

wKioL1PLzYny5_EIAAGPec3rbko752.jpg

步骤4:再次执行hadoop fs相关命令或者上传文件,一切正常。

步骤5:另外,不要忘记集群虽然是恢复了,但是此时已经没有了StandBy NameNode了,这是直接进入nn1所在节点启动NameNode进程,此时nn1Standby NameNode

wKiom1PLzG_DvTUBAAGmyp--GSc442.jpg

 

当目前为止,一起验证以及恢复已经完成。各个服务的日志也恢复了正常。 

4.2、自动切换模式验证 

自动切换模式的验证和手动切换基本一样,还是手动killActive NameNode进程,观察集群是否会自动恢复,将备用节点转换为Active NameNode。经过测试,当手动killActive NameNode后,Standby NameNode成功地自动转换为Active NameNode继续服务于个个DataNode

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:https://www.heiqu.com/fa97acd4894c9bc4b3c2cd2ee8cb8a14.html