我想检查 gluster 文件系统中文件上是否存在文件锁。这样我就可以从任何主机上看到 gluster 文件系统中文件上是否有任何进程(远程或本地)持有文件锁。
例如:我有两个主机:h1和小时2,均使用 RHEL 7.2。我在主机上有一个应用程序h1pthread_rwlock_wrlock
它使用API获取了 gluster 文件系统中文件的文件锁。有时我关闭主机电源后h1。
现在从小时2我正在使用pthread_rwlock_trywrlock
该文件来查看是否持有任何锁定。这让我重新调整EBUSY
直到断电 30 分钟h1(看起来好像是来自h1仍然锁定它)。大约30分钟后pthread_rwlock_trywrlock
返回0
。
有什么方法可以快速检查 gluster 中的文件是否由任何进程保存?
答案1
在调整低于 gluster 卷参数后,它起作用了。
network.frame-timeout 30
network.ping-timeout 5
server.keepalive-time 5
server.keepalive-interval 2
server.keepalive-count 2
server.tcp-user-timeout 5
经过上述 gluster 卷的参数调整后。我看到远程主机上的应用程序能够在虚拟机关闭后 10 秒内检测 glusterfs 中锁定文件上的锁定是否存在。