9.9. Glock 统计
GFS2 维护可帮助您跟踪文件系统中正在运行的统计信息。这可让您发现性能问题。
GFS2 维护两个计数器:
-
dcount
统计请求的 DLM 操作数量。这显示了数据量的 mean/variance 值。 -
qcount
统计请求的syscall
级别操作数量。通常qcount
等于或大于dcount
。
另外,GFS2 维护三个平均/变量对。平均/变量对是平滑度估算,使用的算法是用于计算网络代码中往返时间的算法。
GFS2 中维护的 mean 和 variance 值没有经过 scale 处理,而是以整数纳秒为单位。
- srtt/srttvar:非阻塞操作的平稳往返时间
- srttb/srttvarb:阻塞操作的平稳往返时间
- irtt/irttvar:在请求的间时间(例如,DLM 请求之间的时间)
非阻塞请求是一个马上完成的请求,无论有疑问的 DLM 锁定状态如何。这当前意味着,请求的条件为 (a) 当前的锁定状态为专用( exclusive);(b) 请求的状态为 null 或者非锁定(unlocked);或 (c) 设定了"try lock"标记。其他锁定请求都为阻塞请求。
对于 IRTTs 来说,较大的时间比较好;对于 RTTs 来说,比较小的时间更好。
统计数据保存在两个 sysfs
文件中:
-
glstats
文件。这个文件与glocks
文件类似,但它包含统计信息,每个 glock 一行。数据从那个 glock 类型的"每个 cpu"数据初始化,数据会被创建 glock(来自计数器,零)。这个文件可能非常大。 -
lkstats
文件。它为每个 glock 类型包含 "per cpu" 统计信息。它每行包含一个统计数据,每列都是一个 cpu 内核。每个 glock 类型有 8 行,一个类型跟随另一个类型。