From 95f3908e441c2da33ad95df51f214d1b7ff5a283 Mon Sep 17 00:00:00 2001 From: Dimitri Savineau Date: Thu, 6 Jun 2019 14:08:18 -0400 Subject: [PATCH] ceph-handler: replace fuser by /proc/net/unix We're using fuser command to see if a process is using a ceph unix socket file. But the fuser command runs through every PID present in /proc/ to see if one of them is using the file. On a system running thousands processes, the fuser command can take a long time to finish. Resolves: https://bugzilla.redhat.com/show_bug.cgi?id=1717011 Signed-off-by: Dimitri Savineau (cherry picked from commit da9891da1e8b9a8c91077c74e54a9df8ebb7070d) --- .../tasks/check_socket_non_container.yml | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-) diff --git a/roles/ceph-handler/tasks/check_socket_non_container.yml b/roles/ceph-handler/tasks/check_socket_non_container.yml index 0afe3eaa8..3af998af5 100644 --- a/roles/ceph-handler/tasks/check_socket_non_container.yml +++ b/roles/ceph-handler/tasks/check_socket_non_container.yml @@ -9,7 +9,7 @@ - inventory_hostname in groups.get(mon_group_name, []) - name: check if the ceph mon socket is in-use - command: fuser --silent {{ mon_socket_stat.stdout }} + command: grep -q {{ mon_socket_stat.stdout }} /proc/net/unix changed_when: false failed_when: false check_mode: no @@ -38,7 +38,7 @@ - inventory_hostname in groups.get(osd_group_name, []) - name: check if the ceph osd socket is in-use - command: fuser --silent {{ osd_socket_stat.stdout }} + command: grep -q {{ osd_socket_stat.stdout }} /proc/net/unix changed_when: false failed_when: false check_mode: no @@ -67,7 +67,7 @@ - inventory_hostname in groups.get(mds_group_name, []) - name: check if the ceph mds socket is in-use - command: fuser --silent {{ mds_socket_stat.stdout }} + command: grep -q {{ mds_socket_stat.stdout }} /proc/net/unix changed_when: false failed_when: false check_mode: no @@ -96,7 +96,7 @@ - inventory_hostname in groups.get(rgw_group_name, []) - name: check if the ceph rgw socket is in-use - command: fuser --silent {{ rgw_socket_stat.stdout }} + command: grep -q {{ rgw_socket_stat.stdout }} /proc/net/unix changed_when: false failed_when: false check_mode: no @@ -125,7 +125,7 @@ - inventory_hostname in groups.get(mgr_group_name, []) - name: check if the ceph mgr socket is in-use - command: fuser --silent {{ mgr_socket_stat.stdout }} + command: grep -q {{ mgr_socket_stat.stdout }} /proc/net/unix changed_when: false failed_when: false check_mode: no @@ -154,7 +154,7 @@ - inventory_hostname in groups.get(rbdmirror_group_name, []) - name: check if the ceph rbd mirror socket is in-use - command: fuser --silent {{ rbd_mirror_socket_stat.stdout }} + command: grep -q {{ rbd_mirror_socket_stat.stdout }} /proc/net/unix changed_when: false failed_when: false check_mode: no @@ -182,7 +182,7 @@ - inventory_hostname in groups.get(nfs_group_name, []) - name: check if the ceph nfs ganesha socket is in-use - command: fuser --silent {{ nfs_socket_stat.stdout }} + command: grep -q {{ nfs_socket_stat.stdout }} /proc/net/unix changed_when: false failed_when: false check_mode: no -- 2.39.5