Giuseppe Lavagetto has submitted this change and it was merged.
Change subject: ganglia::monitor::aggregator: fix upstart (take 2)
......................................................................
ganglia::monitor::aggregator: fix upstart (take 2)
We fix the ganglia-aggregator-monitor script to run as a real
long-running job instead of a task, so that we can truly manage all the
instances via it.
Also, turns out that when running as aggregators, expect fork doesn't work
with daemonize = yes, so we do run gmond in the foreground in this
case (which is preferred from upstart anyways, and we remove the "expect
fork" from the script, which was a hack anyways. Note that with the
default config (the one we use for ganglia-monitor), expect fork works
correctly, so something is still there to be understood.
Change-Id: I829eea6deff04e84548313c21f0f28827014c641
---
M modules/ganglia/files/upstart/ganglia-monitor-aggregator-instance.conf
M modules/ganglia/files/upstart/ganglia-monitor-aggregator.conf
M modules/ganglia/manifests/monitor/aggregator/instance.pp
M modules/ganglia/templates/gmond.conf.erb
4 files changed, 6 insertions(+), 9 deletions(-)
Approvals:
Giuseppe Lavagetto: Looks good to me, approved
jenkins-bot: Verified
diff --git
a/modules/ganglia/files/upstart/ganglia-monitor-aggregator-instance.conf
b/modules/ganglia/files/upstart/ganglia-monitor-aggregator-instance.conf
index d273df5..bd0b675 100644
--- a/modules/ganglia/files/upstart/ganglia-monitor-aggregator-instance.conf
+++ b/modules/ganglia/files/upstart/ganglia-monitor-aggregator-instance.conf
@@ -7,8 +7,6 @@
instance $ID
-expect fork
-
respawn
respawn limit 10 5
diff --git a/modules/ganglia/files/upstart/ganglia-monitor-aggregator.conf
b/modules/ganglia/files/upstart/ganglia-monitor-aggregator.conf
index 4af1472..53b90d1 100644
--- a/modules/ganglia/files/upstart/ganglia-monitor-aggregator.conf
+++ b/modules/ganglia/files/upstart/ganglia-monitor-aggregator.conf
@@ -5,16 +5,12 @@
start on runlevel [2345]
-task
-
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 ]
+ if ! status ganglia-monitor-aggregator-instance
ID=${gmonid%.conf}
then
- restart ganglia-monitor-aggregator-instance
ID=${gmonid%.conf} || true
- else
start ganglia-monitor-aggregator-instance
ID=${gmonid%.conf} || true
fi
done
@@ -26,7 +22,7 @@
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 ]
+ if status ganglia-monitor-aggregator-instance ID=${gmonid%.conf}
then
stop ganglia-monitor-aggregator-instance
ID=${gmonid%.conf} || true
fi
diff --git a/modules/ganglia/manifests/monitor/aggregator/instance.pp
b/modules/ganglia/manifests/monitor/aggregator/instance.pp
index 65243d9..925c92f 100644
--- a/modules/ganglia/manifests/monitor/aggregator/instance.pp
+++ b/modules/ganglia/manifests/monitor/aggregator/instance.pp
@@ -32,6 +32,9 @@
rule => "proto tcp dport ${gmond_port} { saddr \$ALL_NETWORKS ACCEPT;
}",
}
+ # Run these instances in the foreground
+ $daemonize = "no"
+
file { "/etc/ganglia/aggregators/${id}.conf":
ensure => $ensure,
require => File['/etc/ganglia/aggregators'],
diff --git a/modules/ganglia/templates/gmond.conf.erb
b/modules/ganglia/templates/gmond.conf.erb
index 9c2d525..a2f6e7c 100644
--- a/modules/ganglia/templates/gmond.conf.erb
+++ b/modules/ganglia/templates/gmond.conf.erb
@@ -3,7 +3,7 @@
/* This configuration is as close to 2.5.x default behavior as possible
The values closely match ./gmond/metric.h definitions in 2.5.x */
globals {
- daemonize = yes
+ daemonize = <% if @daemonize %><%= @daemonize %><% else %>yes<% end %>
setuid = yes
user = ganglia
debug_level = 0
--
To view, visit https://gerrit.wikimedia.org/r/231251
To unsubscribe, visit https://gerrit.wikimedia.org/r/settings
Gerrit-MessageType: merged
Gerrit-Change-Id: I829eea6deff04e84548313c21f0f28827014c641
Gerrit-PatchSet: 1
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