Skip to content

Commit

Permalink
Merge pull request #460 from ionphractal/alertmanager-disable-clustering
Browse files Browse the repository at this point in the history
[alertmanager] Add config to disable clustering
  • Loading branch information
psycofdj authored Apr 19, 2023
2 parents 6951e99 + b5a86e1 commit a79d31a
Show file tree
Hide file tree
Showing 3 changed files with 31 additions and 21 deletions.
3 changes: 3 additions & 0 deletions jobs/alertmanager/spec
Original file line number Diff line number Diff line change
Expand Up @@ -42,6 +42,9 @@ properties:
description: "Time to wait between peers to send notifications"
alertmanager.mesh.port:
description: "Deprecated. Please use alertmanager.cluster.port"
alertmanager.cluster.enabled:
description: "Enable clustering of alertmanager for production use"
default: true
alertmanager.cluster.port:
description: "Cluster listen port"
default: 9094
Expand Down
46 changes: 25 additions & 21 deletions jobs/alertmanager/templates/bin/alertmanager_ctl
Original file line number Diff line number Diff line change
Expand Up @@ -48,39 +48,43 @@ case $1 in
<% if_p('alertmanager.log_format') do |log_format| %> \
--log.format="<%= log_format %>" \
<% end %> \
<% if p('alertmanager.cluster.enabled', true) == false %> \
--cluster.listen-address="" \
<% else %> \
--cluster.listen-address=<%= "#{p('alertmanager.cluster.listen_address', spec.ip)}:#{p('alertmanager.mesh.port', p('alertmanager.cluster.port'))}" %> \
<% if_p('alertmanager.cluster.advertise_address') do |address| %> \
<% if_p('alertmanager.cluster.advertise_address') do |address| %> \
--cluster.advertise-address="<%= "#{address}:#{p('alertmanager.mesh.port', p('alertmanager.cluster.port'))}" %>" \
<% end %> \
<% if_p('alertmanager.cluster.gossip_interval') do |gossip_interval| %> \
<% end %> \
<% if_p('alertmanager.cluster.gossip_interval') do |gossip_interval| %> \
--cluster.gossip-interval="<%= gossip_interval %>" \
<% end %> \
<% link('alertmanager').instances.each do |instance| %> \
<% end %> \
<% link('alertmanager').instances.each do |instance| %> \
--cluster.peer="<%= "#{instance.address}:#{link('alertmanager').p('alertmanager.mesh.port', p('alertmanager.cluster.port'))}" %>" \
<% end %> \
<% if_p('alertmanager.cluster.peer_timeout') do |peer_timeout| %> \
<% end %> \
<% if_p('alertmanager.cluster.peer_timeout') do |peer_timeout| %> \
--cluster.peer-timeout="<%= peer_timeout %>" \
<% end %> \
<% if_p('alertmanager.cluster.probe_interval') do |probe_interval| %> \
<% end %> \
<% if_p('alertmanager.cluster.probe_interval') do |probe_interval| %> \
--cluster.probe-interval="<%= probe_interval %>" \
<% end %> \
<% if_p('alertmanager.cluster.probe_timeout') do |probe_timeout| %> \
<% end %> \
<% if_p('alertmanager.cluster.probe_timeout') do |probe_timeout| %> \
--cluster.probe-timeout="<%= probe_timeout %>" \
<% end %> \
<% if_p('alertmanager.cluster.pushpull_interval') do |pushpull_interval| %> \
<% end %> \
<% if_p('alertmanager.cluster.pushpull_interval') do |pushpull_interval| %> \
--cluster.pushpull-interval="<%= pushpull_interval %>" \
<% end %> \
<% if_p('alertmanager.cluster.reconnect_interval') do |reconnect_interval| %> \
<% end %> \
<% if_p('alertmanager.cluster.reconnect_interval') do |reconnect_interval| %> \
--cluster.reconnect-interval="<%= reconnect_interval %>" \
<% end %> \
<% if_p('alertmanager.cluster.reconnect_timeout') do |reconnect_timeout| %> \
<% end %> \
<% if_p('alertmanager.cluster.reconnect_timeout') do |reconnect_timeout| %> \
--cluster.reconnect-timeout="<%= reconnect_timeout %>" \
<% end %> \
<% if_p('alertmanager.cluster.settle_timeout') do |settle_timeout| %> \
<% end %> \
<% if_p('alertmanager.cluster.settle_timeout') do |settle_timeout| %> \
--cluster.settle-timeout="<%= settle_timeout %>" \
<% end %> \
<% if_p('alertmanager.cluster.tcp_timeout') do |tcp_timeout| %> \
<% end %> \
<% if_p('alertmanager.cluster.tcp_timeout') do |tcp_timeout| %> \
--cluster.tcp-timeout="<%= tcp_timeout %>" \
<% end %> \
<% end %> \
--storage.path="${STORE_DIR}" \
<% if_p('alertmanager.web.external_url') do |external_url| %> \
Expand Down
3 changes: 3 additions & 0 deletions manifests/operators/alertmanager-disable-clustering.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
- type: replace
path: /instance_groups/name=alertmanager/jobs/name=alertmanager/properties/alertmanager/cluster?/enabled
value: false

0 comments on commit a79d31a

Please sign in to comment.