设为首页 收藏本站
查看: 915|回复: 0

[经验分享] NFS服务对Hadoop(hdfs)集群影响测试(转)

[复制链接]
累计签到:1 天
连续签到:1 天
发表于 2015-7-12 10:57:41 | 显示全部楼层 |阅读模式
测试环境,系统信息
  $uname -a
Linux 10.**.**.15 2.6.32-220.17.1.tb619.el6.x86_64 #1 SMP Fri Jun 8 13:48:13CST 2012 x86_64 x86_64 x86_64 GNU/Linux
  hadoop和hbase版本信息:
  hadoop-0.20.2-cdh3u4
  hbase-0.90-adh1u7.1
  
  10.**.**.12  NFS Server端,提供NFS服务
  10.**.**.15   作为HDFS NameNode挂载10.**.**.12 NFS共享目录
  
  以ganglia-5.rpm作为文件操作对象,大小在3m左右。
  
  hadoop/conf/hdfs-site.xml 关于NFS配置信息如下:
    
       dfs.name.dir
       /u01/hbase/nndata/local,/u01/hbase/nndata/nfs
    
  
NFS Server端服务停掉情况
  NFS Server端服务停掉,执行:
  $sudo service nfs status
rpc.svcgssd is stopped
rpc.mountd is stopped
nfsd is stopped
rpc.rquotad is stopped
  
  此时,HDFS继续put,但是一直hang住,不会退出。
  
  NFS服务重启后,HDFS继续put,仍然hang住。重新执行put操作,hang住后timeout时长服务继续,提示文件存在,执行:
  $sh hadoop/bin/hadoop fs -ls hdfs://10.**.**.15:9516/  发现目录下存在同名空文件。
  
  $tail -f hadoop-**-namenode-10.**.**.15.log  时日志无输出,直到put操作继续后才有日志输出,一次输出这段时间操作的所有日志,包括put失败的文件异常信息。
  
  2012-10-23 11:22:38,956 WARN  org.apache.hadoop.ipc.Server: IPC Server Responder, call  create(/ganglia-4.rpm, rwxr-xr-x, DFSClient_-621134164, false, 3, 67108864) from  10.**.**.15:47771: output error
2012-10-23 11:22:38,957 INFO org.apache.hadoop.ipc.Server: IPC Server handler  7 on 9516 caught: java.nio.channels.ClosedChannelException
        at  sun.nio.ch.SocketChannelImpl.ensureWriteOpen(SocketChannelImpl.java:133)
        at  sun.nio.ch.SocketChannelImpl.write(SocketChannelImpl.java:324)
        at  org.apache.hadoop.ipc.Server.channelWrite(Server.java:1763)
        at  org.apache.hadoop.ipc.Server.access$2000(Server.java:95)
        at org.apache.hadoop.ipc.Server$Responder.processResponse(Server.java:773)
        at  org.apache.hadoop.ipc.Server$Responder.doRespond(Server.java:837)
        at  org.apache.hadoop.ipc.Server$Handler.run(Server.java:1462)
……
  
2012-10-23 11:22:38,963 ERROR org.apache.hadoop.security.UserGroupInformation:  PriviledgedActionException as:** (auth:SIMPLE)  cause:org.apache.hadoop.hdfs.protocol.AlreadyBeingCreatedException: failed to  create file /ganglia-5.rpm for DFSClient_382171631 on client 10.**.**.15,  because this file is already being created by DFSClient_-1964937422 on 10.**.**.15
......
  
2012-10-23 14:40:11,672 WARN org.apache.hadoop.ipc.Server: IPC Server  Responder, call getDatanodeReport(LIVE) from 10.**.**.15:54929: output error
2012-10-23 14:40:11,672 INFO org.apache.hadoop.hdfs.server.namenode.FSNamesystem: Roll  Edit Log from 10.**.**.12
2012-10-23 14:40:11,672 INFO org.apache.hadoop.ipc.Server: IPC Server handler  0 on 9516 caught: java.nio.channels.ClosedChannelException
        at  sun.nio.ch.SocketChannelImpl.ensureWriteOpen(SocketChannelImpl.java:133)
        at  sun.nio.ch.SocketChannelImpl.write(SocketChannelImpl.java:324)
        at  org.apache.hadoop.ipc.Server.channelWrite(Server.java:1763)
        at  org.apache.hadoop.ipc.Server.access$2000(Server.java:95)
        at  org.apache.hadoop.ipc.Server$Responder.processResponse(Server.java:773)
        at  org.apache.hadoop.ipc.Server$Responder.doRespond(Server.java:837)
        at  org.apache.hadoop.ipc.Server$Handler.run(Server.java:1462)
……
  
  2012-10-23 14:40:11,672 INFO  org.apache.hadoop.hdfs.server.namenode.FSNamesystem: Number of transactions:  8 Total time for transactions(ms): 1Number of transactions batched in Syncs:  0 Number of syncs: 4 SyncTimes(ms): 4 1007521
2012-10-23 14:40:12,152 INFO org.apache.hadoop.hdfs.server.namenode.GetImageServlet:  Downloaded new fsimage with checksum: 444a843721bd52a951673a1ba7aecb37
2012-10-23 14:40:12,154 INFO  org.apache.hadoop.hdfs.server.namenode.FSNamesystem: Roll FSImage  from 10.**.**.12
2012-10-23 14:40:12,154 INFO org.apache.hadoop.hdfs.server.namenode.FSNamesystem:  Number of transactions: 0 Total time for transactions(ms): 0Number of  transactions batched in Syncs: 0 Number of syncs: 1 SyncTimes(ms): 4 16
  
  此时,NFS Server端的hbase_home/nndata/share/current/edits文件修改时间在nfs服务恢复后重新更新。
  恢复nfs后重新完整put文件后
  $sh hadoop/bin/hadoop fs -put  ~/dba-ganglia-gmetad-3.1.7-2.x86_64.rpm hdfs://10.**.**.15:9516/ganglia-5.rpm:
  
  log日志信息如下:
  2012-10-23 11:31:08,794 INFO  org.apache.hadoop.hdfs.server.namenode.FSNamesystem: Number of transactions:  25 Total time for transactions(ms): 3Number of transactions batched in Syncs:  2 Number of syncs: 15 SyncTimes(ms): 10 676853
2012-10-23 11:31:08,804 INFO org.apache.hadoop.hdfs.StateChange: BLOCK*  NameSystem.allocateBlock: /ganglia-5.rpm. blk_2675602071792190621_3890
2012-10-23 11:31:08,855 INFO org.apache.hadoop.hdfs.StateChange: BLOCK*  NameSystem.addStoredBlock: blockMap updated: 10.**.**.13:50010 is added to  blk_2675602071792190621_3890 size 38020
……
2012-10-23 11:31:08,860 INFO org.apache.hadoop.hdfs.StateChange: Removing  lease on  file /ganglia-5.rpm from client DFSClient_-19034129
2012-10-23 11:31:08,861 INFO org.apache.hadoop.hdfs.StateChange: DIR*  NameSystem.completeFile: file /ganglia-5.rpm is closed by DFSClient_-19034129
  
  使用$sudo service nfs stop 关闭nfs服务时,namenode输出以下信息,此信息不是因为NFS服务停止通知而产生,是定期同步而产生:
  2012-10-23 11:33:54,815 INFO  org.apache.hadoop.hdfs.server.namenode.FSNamesystem: Number of transactions:  2 Total time for transactions(ms): 0Number of transactions batched in Syncs:  0 Number of syncs: 0 SyncTimes(ms): 0 0
  
  查询HDFS的safemode状态:
  $sh hadoop/bin/hadoop dfsadmin -safemode  get                                                                    
Safe mode is OFF
  可知HDFS并未自动切换到SafeMode。
  
NFS Server端服务挂掉情况
  NFS Server端服务挂掉,执行:
  $sudo killall -9 nfsd
  查看NFS状态:
  $sudo service nfs status
rpc.svcgssd is stopped
rpc.mountd (pid 10677) is running...
nfsd is stopped
rpc.rquotad (pid 10645) is running...
  
  执行
  $sh hadoop/bin/hadoop dfsadmin -report
  和
  $sh hadoop/bin/hadoop fs -put ~/dba-ganglia.rpm hdfs://10.**.**.15:9516/ganglia-13.rpm
  测试文件put操作,两个操作都会被hang住。并且和测试用例1中的情况一样。report和put 会话会一直hang住,并且不会timeout退出。
  此时重启NFS服务,会在一个超时时间后自动恢复。
  
测试得出结论
  1. NFS挂掉后,如果客户端涉及到HDFS要读的文件均在本机datanode上将不受影响(eg:$shhadoop/bin/hadoop fs -cat  hdfs://10.**.**.15:9516/11.txt 可以读到文本内容);
  2.NFS挂掉后,客户端涉及到HDFS文件写操作将会被一直hang住,不会超时退出。
  3.NFS挂掉后(包括servicenfs stop 或者killall nfsd 服务),HDFS端写操作将会一直被hang住,在NFS服务恢复之后,HDFS写操作会继续,并且会正常操作完成,这段时间内操作的详细日志也会在NFS服务恢复正常之后批量输出到hadoop_namenode.log中,后续测试会讨论对该超时的配置。
  
  转自 http://hi.baidu.com/richarwu/item/0c900469d48e9f2069105b9f

运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-85745-1-1.html 上篇帖子: Hadoop学习历程(四、运行一个真正的MapReduce程序) 下篇帖子: Hadoop输出结果中中文乱码问题‏
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表