NAS延时调用

| 分类 分布式文件系统  nas  cephfs  | 标签 文件系统 

nfs-client性能指标

命令:mountstats [ options ] options:

       --version    display the version of this command    
       --nfs        display only the NFS statistics     
       --rpc        display only the RPC statistics     

输出:
mountstats –rpc /nfs/

命令:nfsiostat [ [ ] ] [ ] [ ] Options:

         --version             show program's version number and exit    
         -h, --help            show this help message and exit       

 Statistics Options:
         File I/O is displayed unless one of the following is specified:    

         -a, --attr            displays statistics related to the attribute cache  
         -d, --dir             displays statistics related to directory operations   
         -p, --page            displays statistics related to the page cache   

 Display Options:    
 Options affecting display format:    

         -s, --sort            Sort NFS mount points by ops/second   
         -l LIST, --list=LIST  only print stats for first LIST mount points   
                               count> ] ] [ <options> ] [ <mount point> ]    

命令:nfsstat [OPTION]…
OPTION:

          -m, --mounts          Show statistics on mounted NFS filesystems         
          -c, --client          Show NFS client statistics        
          -s, --server          Show NFS server statistics      
          -2                    Show NFS version 2 statistics       
          -3                    Show NFS version 3 statistics     
          -4                    Show NFS version 4 statistics      
          -o [facility]         Show statistics on particular facilities          
          nfs                   NFS protocol information    
          rpc                   General RPC information    
          net                   Network layer statistics   
          fh                    Usage information on the server's file handle cache   
          rc                    Usage information on the server's request reply cache   
          all                   Select all of the above    
          -v, --verbose, --all  Same as '-o all'   
          -r, --rpc             Show RPC statistics    
          -n, --nfs             Show NFS statistics   
          -Z[#], --sleep[=#]    Collects stats until interrupted        
                                Cumulative stats are then printed    
                                If # is provided, stats will be output every    
                                # seconds         
          -S, --since file      Shows difference between current stats and those in 'file'    
          -l, --list            Prints stats in list format    
          --version             Show program version   
          --help                What you just did   

nfs-ganesha

命令:dbus-send [–help] [–system | –session | –address=ADDRESS] [–dest=NAME] [–type=TYPE] [–print-reply[=literal]] [–reply-timeout=MSEC] [contents ...] 参见:https://github.com/nfs-ganesha/nfs-ganesha/wiki/Dbusinterface

(1)查询有哪些客户端连接
dbus-send –print-reply –system –dest=org.ganesha.nfsd /org/ganesha/nfsd/ClientMgr org.ganesha.nfsd.clientmgr.ShowClients

(2)读取该客户端的统计
dbus-send –print-reply –system –dest=org.ganesha.nfsd /org/ganesha/nfsd/ClientMgr org.ganesha.nfsd.clientstats.GetNFSv3IO string:::ffff:19.19.19.137

(3)读取export路径
dbus-send –print-reply –system –dest=org.ganesha.nfsd /org/ganesha/nfsd/ExportMgr org.ganesha.nfsd.exportmgr.ShowExports

(4)根据export路径读取该export路径统计信息
dbus-send –print-reply –system –dest=org.ganesha.nfsd /org/ganesha/nfsd/ExportMgr org.ganesha.nfsd.exportstats.GetNFSv3IO uint16:1

libcephfs

在/var/run/ceph-client下有asok文件,通过这个文件来查看其性能数据
比如:ceph daemon ./client.1954118.asok perf dump查看libcephfs的时延统计。
输出:

[root@ceph104 ceph]# ceph daemon ./client.1954118.asok perf dump
{

}

reply:
从libcephfs发出元数据请求,到收到mds会应答平均时延。
wrlat:
libceph写请求平均处理时延,从libcephfs write接口开始计算,到return之前的平均时延。
rdlat:
Libceph读请求平均处理时延,从libcephfs read接口开始计算,到return之前的平均时延。
fssync:
Libceph sync请求平均处理时延,从libcephfs sync接口开始计算,到return之前的平均时延。
msgr_running_recv_time:
msgr线程接收IO总时间。
msgr_running_send_time:
msgr线程发送IO总时间。

OSD

命令: ceph daemon osd.X perf dump

相关统计信息:
op_before_queue_op_lat:
messages线程接收到OP到OP入 shardwq队列之前的时延(包括message线程将IO数据从内核读上来的时间间隔)。
op_before_dequeue_op_lat:
messages线程接收到OP 到 从shardwq 队列出队,并且获取到PG Lock的时延。
op_r_latency/op_w_latency:
OSD 读/写 OP总的执行时间,即从messages线程接收到OP到OSD处理完成,给客户端应答之前的时间间隔。
op_r_process_latency/op_w_process_latency:
OSD 读/写OP的执行时间,即从OP出队到OSD处理完成,给客户端应答之前的时间间隔。
op_r_prepare_latency:
PG处理读 OP 时间,在数据备份策略为副本的情况下,表示从OP出队到提交IO给磁盘的时间。
op_w_prepare_latency:
PG处理写 OP 时间,即从OP出队到完成bluestore本地事务准备工作的时间。

ceph daemon osd.X perf dump bluestore
read_lat:
从bluestore 接收到读请求到完成读请求的时间。
commit_lat:
从bluestore接收到写请求到完成写请求的时间。
read_wait_aio_lat:
磁盘处理读请求时间。
read_onode_meta_lat:
读取onode元数据时间。
csum_lat:
计算checksum花费的时间。
state_prepare_lat:
bluestore准备事务上下文等花费的时间。
state_aio_wait_lat:
磁盘处理写请求的时间。
state_done_lat:
磁盘处理写请求完成后,等待事务进入done状态的时间(因为后提交到磁盘的IO可能先完成,为了防止乱序,后提交到磁盘的IO需要等待先提交磁盘的IO完成后才能进入done状态)。
kv_commit_lat:
kv提交时间。
kv_lat:
kv完成时间。
state_kv_queued_lat:
kv排队时间。

MDS

ceph daemon mds.ceph101 perf dump


上一篇     下一篇