Facter run on various RHEL5 systems (both physical and virtual) hangs when executed via cron.
Crontab Entry:-
$ cat /etc/cron.d/mcollective-yaml-update
10 * * * * root /usr/bin/facter -p --yaml >/etc/mcollective/facts.yaml.tmp && /bin/mv /etc/mcollective/facts.yaml.tmp /etc/mcollective/facts.yaml
Process Table:-
$ ps -ef | grep fac
root 25137 25131 0 09:10 ? 00:00:00 /bin/sh -c /usr/bin/facter -p --yaml >/etc/mcollective/facts.yaml.tmp && /bin/mv /etc/mcollective/facts.yaml.tmp /etc/mcollective/facts.yaml
root 25138 25137 0 09:10 ? 00:00:00 /usr/bin/ruby /usr/bin/facter -p –yaml
lsof output:-
$ lsof | grep facter
facter 29899 root cwd DIR 253,0 4096 130433 /root
facter 29899 root rtd DIR 253,0 4096 2 /
facter 29899 root txt REG 253,0 5056 1349275 /usr/bin/ruby
… various misc libs …
facter 29899 root mem REG 253,0 12072 1506765 /usr/lib64/ruby/1.8/x86_64-linux/digest.so
facter 29899 root mem REG 253,0 5000 1506768 /usr/lib64/ruby/1.8/x86_64-linux/fcntl.so
facter 29899 root mem REG 253,0 263072 1506772 /usr/lib64/ruby/1.8/x86_64-linux/nkf.so
facter 29899 root mem REG 253,0 18192 1506785 /usr/lib64/ruby/1.8/x86_64-linux/strscan.so
facter 29899 root mem REG 253,0 111480 326115 /lib64/
libnsl-2.5.sofacter 29899 root mem REG 253,0 12440 1506790 /usr/lib64/ruby/1.8/x86_64-linux/syslog.so
facter 29899 root mem REG 253,0 45440 1506779 /usr/lib64/ruby/1.8/x86_64-linux/socket.so
facter 29899 root mem REG 253,0 15048 1506775 /usr/lib64/ruby/1.8/x86_64-linux/racc/cparse.so
facter 29899 root mem REG 253,0 20736 1601142 /usr/lib64/ruby/site_ruby/1.8/x86_64-linux/json/ext/parser.so
facter 29899 root mem REG 253,0 28152 1601141 /usr/lib64/ruby/site_ruby/1.8/x86_64-linux/json/ext/generator.so
facter 29899 root mem REG 253,0 5160 1598087 /usr/lib64/ruby/1.8/x86_64-linux/digest/sha1.so
facter 29899 root mem REG 253,0 5160 1598085 /usr/lib64/ruby/1.8/x86_64-linux/digest/md5.so
facter 29899 root mem REG 253,0 25464 1352515 /usr/lib64/gconv/gconv-modules.cache
facter 29899 root mem REG 253,0 217016 1504010 /var/db/nscd/hosts
facter 29899 root 0r FIFO 0,6 0t0 850778561 pipe
facter 29899 root 1w REG 253,0 0 2609309 /etc/mcollective/facts.yaml.tmp
facter 29899 root 2w FIFO 0,6 0t0 850778562 pipe
facter 29899 root 3r REG 253,0 139 2186506 /etc/sysconfig/appdynamics
facter 29899 root 4r FIFO 0,6 0t0 850779144 pipe
facter 29899 root 5r REG 0,0 4096 5829 /sys/block/hdc/size
Ruby Version
$ rpm -q --qf '%{VERSION}-%{RELEASE}\n' ruby
1.8.7.370-1.el5
This didn’t happen with 1.6.x which was our previous version.And I cannot find a RHEL6 host with this issue. So I suspect Ruby here. Any ideas anyone ?