Giuseppe Lavagetto has submitted this change and it was merged.

Change subject: ganglia-monitor-aggregator: fix upstart script
......................................................................


ganglia-monitor-aggregator: fix upstart script

At the moment, the ganglia-monitor-aggregator-instance upstart jobs
report "unkown instance" for all running aggregators, but the
corresponding gmond process is indeed running.

The reason for that is that gmond does demonize - so we need "expect
fork" here. Note that a bug on the
package (https://bugs.launchpad.net/ubuntu/+source/ganglia/+bug/1387853)
suggests to run gmond in the foreground instead and may have a point in
general. This small fix will however be enough to fix our current
situation.

Also, we modify the parent script to sleep infinity once it's launched,
and a pre-stop script, so that it is indeed possible to manage the gmond
instances with a single command.

Change-Id: I861ff238c59b46e1d95cdd8be91bf950436f8112
---
M modules/ganglia/files/upstart/ganglia-monitor-aggregator-instance.conf
M modules/ganglia/files/upstart/ganglia-monitor-aggregator.conf
2 files changed, 16 insertions(+), 1 deletion(-)

Approvals:
  Giuseppe Lavagetto: Verified; Looks good to me, approved



diff --git 
a/modules/ganglia/files/upstart/ganglia-monitor-aggregator-instance.conf 
b/modules/ganglia/files/upstart/ganglia-monitor-aggregator-instance.conf
index e4608c4..d273df5 100644
--- a/modules/ganglia/files/upstart/ganglia-monitor-aggregator-instance.conf
+++ b/modules/ganglia/files/upstart/ganglia-monitor-aggregator-instance.conf
@@ -7,7 +7,9 @@
 
 instance $ID
 
+expect fork
+
 respawn
 respawn limit 10 5
 
-exec /usr/sbin/gmond -c /etc/ganglia/aggregators/$ID.conf -p 
/var/run/gmond-$ID.pid
\ No newline at end of file
+exec /usr/sbin/gmond -c /etc/ganglia/aggregators/$ID.conf -p 
/var/run/gmond-$ID.pid
diff --git a/modules/ganglia/files/upstart/ganglia-monitor-aggregator.conf 
b/modules/ganglia/files/upstart/ganglia-monitor-aggregator.conf
index 85a984c..4af1472 100644
--- a/modules/ganglia/files/upstart/ganglia-monitor-aggregator.conf
+++ b/modules/ganglia/files/upstart/ganglia-monitor-aggregator.conf
@@ -18,4 +18,17 @@
                                start ganglia-monitor-aggregator-instance 
ID=${gmonid%.conf} || true
                fi
        done
+       # We want upstart to think this is up so that it can manage all the 
sub-instances
+       sleep infinity
+end script
+
+pre-stop script
+       for gmonconf in /etc/ganglia/aggregators/*.conf
+       do
+               gmonid=${gmonconf##*/}
+               if status ganglia-monitor-aggregator-instance 
ID=${gmonid%.conf} && [ /etc/ganglia/aggregators/$gmonid -nt 
/var/run/gmond-${gmonid%.conf}.pid ]
+               then
+                               stop ganglia-monitor-aggregator-instance 
ID=${gmonid%.conf} || true
+               fi
+       done
 end script

-- 
To view, visit https://gerrit.wikimedia.org/r/228805
To unsubscribe, visit https://gerrit.wikimedia.org/r/settings

Gerrit-MessageType: merged
Gerrit-Change-Id: I861ff238c59b46e1d95cdd8be91bf950436f8112
Gerrit-PatchSet: 6
Gerrit-Project: operations/puppet
Gerrit-Branch: production
Gerrit-Owner: Giuseppe Lavagetto <[email protected]>
Gerrit-Reviewer: Giuseppe Lavagetto <[email protected]>
Gerrit-Reviewer: jenkins-bot <>

_______________________________________________
MediaWiki-commits mailing list
[email protected]
https://lists.wikimedia.org/mailman/listinfo/mediawiki-commits

Reply via email to