I am experimenting with OCFS2 to have a clustered filesystem. I setup a clustered filesystem between 2 OEL6u4 VMs. And it seems to be working correctly.
My only concern is that I get the following message in my /var/log/messages each 10 minutes:
<hostname> o2hbmonitor: mount debugfs at /sys/kernel/debug
Where hostname is the hostname of the machine where I am viewing the log file.
Looking at https://oss.oracle.com/~smushran/elapsed/tools/0001-o2hbmonitor-Disk-heartbeat-monitor.patch I can track the logging to the is_cluster_up function. Where it is checked whether /sys/kernel/debug/o2hb exists. If not then the application goes to sleep for 1 minute and checks again. Every 10 times the directory doesn't exist a warning is printed.
By default the /sys/kernel/debug/o2hb is non-existent. You can make it available by mounting debugfs: mount -t debugfs debugfs /sys/kernel/debug
The result is that the warnings do no longer appear and if I don't enable any 'debugfs.ocfs2-flags' my syslog stays clean.
Still I don't really understand why the debugfs should be mounted to not show the errors? Can someone explain me or point me to some resources because while searching the internet I could only find the code. Which makes it hard to grasp the concepts. Like what is the purpose of o2hbmonitor. What is the exact role of the debugfs mount in this story.
From what I understand, the o2hbmonitor utility monitors if the cluster is up by scanning files in the /sys/kernel/debug directory, which the kernel creates when you use the debugfs facility. If the debugfs files do not exist or configured thresholds exceed than o2hbmonitor prints a message. The files are all virtual and do not occupy any space similar to procfs and systemfs.
You might want to check https://oss.oracle.com/projects/ocfs2/dist/documentation/ocfs2_faq.html for more information.