基于 Linux 集群环境上 GPFS 的问题诊断(5)

跟踪是 GPFS 文件系统中一个非常重要的功能。对于开发人员来说,它可以帮助开发人员看到系统运行过程中内部的、更底层的信息,以此来找到问题并解决。对于非开发人员,一般是看不懂这些底层信息的。但掌握跟踪功能的设置,可以让我们在发现问题时,给开发或服务团队提供更准确、更有价值的日志信息。下面就简单介绍一下如何修改跟踪属性以及如何使其生效。

  修改跟踪属性的方法

  mmchconfig trace="trace_class trace_level [trace_class trace_level]..."

  或者:

  mmtracectl --set --trace="trace_class trace_level [trace_class trace_level]..."

  例如:mmtracectl --set --trace="tm 2 thread 1 vnode 5"

  在众多的跟踪属性中,我们究竟要修改哪些默认值是要根据实际情况决定的。对于不同的问题,会需要不同方面的属性。

  使修改生效的方法:

  1. 在修改属性命令后增加 – i 参数,意思是马上生效。如:mmtracectl --set --trace="tm 2 thread 1 vnode 5" -i

  2. 重启整个 GPFS

 mmshutdown – a 
 mmstartup -a 

  查看当前跟踪属性的设置

  通过 mmfsadm showtrace 或者 mmlsconfig 命令,可以查看当前跟踪属性的设置情况。例如:运行上面的修改跟踪属性的命令后,可以通过 mmfsadm showtrace 或者 mmlsconfig 命令进行确认,看相应属性的修改是否生效。

 node1:~ # mmlsconfig 
 Configuration data for cluster node1: 
 --------------------------------------- 
 clusterName node1 
 clusterId 12402633003866146335 
 clusterType lc 
 autoload yes 
 minReleaseLevel 3.2.1.6 
 dmapiFileHandleSize 32 
 cnfsSharedRoot /tiam_utility/cnfs 
 cnfsReboot yes 
 pagepool 1G 
 maxFilesToCache 20000 
 maxMBpS 500 
 worker1Threads 144 
 prefetchThreads 144 
 dmapiMountTimeout 120 
 envVar LC_ALL="" LC_CTYPE="en_US.UTF-8" 
 assertOnStructureError yes 
 trace tm 2 thread 1 vnode 5 
 traceFileSize 0 
 cnfsNFSDprocs 128 
 nfsPrefetchStrategy 1 
 
 File systems in cluster node1: 
 -------------------------------- 
 /dev/tiam_utility 
 
 node1:~ # mmfsadm showtrace 
 Current trace levels: 
 ( 省略 ) 
   thread : 1(operations in Thread class) 
     tm : 2(token manager) 
     ts : 0  (Tiger Shark specific code) 
    user1 : 0  (Used for miscellaneous tracing and) 
    user2 : 0  (debugging purposes) 
    vnode : 5(vnode layer of VFS kernel support) 
 ( 省略 ) 

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

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