How beauteous mankind is! O brave new world
This commit is contained in:
parent
1a79d90fbc
commit
68e2a472b3
|
@ -443,10 +443,7 @@ iddev.fedorainfracloud.org
|
|||
[dhcp]
|
||||
dhcp01.phx2.fedoraproject.org
|
||||
|
||||
#[nagios]
|
||||
#noc02.fedoraproject.org
|
||||
|
||||
[nagios-new]
|
||||
[nagios]
|
||||
noc01.phx2.fedoraproject.org
|
||||
noc02.fedoraproject.org
|
||||
|
||||
|
|
|
@ -1,74 +0,0 @@
|
|||
# This is a basic playbook
|
||||
- include: "/srv/web/infra/ansible/playbooks/include/virt-create.yml myhosts=nagios-new"
|
||||
|
||||
- name: make the box be real
|
||||
hosts: nagios-new
|
||||
user: root
|
||||
gather_facts: True
|
||||
|
||||
vars_files:
|
||||
- /srv/web/infra/ansible/vars/global.yml
|
||||
- "/srv/private/ansible/vars.yml"
|
||||
- /srv/web/infra/ansible/vars/{{ ansible_distribution }}.yml
|
||||
|
||||
pre_tasks:
|
||||
- include: "{{ tasks_path }}/yumrepos.yml"
|
||||
|
||||
roles:
|
||||
- base
|
||||
- rkhunter
|
||||
- nagios_client
|
||||
- hosts
|
||||
- fas_client
|
||||
- collectd/base
|
||||
- { role: rsyncd, when: datacenter == 'phx2' }
|
||||
- sudo
|
||||
- { role: openvpn/client,
|
||||
when: env != "staging" }
|
||||
- mod_wsgi
|
||||
- role: keytab/service
|
||||
owner_user: apache
|
||||
owner_group: apache
|
||||
service: HTTP
|
||||
host: "nagios{{env_suffix}}.fedoraproject.org"
|
||||
when: datacenter == 'phx2'
|
||||
- role: keytab/service
|
||||
owner_user: apache
|
||||
owner_group: apache
|
||||
service: HTTP
|
||||
host: "nagios-external{{env_suffix}}.fedoraproject.org"
|
||||
when: datacenter != 'phx2'
|
||||
|
||||
|
||||
tasks:
|
||||
- include: "{{ tasks_path }}/2fa_client.yml"
|
||||
- include: "{{ tasks_path }}/motd.yml"
|
||||
|
||||
handlers:
|
||||
- include: "{{ handlers_path }}/restart_services.yml"
|
||||
|
||||
- name: deploy service-specific config (just for production)
|
||||
hosts: nagios-new
|
||||
user: root
|
||||
gather_facts: True
|
||||
|
||||
vars_files:
|
||||
- /srv/web/infra/ansible/vars/global.yml
|
||||
- "/srv/private/ansible/vars.yml"
|
||||
- /srv/web/infra/ansible/vars/{{ ansible_distribution }}.yml
|
||||
|
||||
handlers:
|
||||
- include: "{{ handlers_path }}/restart_services.yml"
|
||||
|
||||
roles:
|
||||
- { role: dhcp_server, when: datacenter == 'phx2' }
|
||||
- { role: tftp_server, when: datacenter == 'phx2' }
|
||||
- nagios_server
|
||||
- fedmsg/base
|
||||
|
||||
tasks:
|
||||
- name: install some packages which arent in playbooks
|
||||
yum: pkg={{ item }} state=present
|
||||
with_items:
|
||||
- nmap
|
||||
- tcpdump
|
|
@ -1,3 +1,4 @@
|
|||
# This is a basic playbook
|
||||
- include: "/srv/web/infra/ansible/playbooks/include/virt-create.yml myhosts=nagios"
|
||||
|
||||
- name: make the box be real
|
||||
|
@ -10,6 +11,9 @@
|
|||
- "/srv/private/ansible/vars.yml"
|
||||
- /srv/web/infra/ansible/vars/{{ ansible_distribution }}.yml
|
||||
|
||||
pre_tasks:
|
||||
- include: "{{ tasks_path }}/yumrepos.yml"
|
||||
|
||||
roles:
|
||||
- base
|
||||
- rkhunter
|
||||
|
@ -26,11 +30,17 @@
|
|||
owner_user: apache
|
||||
owner_group: apache
|
||||
service: HTTP
|
||||
host: "admin.fedoraproject.org"
|
||||
when: env == "production"
|
||||
host: "nagios{{env_suffix}}.fedoraproject.org"
|
||||
when: datacenter == 'phx2'
|
||||
- role: keytab/service
|
||||
owner_user: apache
|
||||
owner_group: apache
|
||||
service: HTTP
|
||||
host: "nagios-external{{env_suffix}}.fedoraproject.org"
|
||||
when: datacenter != 'phx2'
|
||||
|
||||
|
||||
tasks:
|
||||
- include: "{{ tasks_path }}/yumrepos.yml"
|
||||
- include: "{{ tasks_path }}/2fa_client.yml"
|
||||
- include: "{{ tasks_path }}/motd.yml"
|
||||
|
||||
|
@ -46,7 +56,6 @@
|
|||
- /srv/web/infra/ansible/vars/global.yml
|
||||
- "/srv/private/ansible/vars.yml"
|
||||
- /srv/web/infra/ansible/vars/{{ ansible_distribution }}.yml
|
||||
- "/srv/web/infra/ansible/vars/nagios.{{ inventory_hostname_short }}.yml"
|
||||
|
||||
handlers:
|
||||
- include: "{{ handlers_path }}/restart_services.yml"
|
||||
|
@ -54,5 +63,12 @@
|
|||
roles:
|
||||
- { role: dhcp_server, when: datacenter == 'phx2' }
|
||||
- { role: tftp_server, when: datacenter == 'phx2' }
|
||||
- nagios/server
|
||||
- nagios_server
|
||||
- fedmsg/base
|
||||
|
||||
tasks:
|
||||
- name: install some packages which arent in playbooks
|
||||
yum: pkg={{ item }} state=present
|
||||
with_items:
|
||||
- nmap
|
||||
- tcpdump
|
||||
|
|
|
@ -166,10 +166,6 @@ syncHttpLogs {{host}} old
|
|||
syncHttpLogs {{host}}
|
||||
{% endfor %}
|
||||
|
||||
{% for host in groups['nagios-new'] %}
|
||||
syncHttpLogs {{host}}
|
||||
{% endfor %}
|
||||
|
||||
## sync up download
|
||||
{% for host in groups['download-phx2'] %}
|
||||
syncHttpLogs {{host}}
|
||||
|
|
|
@ -1,72 +0,0 @@
|
|||
#!/usr/bin/env python
|
||||
""" NRPE check for datanommer/fedmsg health.
|
||||
Given a category like 'bodhi', 'buildsys', or 'git', return an error if
|
||||
datanommer hasn't seen a message of that type in such and such time.
|
||||
You can alternatively provide a 'topic' which might look like
|
||||
org.fedoraproject.prod.bodhi.update.comment.
|
||||
|
||||
Requires: python-dateutil
|
||||
|
||||
Usage:
|
||||
|
||||
$ check_datanommer_timesince CATEGORY WARNING_THRESH CRITICAL_THRESH
|
||||
|
||||
:Author: Ralph Bean <rbean@redhat.com>
|
||||
|
||||
"""
|
||||
|
||||
import dateutil.relativedelta
|
||||
import subprocess
|
||||
import sys
|
||||
import json
|
||||
|
||||
|
||||
def query_timesince(identifier):
|
||||
# If it has a '.', then assume it is a topic.
|
||||
if '.' in identifier:
|
||||
cmd = 'datanommer-latest --topic %s --timesince' % identifier
|
||||
else:
|
||||
cmd = 'datanommer-latest --category %s --timesince' % identifier
|
||||
sys.stderr.write("Running %r\n" % cmd)
|
||||
process = subprocess.Popen(cmd.split(), shell=False,
|
||||
stdout=subprocess.PIPE, stderr=subprocess.PIPE)
|
||||
stdout, stderr = process.communicate()
|
||||
prefix, stdout = stdout.split("INFO] ", 1)
|
||||
data = json.loads(stdout)
|
||||
return float(data[0])
|
||||
|
||||
|
||||
def main():
|
||||
identifier, warning_threshold, critical_threshold = sys.argv[-3:]
|
||||
timesince = query_timesince(identifier)
|
||||
warning_threshold = int(warning_threshold)
|
||||
critical_threshold = int(critical_threshold)
|
||||
|
||||
time_strings = []
|
||||
rd = dateutil.relativedelta.relativedelta(seconds=timesince)
|
||||
for denomination in ['years', 'months', 'days', 'hours', 'minutes', 'seconds']:
|
||||
value = getattr(rd, denomination, 0)
|
||||
if value:
|
||||
time_strings.append("%d %s" % (value, denomination))
|
||||
|
||||
string = ", ".join(time_strings)
|
||||
reason = "datanommer has not seen a %r message in %s" % (identifier, string)
|
||||
|
||||
if timesince > critical_threshold:
|
||||
print "CRIT: ", reason
|
||||
sys.exit(2)
|
||||
|
||||
if timesince > warning_threshold:
|
||||
print "WARN: ", reason
|
||||
sys.exit(1)
|
||||
|
||||
print "OK: ", reason
|
||||
sys.exit(0)
|
||||
|
||||
|
||||
if __name__ == '__main__':
|
||||
try:
|
||||
main()
|
||||
except Exception as e:
|
||||
print "UNKNOWN: ", str(e)
|
||||
sys.exit(3)
|
|
@ -1,23 +0,0 @@
|
|||
#!/usr/bin/env python
|
||||
import sys
|
||||
|
||||
try:
|
||||
import retask.queue
|
||||
|
||||
queue = retask.queue.Queue('fedora-packages')
|
||||
queue.connect()
|
||||
|
||||
items = queue.length
|
||||
if items > 500:
|
||||
print "CRITICAL: %i tasks in fcomm queue" % items
|
||||
sys.exit(2)
|
||||
elif items > 250:
|
||||
print "WARNING: %i tasks in fcomm queue" % items
|
||||
sys.exit(1)
|
||||
else:
|
||||
print "OK: %i tasks in fcomm queue" % items
|
||||
sys.exit(0)
|
||||
|
||||
except Exception as e:
|
||||
print "UNKNOWN:", str(e)
|
||||
sys.exit(3)
|
|
@ -1,62 +0,0 @@
|
|||
#!/usr/bin/env python
|
||||
|
||||
import json
|
||||
import os
|
||||
import socket
|
||||
import sys
|
||||
import zmq
|
||||
|
||||
try:
|
||||
service = sys.argv[1]
|
||||
check_consumer = sys.argv[2]
|
||||
backlog_warning = int(sys.argv[3])
|
||||
backlog_critical = int(sys.argv[4])
|
||||
fname = '/var/run/fedmsg/monitoring-%s.socket' % service
|
||||
|
||||
if not os.path.exists(fname):
|
||||
print "UNKNOWN - %s does not exist" % fname
|
||||
sys.exit(3)
|
||||
|
||||
if not os.access(fname, os.W_OK):
|
||||
print "UNKNOWN - cannot write to %s" % fname
|
||||
sys.exit(3)
|
||||
|
||||
connect_to = "ipc:///%s" % fname
|
||||
ctx = zmq.Context()
|
||||
s = ctx.socket(zmq.SUB)
|
||||
s.connect(connect_to)
|
||||
s.setsockopt(zmq.SUBSCRIBE, '')
|
||||
|
||||
poller = zmq.Poller()
|
||||
poller.register(s, zmq.POLLIN)
|
||||
|
||||
timeout = 20000
|
||||
|
||||
events = dict(poller.poll(timeout))
|
||||
if s in events and events[s] == zmq.POLLIN:
|
||||
msg = s.recv()
|
||||
msg = json.loads(msg)
|
||||
else:
|
||||
print 'UNKNOWN - ZMQ timeout. No message received in %i ms' % timeout
|
||||
sys.exit(3)
|
||||
|
||||
for consumer in msg['consumers']:
|
||||
if consumer['name'] == check_consumer:
|
||||
if consumer['backlog'] is None:
|
||||
print 'ERROR: fedmsg consumer %s is not initialized' % consumer['name']
|
||||
sys.exit(3)
|
||||
elif consumer['backlog'] > backlog_critical:
|
||||
print 'CRITICAL: fedmsg consumer %s backlog value is %i' % (consumer['name'],consumer['backlog'])
|
||||
sys.exit(2)
|
||||
elif consumer['backlog'] > backlog_warning:
|
||||
print 'WARNING: fedmsg consumer %s backlog value is %i' % (consumer['name'],consumer['backlog'])
|
||||
sys.exit(1)
|
||||
else:
|
||||
print 'OK: fedmsg consumer %s backlog value is %i' % (consumer['name'],consumer['backlog'])
|
||||
sys.exit(0)
|
||||
|
||||
print "UNKNOWN: fedmsg consumer %s not found" % check_consumer
|
||||
sys.exit(3)
|
||||
except Exception as err:
|
||||
print "UNKNOWN:", str(err)
|
||||
sys.exit(3)
|
|
@ -1,58 +0,0 @@
|
|||
#!/usr/bin/env python
|
||||
|
||||
import json
|
||||
import os
|
||||
import socket
|
||||
import sys
|
||||
import zmq
|
||||
|
||||
try:
|
||||
service = sys.argv[1]
|
||||
check_consumer = sys.argv[2]
|
||||
exceptions_warning = int(sys.argv[3])
|
||||
exceptions_critical = int(sys.argv[4])
|
||||
fname = '/var/run/fedmsg/monitoring-%s.socket' % service
|
||||
|
||||
if not os.path.exists(fname):
|
||||
print "UNKNOWN - %s does not exist" % fname
|
||||
sys.exit(3)
|
||||
|
||||
if not os.access(fname, os.W_OK):
|
||||
print "UNKNOWN - cannot write to %s" % fname
|
||||
sys.exit(3)
|
||||
|
||||
connect_to = "ipc:///%s" % fname
|
||||
ctx = zmq.Context()
|
||||
s = ctx.socket(zmq.SUB)
|
||||
s.connect(connect_to)
|
||||
s.setsockopt(zmq.SUBSCRIBE, '')
|
||||
poller = zmq.Poller()
|
||||
poller.register(s, zmq.POLLIN)
|
||||
|
||||
timeout = 20000
|
||||
|
||||
events = dict(poller.poll(timeout))
|
||||
if s in events and events[s] == zmq.POLLIN:
|
||||
msg = s.recv()
|
||||
msg = json.loads(msg)
|
||||
else:
|
||||
print 'UNKNOWN - ZMQ timeout. No message received in %i ms' % timeout
|
||||
sys.exit(3)
|
||||
|
||||
for consumer in msg['consumers']:
|
||||
if consumer['name'] == check_consumer:
|
||||
if consumer['exceptions'] > exceptions_critical:
|
||||
print 'CRITICAL: fedmsg consumer %s exceptions value is %i' % (consumer['name'],consumer['exceptions'])
|
||||
sys.exit(2)
|
||||
elif consumer['exceptions'] > exceptions_warning:
|
||||
print 'WARNING: fedmsg consumer %s exceptions value is %i' % (consumer['name'],consumer['exceptions'])
|
||||
sys.exit(1)
|
||||
else:
|
||||
print 'OK: fedmsg consumer %s exceptions value is %i' % (consumer['name'],consumer['exceptions'])
|
||||
sys.exit(0)
|
||||
|
||||
print "UNKNOWN: fedmsg consumers %s not found" % check_consumer
|
||||
sys.exit(3)
|
||||
except Exception as err:
|
||||
print "UNKNOWN:", str(err)
|
||||
sys.exit(3)
|
|
@ -1,69 +0,0 @@
|
|||
#!/usr/bin/env python
|
||||
|
||||
import arrow
|
||||
import json
|
||||
import os
|
||||
import socket
|
||||
import sys
|
||||
import time
|
||||
import zmq
|
||||
|
||||
try:
|
||||
service = sys.argv[1]
|
||||
check_producer = sys.argv[2]
|
||||
elapsed_warning = int(sys.argv[3])
|
||||
elapsed_critical = int(sys.argv[4])
|
||||
fname = '/var/run/fedmsg/monitoring-%s.socket' % service
|
||||
|
||||
if not os.path.exists(fname):
|
||||
print "UNKNOWN - %s does not exist" % fname
|
||||
sys.exit(3)
|
||||
|
||||
if not os.access(fname, os.W_OK):
|
||||
print "UNKNOWN - cannot write to %s" % fname
|
||||
sys.exit(3)
|
||||
|
||||
connect_to = "ipc:///%s" % fname
|
||||
ctx = zmq.Context()
|
||||
s = ctx.socket(zmq.SUB)
|
||||
s.connect(connect_to)
|
||||
s.setsockopt(zmq.SUBSCRIBE, '')
|
||||
|
||||
poller = zmq.Poller()
|
||||
poller.register(s, zmq.POLLIN)
|
||||
|
||||
timeout = 20000
|
||||
|
||||
events = dict(poller.poll(timeout))
|
||||
if s in events and events[s] == zmq.POLLIN:
|
||||
msg = s.recv()
|
||||
msg = json.loads(msg)
|
||||
else:
|
||||
print 'UNKNOWN - ZMQ timeout. No message received in %i ms' % timeout
|
||||
sys.exit(3)
|
||||
|
||||
now = time.time()
|
||||
|
||||
for prod in msg['producers']:
|
||||
if prod['name'] != check_producer:
|
||||
continue
|
||||
diff = now - prod['last_ran']
|
||||
then = arrow.get(prod['last_ran']).humanize()
|
||||
if diff > elapsed_critical:
|
||||
print "CRITICAL: %s last ran %s (%i seconds ago)" % (
|
||||
check_producer, then, diff)
|
||||
sys.exit(2)
|
||||
elif diff > elapsed_warning:
|
||||
print "WARNING: %s last ran %s (%i seconds ago)" % (
|
||||
check_producer, then, diff)
|
||||
sys.exit(1)
|
||||
else:
|
||||
print "OK: %s last ran %s (%i seconds ago)" % (
|
||||
check_producer, then, diff)
|
||||
sys.exit(0)
|
||||
|
||||
print "UNKNOWN: fedmsg producer %s not found" % check_producer
|
||||
sys.exit(3)
|
||||
except Exception as err:
|
||||
print "UNKNOWN:", str(err)
|
||||
sys.exit(3)
|
|
@ -1,64 +0,0 @@
|
|||
#!/usr/bin/env python
|
||||
|
||||
import json
|
||||
import os
|
||||
import socket
|
||||
import sys
|
||||
import zmq
|
||||
|
||||
try:
|
||||
service = sys.argv[1]
|
||||
check_list = frozenset(sys.argv[2:])
|
||||
fname = '/var/run/fedmsg/monitoring-%s.socket' % service
|
||||
|
||||
if not check_list:
|
||||
print "UNKNOWN - empty list of fedmsg consumers and producers to check"
|
||||
sys.exit(3)
|
||||
|
||||
if not os.path.exists(fname):
|
||||
print "UNKNOWN - %s does not exist" % fname
|
||||
sys.exit(3)
|
||||
|
||||
if not os.access(fname, os.W_OK):
|
||||
print "UNKNOWN - cannot write to %s" % fname
|
||||
sys.exit(3)
|
||||
|
||||
connect_to = "ipc:///%s" % fname
|
||||
ctx = zmq.Context()
|
||||
s = ctx.socket(zmq.SUB)
|
||||
s.connect(connect_to)
|
||||
s.setsockopt(zmq.SUBSCRIBE, '')
|
||||
poller = zmq.Poller()
|
||||
poller.register(s, zmq.POLLIN)
|
||||
|
||||
timeout = 20000
|
||||
|
||||
events = dict(poller.poll(timeout))
|
||||
if s in events and events[s] == zmq.POLLIN:
|
||||
msg = s.recv()
|
||||
msg = json.loads(msg)
|
||||
else:
|
||||
print 'UNKNOWN - ZMQ timeout. No message received in %i ms' % timeout
|
||||
sys.exit(3)
|
||||
|
||||
for consumer in msg['consumers']:
|
||||
if consumer['name'] in check_list and not consumer['initialized']:
|
||||
print 'ERROR: fedmsg consumer %s is not initialized' % consumer['name']
|
||||
sys.exit(2)
|
||||
|
||||
for producer in msg['producers']:
|
||||
if producer['name'] in check_list and not producer['initialized']:
|
||||
print 'ERROR: fedmsg producer %s is not initialized' % producer['name']
|
||||
sys.exit(2)
|
||||
|
||||
for item in check_list:
|
||||
if item not in [p['name'] for p in msg['producers'] + msg['consumers']]:
|
||||
print 'ERROR: %s not found among installed plugins' % item
|
||||
sys.exit(2)
|
||||
|
||||
print "OK: fedmsg consumer(s) and producer(s) initialized"
|
||||
sys.exit(0)
|
||||
|
||||
except Exception as err:
|
||||
print "UNKNOWN:", str(err)
|
||||
sys.exit(3)
|
|
@ -1,76 +0,0 @@
|
|||
#!/usr/bin/env python
|
||||
""" Nagios check for haproxy over-subscription.
|
||||
|
||||
fedmsg-gateway is the primary concern as it can eat up a ton of simultaneous
|
||||
connections.
|
||||
|
||||
:Author: Ralph Bean <rbean@redhat.com>
|
||||
"""
|
||||
|
||||
import socket
|
||||
import sys
|
||||
|
||||
|
||||
def _numeric(value):
|
||||
""" Type casting utility """
|
||||
try:
|
||||
return int(value)
|
||||
except ValueError:
|
||||
try:
|
||||
return float(value)
|
||||
except ValueError:
|
||||
return value
|
||||
|
||||
|
||||
def query(sockname="/var/run/haproxy-stat"):
|
||||
""" Read stats from the haproxy socket and return a dict """
|
||||
s = socket.socket(socket.AF_UNIX, socket.SOCK_STREAM)
|
||||
s.connect("/var/run/haproxy-stat")
|
||||
s.send('show info\n')
|
||||
try:
|
||||
response = s.recv(1024).strip()
|
||||
lines = response.split('\n')
|
||||
data = dict([map(str.strip, line.split(':')) for line in lines])
|
||||
data = dict([(k, _numeric(v)) for k, v in data.items()])
|
||||
return data
|
||||
except Exception, e:
|
||||
print str(e)
|
||||
finally:
|
||||
s.close()
|
||||
|
||||
return None
|
||||
|
||||
|
||||
def nagios_check(data):
|
||||
""" Print warnings and return nagios exit codes. """
|
||||
|
||||
current = data['CurrConns']
|
||||
maxconn = data['Maxconn']
|
||||
percent = 100 * float(current) / float(maxconn)
|
||||
details = "%.2f%% subscribed. %i current of %i maxconn." % (
|
||||
percent, current, maxconn,
|
||||
)
|
||||
|
||||
if percent < 50:
|
||||
print "HAPROXY SUBS OK: " + details
|
||||
return 0
|
||||
|
||||
if percent < 75:
|
||||
print "HAPROXY SUBS WARN: " + details
|
||||
return 1
|
||||
|
||||
if percent <= 100:
|
||||
print "HAPROXY SUBS CRIT: " + details
|
||||
return 2
|
||||
|
||||
print "HAPROXY SUBS UNKNOWN: " + details
|
||||
return 3
|
||||
|
||||
|
||||
if __name__ == '__main__':
|
||||
try:
|
||||
data = query(sockname="/var/run/haproxy-stat")
|
||||
except Exception as e:
|
||||
print "HAPROXY SUBS UNKNOWN: " + str(e)
|
||||
sys.exit(3)
|
||||
sys.exit(nagios_check(data))
|
|
@ -1,74 +0,0 @@
|
|||
#!/usr/bin/python
|
||||
# Source: https://github.com/opinkerfi/nagios-plugins/blob/master/check_ipa/check_ipa_replication
|
||||
# Copyright 2013, Tomas Edwardsson
|
||||
# Copyright 2016, Patrick Uiterwijk
|
||||
#
|
||||
# This script is free software: you can redistribute it and/or modify
|
||||
# it under the terms of the GNU General Public License as published by
|
||||
# the Free Software Foundation, either version 3 of the License, or
|
||||
# (at your option) any later version.
|
||||
#
|
||||
# This script is distributed in the hope that it will be useful,
|
||||
# but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
# GNU General Public License for more details.
|
||||
#
|
||||
# You should have received a copy of the GNU General Public License
|
||||
# along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
|
||||
import ldap
|
||||
from pynag.Plugins import PluginHelper, critical, warning, ok
|
||||
|
||||
plugin = PluginHelper()
|
||||
|
||||
plugin.parser.add_option('-u', help="ldap uri", dest="uri")
|
||||
plugin.parser.add_option('-D', help="bind DN", dest="binddn")
|
||||
plugin.parser.add_option('-w', help="bind password", dest="bindpw")
|
||||
plugin.parse_arguments()
|
||||
|
||||
if not plugin.options.uri:
|
||||
plugin.parser.error('-u (uri) argument is required')
|
||||
|
||||
try:
|
||||
l = ldap.initialize(plugin.options.uri)
|
||||
|
||||
if plugin.options.binddn:
|
||||
l.bind_s(plugin.options.binddn, plugin.options.bindpw)
|
||||
|
||||
replication = l.search_s('cn=config',
|
||||
ldap.SCOPE_SUBTREE,
|
||||
'(objectclass=nsds5replicationagreement)',
|
||||
['nsDS5ReplicaHost', 'nsds5replicaLastUpdateStatus'])
|
||||
except Exception, e:
|
||||
plugin.status(critical)
|
||||
plugin.add_summary("Unable to initialize ldap connection: %s" % (e))
|
||||
plugin.exit()
|
||||
|
||||
|
||||
# Loop through replication agreements
|
||||
for rhost in replication:
|
||||
plugin.add_summary("Replica %s Status: %s" % (rhost[1]['nsDS5ReplicaHost'][0], rhost[1]['nsds5replicaLastUpdateStatus'][0]))
|
||||
|
||||
status = rhost[1]['nsds5replicaLastUpdateStatus'][0]
|
||||
code = status[:2]
|
||||
if status.startswith('Error ('):
|
||||
# IPA >=4.4.0
|
||||
code = status[status.find('(')+1:status.find(')')]
|
||||
else:
|
||||
# IPA <4.4.0
|
||||
code = status[:status.find(' ')]
|
||||
|
||||
if code == '0':
|
||||
plugin.status(ok)
|
||||
elif code == '1':
|
||||
# Busy Replica is not an error, its "unknown" (but its "ok" for now)
|
||||
plugin.status(ok)
|
||||
else:
|
||||
plugin.status(critical)
|
||||
|
||||
if not len(replication):
|
||||
plugin.add_summary("Warning: No replicas found")
|
||||
plugin.status(warning)
|
||||
|
||||
plugin.exit()
|
||||
|
|
@ -1,17 +0,0 @@
|
|||
#!/usr/bin/python
|
||||
|
||||
import fcntl
|
||||
import sys
|
||||
|
||||
try:
|
||||
f = open('/mnt/koji/.nagios_test', 'r')
|
||||
f.close()
|
||||
f = open('/mnt/koji/.nagios_test', 'w')
|
||||
except IOError:
|
||||
print "Could not create file"
|
||||
sys.exit(2)
|
||||
|
||||
fcntl.flock(f, fcntl.LOCK_EX)
|
||||
f.close()
|
||||
print "File Locked Successfully"
|
||||
sys.exit(0)
|
|
@ -1,123 +0,0 @@
|
|||
#! /usr/bin/perl -w
|
||||
|
||||
# check_lock_file_age.pl Copyright (C) 2010 Ricky Elrod <codeblock@fedoraproject.org>
|
||||
#
|
||||
# Fork of check_file_age.pl
|
||||
#
|
||||
# Checks a lock file's size and modification time to make sure it's not empty
|
||||
# and that it's sufficiently recent.
|
||||
#
|
||||
#
|
||||
# This program is free software; you can redistribute it and/or
|
||||
# modify it under the terms of the GNU General Public License
|
||||
# as published by the Free Software Foundation; either version 2
|
||||
# of the License, or (at your option) any later version.
|
||||
#
|
||||
# This program is distributed in the hope that it will be useful,
|
||||
# but WITHOUT ANY WARRANTY; without even the implied warranty
|
||||
# of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
# GNU General Public License for more details.
|
||||
#
|
||||
# you should have received a copy of the GNU General Public License
|
||||
# along with this program (or with Nagios); if not, write to the
|
||||
# Free Software Foundation, Inc., 59 Temple Place - Suite 330,
|
||||
# Boston, MA 02111-1307, USA
|
||||
|
||||
use strict;
|
||||
use English;
|
||||
use Getopt::Long;
|
||||
use File::stat;
|
||||
use vars qw($PROGNAME);
|
||||
use lib "/usr/lib64/nagios/plugins";
|
||||
use utils qw (%ERRORS &print_revision &support);
|
||||
|
||||
sub print_help ();
|
||||
sub print_usage ();
|
||||
|
||||
my ($opt_c, $opt_f, $opt_w, $opt_h, $opt_V);
|
||||
my ($result, $message, $age, $size, $st);
|
||||
|
||||
$PROGNAME="check_lock_file_age";
|
||||
|
||||
$opt_w = 1;
|
||||
$opt_c = 5;
|
||||
$opt_f = "";
|
||||
|
||||
Getopt::Long::Configure('bundling');
|
||||
GetOptions(
|
||||
"V" => \$opt_V, "version" => \$opt_V,
|
||||
"h" => \$opt_h, "help" => \$opt_h,
|
||||
"f=s" => \$opt_f, "file" => \$opt_f,
|
||||
"w=f" => \$opt_w, "warning-age=f" => \$opt_w,
|
||||
"c=f" => \$opt_c, "critical-age=f" => \$opt_c);
|
||||
|
||||
if ($opt_V) {
|
||||
print_revision($PROGNAME, '1.4.14');
|
||||
exit $ERRORS{'OK'};
|
||||
}
|
||||
|
||||
if ($opt_h) {
|
||||
print_help();
|
||||
exit $ERRORS{'OK'};
|
||||
}
|
||||
|
||||
if (($opt_c and $opt_w) and ($opt_c < $opt_w)) {
|
||||
print "Warning time must be less than Critical time.\n";
|
||||
exit $ERRORS{'UNKNOWN'};
|
||||
}
|
||||
|
||||
$opt_f = shift unless ($opt_f);
|
||||
|
||||
if (! $opt_f) {
|
||||
print "LOCK_FILE_AGE UNKNOWN: No file specified\n";
|
||||
exit $ERRORS{'UNKNOWN'};
|
||||
}
|
||||
|
||||
# Check that file exists (can be directory or link)
|
||||
unless (-e $opt_f) {
|
||||
print "LOCK_FILE_AGE OK: File not found (Lock file removed) - $opt_f\n";
|
||||
exit $ERRORS{'OK'};
|
||||
}
|
||||
|
||||
$st = File::stat::stat($opt_f);
|
||||
$age = time - $st->mtime;
|
||||
|
||||
$result = 'OK';
|
||||
|
||||
# Convert minutes to seconds
|
||||
if($opt_c) { $opt_c *= 60; }
|
||||
if($opt_w) { $opt_w *= 60; }
|
||||
|
||||
if ($opt_c and $age > $opt_c) {
|
||||
$result = 'CRITICAL';
|
||||
}
|
||||
elsif ($opt_w and $age > $opt_w) {
|
||||
$result = 'WARNING';
|
||||
}
|
||||
|
||||
# If the age is higher than 2 minutes, convert seconds -> minutes
|
||||
# If it's higher than a day, use days.
|
||||
# Just a nicety, to make people not have to do math ;)
|
||||
if($age > 86400) { $age = int(($age/86400))." days"; }
|
||||
elsif($age > 120) { $age = int(($age/60))." minutes"; }
|
||||
else { $age = "$age seconds"; }
|
||||
|
||||
print "LOCK_FILE_AGE $result: $opt_f is $age old.\n";
|
||||
exit $ERRORS{$result};
|
||||
|
||||
sub print_usage () {
|
||||
print "Usage:\n";
|
||||
print " $PROGNAME [-w <secs>] [-c <secs>] -f <file>\n";
|
||||
print " $PROGNAME [-h | --help]\n";
|
||||
print " $PROGNAME [-V | --version]\n";
|
||||
}
|
||||
|
||||
sub print_help () {
|
||||
print_revision($PROGNAME, '1.4.14');
|
||||
print "Copyright (c) 2010 Ricky Elrod\n\n";
|
||||
print_usage();
|
||||
print "\n";
|
||||
print " <mins> File must be no more than this many minutes old (default: warn 1m, crit 5m)\n";
|
||||
print "\n";
|
||||
support();
|
||||
}
|
|
@ -1,24 +0,0 @@
|
|||
#!/bin/bash
|
||||
#
|
||||
# 2014-11-19
|
||||
# Author: Ralph Bean <rbean@redhat.com>
|
||||
|
||||
# exit codes
|
||||
ok=0
|
||||
warn=1
|
||||
crit=2
|
||||
unkn=3
|
||||
|
||||
# Right now we just check to see if we can even run this command without
|
||||
# hanging and timing out. In the future, we could parse stdout for more
|
||||
# fine-grained information.
|
||||
echo stats | nc 127.0.0.1 11211 > /dev/null
|
||||
status=$?
|
||||
|
||||
if [ $status -ne 0 ]; then
|
||||
echo "CRIT: stats command got status code $status"
|
||||
exit $crit
|
||||
else
|
||||
echo "OK: stats command got status code $status"
|
||||
exit $ok
|
||||
fi
|
|
@ -1,14 +0,0 @@
|
|||
#!/usr/bin/python
|
||||
|
||||
import requests
|
||||
import sys
|
||||
|
||||
r = requests.get("https://localhost:8443/", verify=False)
|
||||
|
||||
if 'paths' in r.json().keys():
|
||||
print "OK: OSBS API endpoint is responding with path data"
|
||||
sys.exit(0)
|
||||
else:
|
||||
print "CRITICAL: OSBS API not responding properly"
|
||||
sys.exit(2)
|
||||
|
|
@ -1,23 +0,0 @@
|
|||
#!/usr/bin/python
|
||||
|
||||
import subprocess
|
||||
import sys
|
||||
|
||||
sp = subprocess.Popen(
|
||||
["osbs", "list-builds"],
|
||||
stdout=subprocess.PIPE,
|
||||
stderr=subprocess.PIPE,
|
||||
stdin=subprocess.PIPE
|
||||
)
|
||||
sp_out, sp_err = sp.communicate()
|
||||
sp_err = sp_err.split('\n')
|
||||
|
||||
if 'not attached to terminal' in sp_err[0]:
|
||||
sp_err = sp_err[1:]
|
||||
|
||||
if sp_err[0].split()[0] == 'BUILD':
|
||||
print "OK: OSBS is responsive to 'osbs list-builds'"
|
||||
sys.exit(0)
|
||||
else:
|
||||
print "CRITICAL: OSBS UNRESPONSIVE"
|
||||
sys.exit(2)
|
|
@ -1,49 +0,0 @@
|
|||
#!/bin/bash
|
||||
#
|
||||
# 19-07-2010
|
||||
# Author: Cherwin Nooitmeer <cherwin@gmail.com>
|
||||
#
|
||||
|
||||
# exit codes
|
||||
e_ok=0
|
||||
e_warning=1
|
||||
e_critical=2
|
||||
e_unknown=3
|
||||
|
||||
# regular expression that matches queue IDs (e.g. D71EF7AC80F8)
|
||||
queue_id='^[A-F0-9][A-F0-9][A-F0-9][A-F0-9][A-F0-9][A-F0-9][A-F0-9][A-F0-9][A-F0-9][A-F0-9]'
|
||||
|
||||
usage="Invalid command line usage"
|
||||
|
||||
if [ -z $1 ]; then
|
||||
echo $usage
|
||||
exit $e_unknown
|
||||
fi
|
||||
|
||||
while getopts ":w:c:" options
|
||||
do
|
||||
case $options in
|
||||
w ) warning=$OPTARG ;;
|
||||
c ) critical=$OPTARG ;;
|
||||
* ) echo $usage
|
||||
exit $e_unknown ;;
|
||||
esac
|
||||
done
|
||||
|
||||
# determine queue size
|
||||
qsize=$(mailq | egrep -c $queue_id)
|
||||
if [ -z $qsize ]
|
||||
then
|
||||
exit $e_unknown
|
||||
fi
|
||||
|
||||
if [ $qsize -ge $critical ]; then
|
||||
retval=$e_critical
|
||||
elif [ $qsize -ge $warning ]; then
|
||||
retval=$e_warning
|
||||
elif [ $qsize -lt $warning ]; then
|
||||
retval=$e_ok
|
||||
fi
|
||||
|
||||
echo "$qsize mail(s) in queue | mail_queue=$qsize"
|
||||
exit $retval
|
|
@ -1,26 +0,0 @@
|
|||
#!/bin/python
|
||||
import sys
|
||||
import requests
|
||||
|
||||
url = 'http://localhost:15672/api/queues/%%2f/%s' % (sys.argv[1])
|
||||
|
||||
r = requests.get(url, auth=('guest', 'guest')).json()
|
||||
consumers = r['consumers']
|
||||
messages = r['messages']
|
||||
|
||||
msg = 'Messages in queue: %i (%i consumers)' % (messages, consumers)
|
||||
|
||||
if consumers < 1:
|
||||
print 'CRITICAL: No consumers: %s' % msg
|
||||
sys.exit(2)
|
||||
|
||||
if messages > sys.argv[2]:
|
||||
print 'CRITICAL: %s' % msg
|
||||
sys.exit(2)
|
||||
|
||||
if messages > sys.argv[3]:
|
||||
print 'WARNING: %s' % msg
|
||||
sys.exit(1)
|
||||
|
||||
print 'OK: %s' % msg
|
||||
sys.exit(0)
|
|
@ -1,45 +0,0 @@
|
|||
#!/usr/bin/env python
|
||||
#
|
||||
# very simple python script to parse out /proc/mdstat
|
||||
# and give results for nagios to monitor
|
||||
#
|
||||
|
||||
import sys
|
||||
import string
|
||||
|
||||
devices = []
|
||||
|
||||
try:
|
||||
mdstat = string.split(open('/proc/mdstat').read(), '\n')
|
||||
except IOError:
|
||||
# seems we have no software raid on this machines
|
||||
sys.exit(0)
|
||||
|
||||
error = ""
|
||||
i = 0
|
||||
for line in mdstat:
|
||||
if line[0:2] == 'md':
|
||||
device = string.split(line)[0]
|
||||
devices.append(device)
|
||||
status = string.split(mdstat[i+1])[3]
|
||||
if string.count(status, "_"):
|
||||
# see if we can figure out what's going on
|
||||
err = string.split(mdstat[i+2])
|
||||
msg = "device=%s status=%s" % (device, status)
|
||||
if len(err) > 0:
|
||||
msg = msg + " rebuild=%s" % err[0]
|
||||
|
||||
if not error:
|
||||
error = msg
|
||||
else:
|
||||
error = error + ", " + msg
|
||||
i = i + 1
|
||||
|
||||
if not error:
|
||||
print "DEVICES %s OK" % " ".join(devices)
|
||||
sys.exit(0)
|
||||
|
||||
else:
|
||||
print error
|
||||
sys.exit(2)
|
||||
|
|
@ -1,84 +0,0 @@
|
|||
#!/bin/bash
|
||||
|
||||
# check_readonlyfs: Check for readonly filesystems
|
||||
# Copyright (C) 2010 Davide Madrisan <davide.madrisan@gmail.com>
|
||||
|
||||
PROGNAME=`/bin/basename $0`
|
||||
PROGPATH=`echo $0 | sed -e 's,[\\/][^\\/][^\\/]*$,,'`
|
||||
REVISION=`echo '$Revision: 1 $' | sed -e 's/[^0-9.]//g'`
|
||||
|
||||
. $PROGPATH/utils.sh
|
||||
|
||||
print_usage() {
|
||||
echo "Usage: $PROGNAME --no-network-fs"
|
||||
echo "Usage: $PROGNAME --help"
|
||||
echo "Usage: $PROGNAME --version"
|
||||
}
|
||||
|
||||
print_help() {
|
||||
print_revision $PROGNAME $REVISION
|
||||
echo ""
|
||||
print_usage
|
||||
echo ""
|
||||
echo "readonly filesystem checker plugin for Nagios"
|
||||
echo ""
|
||||
support
|
||||
}
|
||||
|
||||
NETFS=1
|
||||
|
||||
# Grab the command line arguments
|
||||
|
||||
exitstatus=$STATE_WARNING #default
|
||||
|
||||
while test -n "$1"; do
|
||||
case "$1" in
|
||||
--help|-h)
|
||||
print_help
|
||||
exit $STATE_OK
|
||||
;;
|
||||
--version|-V)
|
||||
print_revision $PROGNAME $REVISION
|
||||
exit $STATE_OK
|
||||
;;
|
||||
--no-network-fs|-n)
|
||||
NETFS="0"
|
||||
;;
|
||||
*)
|
||||
echo "Unknown argument: $1"
|
||||
print_usage
|
||||
exit $STATE_UNKNOWN
|
||||
;;
|
||||
esac
|
||||
shift
|
||||
done
|
||||
|
||||
[ -r /proc/mounts ] || { echo "cannot read /proc/mounts!"; exit $STATE_UNKNOWN; }
|
||||
|
||||
nerr=0
|
||||
IFS_SAVE="$IFS"
|
||||
|
||||
rofs_list=""
|
||||
while read dev mp fs mopt ignore; do
|
||||
[ "$dev" = none ] && continue
|
||||
case $fs in binfmt_misc|devpts|iso9660|proc|selinuxfs|rpc_pipefs|sysfs|tmpfs|usbfs)
|
||||
continue ;;
|
||||
esac
|
||||
case $fs in autofs|nfs|nfs4|smbfs)
|
||||
# skip the network filesystems
|
||||
[ "$NETFS" = 0 ] && continue ;;
|
||||
esac
|
||||
|
||||
IFS=","; set -- $mopt; IFS="$IFS_SAVE"
|
||||
while :; do
|
||||
case "$1" in
|
||||
ro) rofs_list="$rofs_list $mp"; nerr=$(( $nerr + 1 )) ;;
|
||||
"") shift; break ;;
|
||||
esac
|
||||
shift
|
||||
done
|
||||
done < <(LC_ALL=C /bin/cat /proc/mounts 2>/dev/null)
|
||||
|
||||
[ $nerr -eq 0 ] && { echo OK; exit $STATE_OK; } || echo "$rofs_list: read only fs"
|
||||
|
||||
exit $exitstatus
|
|
@ -1,108 +0,0 @@
|
|||
#!/usr/bin/env python
|
||||
""" check_supybot_plugin -- ensure that a plugin is loaded by supybot.
|
||||
|
||||
Run like:
|
||||
|
||||
check_supybot_plugin --target fedmsg
|
||||
check_supybot_plugin --target koji --debug
|
||||
|
||||
"""
|
||||
|
||||
import argparse
|
||||
import sys
|
||||
import socket
|
||||
import string
|
||||
import uuid
|
||||
|
||||
|
||||
def process_args():
|
||||
parser = argparse.ArgumentParser()
|
||||
parser.add_argument(
|
||||
'-t', '--target', default=None, dest='target',
|
||||
help="Required. The plugin we're looking for."
|
||||
)
|
||||
parser.add_argument(
|
||||
'-n', '--nick', default=None, dest='nick',
|
||||
help="NICK to use when connecting to freenode.",
|
||||
)
|
||||
parser.add_argument(
|
||||
'-d', '--debug', default=False, action='store_true',
|
||||
help='Print out debug information.', dest='debug',
|
||||
)
|
||||
parser.add_argument(
|
||||
'-H', '--host', default='irc.freenode.net',
|
||||
help='Host to connect to.', dest='host',
|
||||
)
|
||||
parser.add_argument(
|
||||
'-p', '--port', default=6667, type=int,
|
||||
help='Host to connect to.', dest='port',
|
||||
)
|
||||
return parser.parse_args()
|
||||
|
||||
args = process_args()
|
||||
|
||||
# Use a random nick so people can't mess with us
|
||||
if not args.nick:
|
||||
args.nick = 'nrpe-' + str(uuid.uuid4()).split('-')[0]
|
||||
|
||||
name = "NRPE Bot"
|
||||
readbuffer = ""
|
||||
|
||||
if not args.target:
|
||||
print "UNKNOWN: No 'target' specified."
|
||||
sys.exit(3)
|
||||
|
||||
args.target = args.target.lower()
|
||||
|
||||
if args.debug:
|
||||
print "connecting to %s/%i" % (args.host, args.port)
|
||||
|
||||
try:
|
||||
s = socket.socket()
|
||||
s.connect((args.host, args.port))
|
||||
|
||||
if args.debug:
|
||||
print "as %s/%s (%s)" % (args.nick, args.nick, name)
|
||||
|
||||
s.send("nick %s\r\n" % args.nick)
|
||||
s.send("USER %s %s bla :%s\r\n" % (args.nick, args.host, name))
|
||||
|
||||
while 1:
|
||||
readbuffer = readbuffer+s.recv(1024)
|
||||
temp = string.split(readbuffer, "\n")
|
||||
readbuffer = temp.pop()
|
||||
|
||||
for line in temp:
|
||||
line = string.rstrip(line)
|
||||
|
||||
if args.debug:
|
||||
print " * ", line
|
||||
|
||||
line = string.split(line)
|
||||
|
||||
if line[1] == 'MODE':
|
||||
msg = "privmsg zodbot :list\r\n"
|
||||
if args.debug:
|
||||
print "sending:"
|
||||
print " ->", msg
|
||||
s.send(msg)
|
||||
|
||||
if line[1] == 'PRIVMSG':
|
||||
if args.debug:
|
||||
print "Got our response.."
|
||||
|
||||
plugins = map(str.lower, ' '.join(line[3:][1:]).split(', '))
|
||||
|
||||
if args.target in plugins:
|
||||
print "OK"
|
||||
s.send("QUIT")
|
||||
sys.exit(0)
|
||||
else:
|
||||
print "CRITICAL: %r not loaded by supybot" % args.target
|
||||
s.send("QUIT")
|
||||
sys.exit(2)
|
||||
except Exception as e:
|
||||
print "UNKNOWN: ", str(e)
|
||||
if args.debug:
|
||||
raise
|
||||
sys.exit(3)
|
|
@ -1,19 +0,0 @@
|
|||
#!/bin/bash
|
||||
|
||||
RUNNING_VMS=`testcloud instance list | grep -i 'running' | wc -l`
|
||||
CRITICAL=20
|
||||
WARNING=15
|
||||
|
||||
|
||||
if [ $RUNNING_VMS -gt $CRITICAL ]
|
||||
then
|
||||
echo "Testcloud: CRITICAL Number of VMs running: $RUNNING_VMS"
|
||||
exit 2
|
||||
elif [ $RUNNING_VMS -gt $WARNING ]
|
||||
then
|
||||
echo "Testcloud: WARNING Number of VMs running: $RUNNING_VMS"
|
||||
exit 1
|
||||
else
|
||||
echo "Testcloud: OK Number of VMs running: $RUNNING_VMS"
|
||||
exit 0
|
||||
fi
|
Binary file not shown.
Binary file not shown.
|
@ -1,11 +0,0 @@
|
|||
module fi-nrpe 1.0;
|
||||
|
||||
require {
|
||||
type nagios_system_plugin_t;
|
||||
type nrpe_exec_t;
|
||||
class file getattr;
|
||||
}
|
||||
|
||||
#============= nagios_system_plugin_t ==============
|
||||
allow nagios_system_plugin_t nrpe_exec_t:file getattr;
|
||||
|
|
@ -1,3 +0,0 @@
|
|||
---
|
||||
- name: restart nrpe
|
||||
service: name=nrpe state=restarted
|
|
@ -1,226 +0,0 @@
|
|||
# nagios-client/nrpe
|
||||
|
||||
---
|
||||
# install pkgs:
|
||||
- name: install nagios client pkgs
|
||||
yum: name={{ item }} state=present
|
||||
with_items:
|
||||
- nrpe
|
||||
- nagios-plugins
|
||||
- nagios-plugins-disk
|
||||
- nagios-plugins-file_age
|
||||
- nagios-plugins-users
|
||||
- nagios-plugins-procs
|
||||
- nagios-plugins-swap
|
||||
- nagios-plugins-load
|
||||
- nagios-plugins-ping
|
||||
tags:
|
||||
- packages
|
||||
- nagios/client
|
||||
when: ansible_distribution_major_version|int < 22
|
||||
|
||||
# install pkgs:
|
||||
- name: install nagios client pkgs
|
||||
dnf: name={{ item }} state=present
|
||||
with_items:
|
||||
- nrpe
|
||||
- nagios-plugins
|
||||
- nagios-plugins-disk
|
||||
- nagios-plugins-file_age
|
||||
- nagios-plugins-users
|
||||
- nagios-plugins-procs
|
||||
- nagios-plugins-swap
|
||||
- nagios-plugins-load
|
||||
- nagios-plugins-ping
|
||||
tags:
|
||||
- packages
|
||||
- nagios/client
|
||||
when: ansible_distribution_major_version|int > 21
|
||||
|
||||
- name: install local nrpe check scripts that are not packaged
|
||||
copy: src="scripts/{{ item }}" dest="{{ libdir }}/nagios/plugins/{{ item }}" mode=0755 owner=nagios group=nagios
|
||||
with_items:
|
||||
- check_haproxy_conns.py
|
||||
- check_postfix_queue
|
||||
- check_raid.py
|
||||
- check_lock
|
||||
- check_fcomm_queue
|
||||
- check_fedmsg_consumer_backlog.py
|
||||
- check_fedmsg_consumer_exceptions.py
|
||||
- check_fedmsg_producer_last_ran.py
|
||||
- check_fedmsg_producers_consumers.py
|
||||
- check_supybot_plugin
|
||||
- check_rabbitmq_size
|
||||
- check_datanommer_timesince.py
|
||||
- check_memcache_connect
|
||||
- check_readonly_fs
|
||||
- check_lock_file_age
|
||||
- check_testcloud
|
||||
- check_osbs_builds.py
|
||||
- check_osbs_api.py
|
||||
- check_ipa_replication
|
||||
when: not inventory_hostname.startswith('noc')
|
||||
tags:
|
||||
- nagios/client
|
||||
|
||||
# create dirs
|
||||
# puppet used to make /var/spool/nagios (owned by nagios.nagios) mode 750
|
||||
# and /usr/lib/nagios/plugins (owned by root) mode 755 - but we don't know WHY
|
||||
# then stuff it with plugins from the plugins dir in the nagios module
|
||||
# then we symlinked that to /usr/lib64/nagios/plugins
|
||||
# it was a nightmare - don't do that - my ghost will haunt you if you do
|
||||
# skvidal 2013-05-21
|
||||
|
||||
|
||||
# Three tasks for handling our custom selinux module
|
||||
- name: ensure a directory exists for our custom selinux module
|
||||
file: dest=/usr/share/nrpe state=directory
|
||||
|
||||
- name: copy over our custom selinux module
|
||||
copy: src=selinux/fi-nrpe.pp dest=/usr/share/nrpe/fi-nrpe.pp
|
||||
register: selinux_module
|
||||
|
||||
- name: install our custom selinux module
|
||||
command: semodule -i /usr/share/nrpe/fi-nrpe.pp
|
||||
when: ansible_distribution_major_version|int == 7 and selinux_module|changed
|
||||
|
||||
|
||||
# Set up our base config.
|
||||
- name: /etc/nagios/nrpe.cfg
|
||||
template: src=nrpe.cfg.j2 dest=/etc/nagios/nrpe.cfg
|
||||
when: not inventory_hostname.startswith('noc')
|
||||
notify:
|
||||
- restart nrpe
|
||||
tags:
|
||||
- config
|
||||
- nagios/client
|
||||
|
||||
#
|
||||
# The actual items files here end in .j2 (they are templates)
|
||||
# So when adding or modifying them change the .j2 version in git.
|
||||
#
|
||||
- name: install nrpe client configs
|
||||
template: src={{ item }}.j2 dest=/etc/nrpe.d/{{ item }}
|
||||
with_items:
|
||||
- check_raid.cfg
|
||||
- check_ipa.cfg
|
||||
- check_readonly_fs.cfg
|
||||
- check_cron.cfg
|
||||
- check_disk.cfg
|
||||
- check_swap.cfg
|
||||
- check_postfix_queue.cfg
|
||||
- check_lock.cfg
|
||||
- check_fedmsg_hub_proc.cfg
|
||||
- check_fedmsg_irc_proc.cfg
|
||||
- check_fedmsg_relay_proc.cfg
|
||||
- check_fedmsg_gateway_proc.cfg
|
||||
- check_fedmsg_masher_proc.cfg
|
||||
- check_redis_proc.cfg
|
||||
- check_autocloud_proc.cfg
|
||||
- check_fedmsg_consumers.cfg
|
||||
- check_supybot_fedmsg_plugin.cfg
|
||||
- check_datanommer_history.cfg
|
||||
- check_memcache.cfg
|
||||
- check_lock_file_age.cfg
|
||||
- check_basset.cfg
|
||||
- check_fmn.cfg
|
||||
- check_osbs.cfg
|
||||
- check_koschei_polling_proc.cfg
|
||||
- check_koschei_build_resolver_proc.cfg
|
||||
- check_koschei_repo_resolver_proc.cfg
|
||||
- check_koschei_scheduler_proc.cfg
|
||||
- check_koschei_watcher_proc.cfg
|
||||
- check_testcloud.cfg
|
||||
notify:
|
||||
- restart nrpe
|
||||
tags:
|
||||
- config
|
||||
- nagios/client
|
||||
|
||||
#
|
||||
# The actual items files here end in .j2 (they are templates)
|
||||
# So when adding or modifying them change the .j2 version in git.
|
||||
#
|
||||
- name: install nrpe bugyou fedmsg hubs check config
|
||||
template: src=check_fedmsg_hub_procs_bugyou.cfg.j2 dest=/etc/nrpe.d/check_fedmsg_hub_procs_bugyou.cfg
|
||||
when: inventory_hostname.startswith('bugyou01')
|
||||
notify:
|
||||
- restart nrpe
|
||||
tags:
|
||||
- nagios/client
|
||||
|
||||
#
|
||||
# The actual items files here end in .j2 (they are templates)
|
||||
# So when adding or modifying them change the .j2 version in git.
|
||||
#
|
||||
- name: install nrpe openvpn check config
|
||||
template: src=check_openvpn_link.cfg.j2 dest=/etc/nrpe.d/check_openvpn_link.cfg
|
||||
when: vpn == true
|
||||
notify:
|
||||
- restart nrpe
|
||||
tags:
|
||||
- nagios/client
|
||||
#
|
||||
# The actual items files here end in .j2 (they are templates)
|
||||
# So when adding or modifying them change the .j2 version in git.
|
||||
#
|
||||
- name: install nrpe unbound check config
|
||||
template: src=check_unbound_proc.cfg.j2 dest=/etc/nrpe.d/check_unbound_proc.cfg
|
||||
when: inventory_hostname.startswith('unbound')
|
||||
notify:
|
||||
- restart nrpe
|
||||
tags:
|
||||
- nagios/client
|
||||
#
|
||||
# The actual items files here end in .j2 (they are templates)
|
||||
# So when adding or modifying them change the .j2 version in git.
|
||||
#
|
||||
- name: install nrpe merged log check script on log01
|
||||
template: src=check_merged_file_age.cfg.j2 dest=/etc/nrpe.d/check_merged_file_age.cfg
|
||||
when: inventory_hostname.startswith('log0')
|
||||
notify:
|
||||
- restart nrpe
|
||||
tags:
|
||||
- nagios/client
|
||||
#
|
||||
# The actual items files here end in .j2 (they are templates)
|
||||
# So when adding or modifying them change the .j2 version in git.
|
||||
#
|
||||
- name: install nrpe check_mysql config for mariadb servers
|
||||
template: src=check_mysql.cfg.j2 dest=/etc/nrpe.d/check_mysql.cfg
|
||||
when: inventory_hostname.startswith('db03')
|
||||
notify:
|
||||
- restart nrpe
|
||||
tags:
|
||||
- nagios/client
|
||||
|
||||
- name: install nrpe checks for proxies
|
||||
template: src={{ item }}.j2 dest=/etc/nrpe.d/{{ item }}
|
||||
with_items:
|
||||
- check_happroxy_conns.cfg
|
||||
- check_varnish_proc.cfg
|
||||
when: inventory_hostname.startswith('proxy')
|
||||
notify:
|
||||
- restart nrpe
|
||||
tags:
|
||||
- nagios/client
|
||||
|
||||
- name: nrpe service start
|
||||
service: name=nrpe state=started enabled=true
|
||||
tags:
|
||||
- service
|
||||
- nagios/client
|
||||
|
||||
- name: Check if the fedmsg group exists
|
||||
shell: /usr/bin/getent group fedmsg | /usr/bin/wc -l | tr -d ' '
|
||||
register: fedmsg_exists
|
||||
check_mode: no
|
||||
changed_when: "1 != 1"
|
||||
tags:
|
||||
- nagios/client
|
||||
|
||||
- name: Add nrpe user to the fedmsg group if it exists
|
||||
user: name=nrpe groups=fedmsg append=yes
|
||||
when: fedmsg_exists.stdout == "1"
|
||||
tags:
|
||||
- nagios/client
|
|
@ -1 +0,0 @@
|
|||
command[check_autocloud_proc]=/usr/lib64/nagios/plugins/check_procs -c 1:1 -C 'python' -a 'autocloud_job.py' -u root
|
|
@ -1,4 +0,0 @@
|
|||
command[check_mongo_proc]={{ libdir }}/nagios/plugins/check_procs -s RSD -u mongodb -C mongod -c 1:1
|
||||
command[check_rabbitmq_proc]={{ libdir }}/nagios/plugins/check_procs -s RSD -u rabbitmq -C beam.smp -c 1:1
|
||||
command[check_worker_proc]={{ libdir }}/nagios/plugins/check_procs -s RSD -u basset-worker -C basset-worker -c 1:6
|
||||
command[check_basset_queue]={{ libdir }}/nagios/plugins/check_rabbitmq_size check_submission 10 20
|
|
@ -1 +0,0 @@
|
|||
command[check_cron]={{ libdir }}/nagios/plugins/check_procs -c 1:15 -C 'crond' -u root
|
|
@ -1,50 +0,0 @@
|
|||
# Checks on the datanommer history to make sure we're still receiving messages
|
||||
# of all types.
|
||||
#
|
||||
# The following are fedmsg/datanommer checks to be run on busgateway01.
|
||||
# They check for the time since the latest message in any particular category.
|
||||
# The first number is the seconds elapsed until we should raise a warning.
|
||||
# The second number is the seconds elapsed until we should raise an error.
|
||||
# For your reference:
|
||||
# 4 hours -> 14400
|
||||
# 1 day -> 86400
|
||||
# 3 days -> 259200
|
||||
# 1 week -> 604800
|
||||
# 3 weeks -> 1814400
|
||||
# 1 month -> 2628000
|
||||
# 3 months -> 7884000
|
||||
command[check_datanommer_buildsys]={{libdir}}/nagios/plugins/check_datanommer_timesince.py buildsys 14400 86400
|
||||
command[check_datanommer_git]={{libdir}}/nagios/plugins/check_datanommer_timesince.py git 86400 604800
|
||||
command[check_datanommer_bodhi]={{libdir}}/nagios/plugins/check_datanommer_timesince.py bodhi 86400 604800
|
||||
command[check_datanommer_wiki]={{libdir}}/nagios/plugins/check_datanommer_timesince.py wiki 259200 1814400
|
||||
command[check_datanommer_compose]={{libdir}}/nagios/plugins/check_datanommer_timesince.py compose 259200 1814400
|
||||
command[check_datanommer_meetbot]={{libdir}}/nagios/plugins/check_datanommer_timesince.py meetbot 604800 2628000
|
||||
command[check_datanommer_fas]={{libdir}}/nagios/plugins/check_datanommer_timesince.py fas 1814400 2628000
|
||||
command[check_datanommer_pkgdb]={{libdir}}/nagios/plugins/check_datanommer_timesince.py pkgdb 1814400 2628000
|
||||
command[check_datanommer_fedoratagger]={{libdir}}/nagios/plugins/check_datanommer_timesince.py fedoratagger 2628000 7884000
|
||||
command[check_datanommer_planet]={{libdir}}/nagios/plugins/check_datanommer_timesince.py planet 2628000 7884000
|
||||
command[check_datanommer_copr]={{libdir}}/nagios/plugins/check_datanommer_timesince.py copr 21600 86400
|
||||
command[check_datanommer_trac]={{libdir}}/nagios/plugins/check_datanommer_timesince.py trac 86400 259200
|
||||
command[check_datanommer_askbot]={{libdir}}/nagios/plugins/check_datanommer_timesince.py askbot 86400 259200
|
||||
command[check_datanommer_fedbadges]={{libdir}}/nagios/plugins/check_datanommer_timesince.py fedbadges 86400 259200
|
||||
command[check_datanommer_fedocal]={{libdir}}/nagios/plugins/check_datanommer_timesince.py fedocal 7884000 23652000
|
||||
command[check_datanommer_ansible]={{libdir}}/nagios/plugins/check_datanommer_timesince.py ansible 432000 604800
|
||||
command[check_datanommer_summershum]={{libdir}}/nagios/plugins/check_datanommer_timesince.py summershum 604800 1814400
|
||||
command[check_datanommer_jenkins]={{libdir}}/nagios/plugins/check_datanommer_timesince.py jenkins 432000 604800
|
||||
command[check_datanommer_github]={{libdir}}/nagios/plugins/check_datanommer_timesince.py github 432000 604800
|
||||
command[check_datanommer_kerneltest]={{libdir}}/nagios/plugins/check_datanommer_timesince.py kerneltest 604800 1814400
|
||||
command[check_datanommer_fmn]={{libdir}}/nagios/plugins/check_datanommer_timesince.py fmn 604800 1814400
|
||||
command[check_datanommer_anitya]={{libdir}}/nagios/plugins/check_datanommer_timesince.py anitya 604800 1814400
|
||||
command[check_datanommer_fedimg]={{libdir}}/nagios/plugins/check_datanommer_timesince.py fedimg 259200 604800
|
||||
command[check_datanommer_hotness]={{libdir}}/nagios/plugins/check_datanommer_timesince.py hotness 604800 1814400
|
||||
command[check_datanommer_faf]={{libdir}}/nagios/plugins/check_datanommer_timesince.py faf 86400 259200
|
||||
command[check_datanommer_koschei]={{libdir}}/nagios/plugins/check_datanommer_timesince.py koschei 86400 604800
|
||||
command[check_datanommer_autocloud]={{libdir}}/nagios/plugins/check_datanommer_timesince.py autocloud 259200 1814400
|
||||
command[check_datanommer_twoweekatomic]=/usr/lib64/nagios/plugins/check_datanommer_timesince.py org.fedoraproject.prod.releng.atomic.twoweek.complete 1296000 1382400
|
||||
|
||||
# This one is retired since it times out all the time. Too few messages.
|
||||
#command[check_datanommer_nuancier]={{libdir}}/nagios/plugins/check_datanommer_timesince.py nuancier 23652000 31536000
|
||||
|
||||
# These are not actually finished and deployed yet
|
||||
command[check_datanommer_mailman]={{libdir}}/nagios/plugins/check_datanommer_timesince.py mailman 14400 86400
|
||||
command[check_datanommer_bugzilla]={{libdir}}/nagios/plugins/check_datanommer_timesince.py bugzilla 86400 259200
|
|
@ -1,7 +0,0 @@
|
|||
command[check_disk_/]={{ libdir }}/nagios/plugins/check_disk -w 14% -c 10% -p /
|
||||
command[check_disk_/boot]={{ libdir }}/nagios/plugins/check_disk -w 15% -c 10% -p /boot
|
||||
command[check_disk_/srv/cache/lookaside]={{ libdir }}/nagios/plugins/check_disk -w 20% -c 10% -p /srv/cache/lookaside
|
||||
command[check_disk_/srv]=/usr/lib64/nagios/plugins/check_disk -w 20% -c 10% -p /srv
|
||||
command[check_disk_/srv/buildmaster]=/usr/lib64/nagios/plugins/check_disk -w 20% -c 10% -p /srv/buildmaster
|
||||
command[check_disk_/srv/taskotron]=/usr/lib64/nagios/plugins/check_disk -w 20% -c 10% -p /srv/taskotron
|
||||
command[check_disk_/var/log]=/usr/lib64/nagios/plugins/check_disk -w 20% -c 15% -p /var/log
|
|
@ -1,66 +0,0 @@
|
|||
# Fedmsg checks for consumers and producers
|
||||
command[check_fedmsg_cp_busgateway_hub]={{libdir}}/nagios/plugins/check_fedmsg_producers_consumers.py fedmsg-hub Nommer MonitoringProducer
|
||||
command[check_fedmsg_cp_busgateway_relay]={{libdir}}/nagios/plugins/check_fedmsg_producers_consumers.py fedmsg-relay RelayConsumer MonitoringProducer
|
||||
command[check_fedmsg_cp_busgateway_gateway]={{libdir}}/nagios/plugins/check_fedmsg_producers_consumers.py fedmsg-gateway GatewayConsumer MonitoringProducer
|
||||
command[check_fedmsg_cp_anitya_relay]={{libdir}}/nagios/plugins/check_fedmsg_producers_consumers.py fedmsg-relay RelayConsumer MonitoringProducer
|
||||
command[check_fedmsg_cp_app]={{libdir}}/nagios/plugins/check_fedmsg_producers_consumers.py fedmsg-relay RelayConsumer MonitoringProducer
|
||||
command[check_fedmsg_cp_value]={{libdir}}/nagios/plugins/check_fedmsg_producers_consumers.py fedmsg-irc IRCBotConsumer MonitoringProducer
|
||||
command[check_fedmsg_cp_pkgs]={{libdir}}/nagios/plugins/check_fedmsg_producers_consumers.py fedmsg-hub GenACLsConsumer MonitoringProducer
|
||||
command[check_fedmsg_cp_summershum]={{libdir}}/nagios/plugins/check_fedmsg_producers_consumers.py fedmsg-hub SummerShumConsumer MonitoringProducer
|
||||
command[check_fedmsg_cp_badges_backend]={{libdir}}/nagios/plugins/check_fedmsg_producers_consumers.py fedmsg-hub FedoraBadgesConsumer MonitoringProducer
|
||||
command[check_fedmsg_cp_notifs_backend]={{libdir}}/nagios/plugins/check_fedmsg_producers_consumers.py fedmsg-hub FMNConsumer DigestProducer ConfirmationProducer MonitoringProducer
|
||||
command[check_fedmsg_cp_bugzilla2fedmsg]={{libdir}}/nagios/plugins/check_fedmsg_producers_consumers.py moksha-hub BugzillaConsumer MonitoringProducer
|
||||
command[check_fedmsg_cp_fedimg_backend]={{libdir}}/nagios/plugins/check_fedmsg_producers_consumers.py fedmsg-hub FedimgConsumer MonitoringProducer
|
||||
command[check_fedmsg_cp_hotness_backend]={{libdir}}/nagios/plugins/check_fedmsg_producers_consumers.py fedmsg-hub BugzillaTicketFiler MonitoringProducer
|
||||
command[check_fedmsg_cp_bodhi_backend01_hub]={{libdir}}/nagios/plugins/check_fedmsg_producers_consumers.py fedmsg-hub Masher MonitoringProducer
|
||||
command[check_fedmsg_cp_bodhi_backend02_hub]={{libdir}}/nagios/plugins/check_fedmsg_producers_consumers.py fedmsg-hub UpdatesHandler MonitoringProducer
|
||||
command[check_fedmsg_cp_autocloud_backend]={{libdir}}/nagios/plugins/check_fedmsg_producers_consumers.py fedmsg-hub AutoCloudConsumer MonitoringProducer
|
||||
command[check_fedmsg_cp_packages_backend]={{libdir}}/nagios/plugins/check_fedmsg_producers_consumers.py fedmsg-hub CacheInvalidator MonitoringProducer
|
||||
command[check_fedmsg_cp_bugyou_backend]={{libdir}}/nagios/plugins/check_fedmsg_producers_consumers.py fedmsg-hub BugyouConsumer MonitoringProducer
|
||||
command[check_fedmsg_cp_pdc_backend]={{libdir}}/nagios/plugins/check_fedmsg_producers_consumers.py fedmsg-hub PDCUpdater MonitoringProducer
|
||||
command[check_fedmsg_cp_mbs_backend]={{libdir}}/nagios/plugins/check_fedmsg_producers_consumers.py fedmsg-hub MBSConsumer MBSProducer MonitoringProducer
|
||||
|
||||
command[check_fedmsg_cexceptions_busgateway_hub]={{libdir}}/nagios/plugins/check_fedmsg_consumer_exceptions.py fedmsg-hub Nommer 1 10
|
||||
command[check_fedmsg_cexceptions_busgateway_relay]={{libdir}}/nagios/plugins/check_fedmsg_consumer_exceptions.py fedmsg-relay RelayConsumer 1 10
|
||||
command[check_fedmsg_cexceptions_busgateway_gateway]={{libdir}}/nagios/plugins/check_fedmsg_consumer_exceptions.py fedmsg-gateway GatewayConsumer 1 10
|
||||
command[check_fedmsg_cexceptions_anitya_relay]={{libdir}}/nagios/plugins/check_fedmsg_consumer_exceptions.py fedmsg-relay RelayConsumer 1 10
|
||||
command[check_fedmsg_cexceptions_app]={{libdir}}/nagios/plugins/check_fedmsg_consumer_exceptions.py fedmsg-relay RelayConsumer 1 10
|
||||
command[check_fedmsg_cexceptions_value]={{libdir}}/nagios/plugins/check_fedmsg_consumer_exceptions.py fedmsg-irc IRCBotConsumer 1 10
|
||||
command[check_fedmsg_cexceptions_pkgs]={{libdir}}/nagios/plugins/check_fedmsg_consumer_exceptions.py fedmsg-hub GenACLsConsumer 1 10
|
||||
command[check_fedmsg_cexceptions_summershum]={{libdir}}/nagios/plugins/check_fedmsg_consumer_exceptions.py fedmsg-hub SummerShumConsumer 1 10
|
||||
command[check_fedmsg_cexceptions_badges_backend]={{libdir}}/nagios/plugins/check_fedmsg_consumer_exceptions.py fedmsg-hub FedoraBadgesConsumer 1 10
|
||||
command[check_fedmsg_cexceptions_notifs_backend]={{libdir}}/nagios/plugins/check_fedmsg_consumer_exceptions.py fedmsg-hub FMNConsumer 1 10
|
||||
command[check_fedmsg_cexceptions_bugzilla2fedmsg]={{libdir}}/nagios/plugins/check_fedmsg_consumer_exceptions.py moksha-hub BugzillaConsumer 1 10
|
||||
command[check_fedmsg_cexceptions_fedimg_backend]={{libdir}}/nagios/plugins/check_fedmsg_consumer_exceptions.py fedmsg-hub FedimgConsumer 1 10
|
||||
command[check_fedmsg_cexceptions_hotness_backend]={{libdir}}/nagios/plugins/check_fedmsg_consumer_exceptions.py fedmsg-hub BugzillaTicketFiler 1 10
|
||||
command[check_fedmsg_cexceptions_bodhi_backend01_hub]={{libdir}}/nagios/plugins/check_fedmsg_consumer_exceptions.py fedmsg-hub Masher 1 10
|
||||
command[check_fedmsg_cexceptions_bodhi_backend02_hub]={{libdir}}/nagios/plugins/check_fedmsg_consumer_exceptions.py fedmsg-hub UpdatesHandler 1 10
|
||||
command[check_fedmsg_cexceptions_autocloud_backend]={{libdir}}/nagios/plugins/check_fedmsg_consumer_exceptions.py fedmsg-hub AutoCloudConsumer 1 10
|
||||
command[check_fedmsg_cexceptions_packages_backend]={{libdir}}/nagios/plugins/check_fedmsg_consumer_exceptions.py fedmsg-hub CacheInvalidator 1 10
|
||||
command[check_fedmsg_cexceptions_bugyou_backend]={{libdir}}/nagios/plugins/check_fedmsg_consumer_exceptions.py fedmsg-hub BugyouConsumer 1 10
|
||||
command[check_fedmsg_cexceptions_pdc_backend]={{libdir}}/nagios/plugins/check_fedmsg_consumer_exceptions.py fedmsg-hub PDCUpdater 1 10
|
||||
command[check_fedmsg_cexceptions_mbs_backend]={{libdir}}/nagios/plugins/check_fedmsg_consumer_exceptions.py fedmsg-hub MBSConsumer 1 10
|
||||
|
||||
command[check_fedmsg_cbacklog_busgateway_hub]={{libdir}}/nagios/plugins/check_fedmsg_consumer_backlog.py fedmsg-hub Nommer 500 1000
|
||||
command[check_fedmsg_cbacklog_busgateway_relay]={{libdir}}/nagios/plugins/check_fedmsg_consumer_backlog.py fedmsg-relay RelayConsumer 10 50
|
||||
command[check_fedmsg_cbacklog_busgateway_gateway]={{libdir}}/nagios/plugins/check_fedmsg_consumer_backlog.py fedmsg-gateway GatewayConsumer 10 50
|
||||
command[check_fedmsg_cbacklog_anitya_relay]={{libdir}}/nagios/plugins/check_fedmsg_consumer_backlog.py fedmsg-relay RelayConsumer 10 50
|
||||
command[check_fedmsg_cbacklog_app]={{libdir}}/nagios/plugins/check_fedmsg_consumer_backlog.py fedmsg-relay RelayConsumer 10 50
|
||||
command[check_fedmsg_cbacklog_value]={{libdir}}/nagios/plugins/check_fedmsg_consumer_backlog.py fedmsg-irc IRCBotConsumer 10 50
|
||||
command[check_fedmsg_cbacklog_pkgs]={{libdir}}/nagios/plugins/check_fedmsg_consumer_backlog.py fedmsg-hub GenACLsConsumer 10 50
|
||||
command[check_fedmsg_cbacklog_summershum]={{libdir}}/nagios/plugins/check_fedmsg_consumer_backlog.py fedmsg-hub SummerShumConsumer 100 500
|
||||
command[check_fedmsg_cbacklog_badges_backend]={{libdir}}/nagios/plugins/check_fedmsg_consumer_backlog.py fedmsg-hub FedoraBadgesConsumer 7000 10000
|
||||
command[check_fedmsg_cbacklog_notifs_backend]={{libdir}}/nagios/plugins/check_fedmsg_consumer_backlog.py fedmsg-hub FMNConsumer 15000 20000
|
||||
command[check_fedmsg_cbacklog_bugzilla2fedmsg]={{libdir}}/nagios/plugins/check_fedmsg_consumer_backlog.py moksha-hub BugzillaConsumer 10 100
|
||||
command[check_fedmsg_cbacklog_fedimg_backend]={{libdir}}/nagios/plugins/check_fedmsg_consumer_backlog.py fedmsg-hub FedimgConsumer 2000 5000
|
||||
command[check_fedmsg_cbacklog_hotness_backend]={{libdir}}/nagios/plugins/check_fedmsg_consumer_backlog.py fedmsg-hub BugzillaTicketFiler 1000 5000
|
||||
command[check_fedmsg_cbacklog_bodhi_backend01_hub]={{libdir}}/nagios/plugins/check_fedmsg_consumer_backlog.py fedmsg-hub Masher 500 1000
|
||||
command[check_fedmsg_cbacklog_bodhi_backend02_hub]={{libdir}}/nagios/plugins/check_fedmsg_consumer_backlog.py fedmsg-hub UpdatesHandler 500 1000
|
||||
command[check_fedmsg_cbacklog_autocloud_backend]={{libdir}}/nagios/plugins/check_fedmsg_consumer_backlog.py fedmsg-hub AutoCloudConsumer 100 500
|
||||
command[check_fedmsg_cbacklog_packages_backend]={{libdir}}/nagios/plugins/check_fedmsg_consumer_backlog.py fedmsg-hub CacheInvalidator 20000 30000
|
||||
command[check_fedmsg_cbacklog_bugyou_backend]={{libdir}}/nagios/plugins/check_fedmsg_consumer_backlog.py fedmsg-hub BugyouConsumer 5000 10000
|
||||
command[check_fedmsg_cbacklog_pdc_backend]={{libdir}}/nagios/plugins/check_fedmsg_consumer_backlog.py fedmsg-hub PDCUpdater 10000 20000
|
||||
command[check_fedmsg_cbacklog_mbs_backend]={{libdir}}/nagios/plugins/check_fedmsg_consumer_backlog.py fedmsg-hub MBSConsumer 10000 20000
|
||||
|
||||
command[check_fedmsg_fmn_digest_last_ran]={{libdir}}/nagios/plugins/check_fedmsg_producer_last_ran.py fedmsg-hub DigestProducer 90 600
|
||||
command[check_fedmsg_fmn_confirm_last_ran]={{libdir}}/nagios/plugins/check_fedmsg_producer_last_ran.py fedmsg-hub ConfirmationProducer 90 600
|
|
@ -1 +0,0 @@
|
|||
command[check_fedmsg_gateway_proc]={{ libdir }}/nagios/plugins/check_procs -c 1:1 -C 'fedmsg-gateway' -u fedmsg
|
|
@ -1 +0,0 @@
|
|||
command[check_fedmsg_hub_proc]={{ libdir }}/nagios/plugins/check_procs -c 1:1 -C 'fedmsg-hub' -u fedmsg
|
|
@ -1 +0,0 @@
|
|||
command[check_fedmsg_hub_procs_bugyou]={{ libdir }}/nagios/plugins/check_procs -c 3:3 -C 'fedmsg-hub' -u fedmsg
|
|
@ -1 +0,0 @@
|
|||
command[check_fedmsg_irc_proc]={{ libdir }}/nagios/plugins/check_procs -c 1:1 -C 'fedmsg-irc' -u fedmsg
|
|
@ -1 +0,0 @@
|
|||
command[check_fedmsg_masher_proc]={{ libdir }}/nagios/plugins/check_procs -c 1:1 -C 'fedmsg-hub' -u apache
|
|
@ -1 +0,0 @@
|
|||
command[check_fedmsg_relay_proc]={{ libdir }}/nagios/plugins/check_procs -c 1:1 -C 'fedmsg-relay' -u fedmsg
|
|
@ -1,2 +0,0 @@
|
|||
command[check_fmn_worker_queue]={{ libdir }}/nagios/plugins/check_rabbitmq_size workers 200 1000
|
||||
command[check_fmn_backend_queue]={{ libdir }}/nagios/plugins/check_rabbitmq_size backends 100 200
|
|
@ -1 +0,0 @@
|
|||
command[check_haproxy_conns]=/usr/lib64/nagios/plugins/check_haproxy_conns.py
|
|
@ -1 +0,0 @@
|
|||
command[check_ipa_replication]={{ libdir }}/nagios/plugins/check_ipa_replication -u ldaps://localhost/
|
|
@ -1 +0,0 @@
|
|||
command[check_koschei_build_resolver_proc]={{ libdir }}/nagios/plugins/check_procs -s RSD -u koschei -C koschei-build-r -c 1:1
|
|
@ -1 +0,0 @@
|
|||
command[check_koschei_polling_proc]={{ libdir }}/nagios/plugins/check_procs -s RSD -u koschei -C koschei-polling -c 1:1
|
|
@ -1 +0,0 @@
|
|||
command[check_koschei_repo_resolver_proc]={{ libdir }}/nagios/plugins/check_procs -s RSD -u koschei -C koschei-repo-re -c 1:1
|
|
@ -1 +0,0 @@
|
|||
command[check_koschei_scheduler_proc]={{ libdir }}/nagios/plugins/check_procs -s RSD -u koschei -C koschei-schedul -c 1:1
|
|
@ -1 +0,0 @@
|
|||
command[check_koschei_watcher_proc]={{ libdir }}/nagios/plugins/check_procs -s RSD -u koschei -C koschei-watcher -c 1:1
|
|
@ -1 +0,0 @@
|
|||
command[check_lock]={{ libdir }}/nagios/plugins/check_lock
|
|
@ -1 +0,0 @@
|
|||
command[check_lock_file_age]={{ libdir }}/nagios/plugins/check_lock_file_age -w 1 -c 5 -f /var/lock/fedora-ca/lock
|
|
@ -1,2 +0,0 @@
|
|||
command[check_memcache]=/usr/lib64/nagios/plugins/check_procs -c 1:1 -a '/usr/bin/memcached' -u memcached
|
||||
command[check_memcache_connect]=/usr/lib64/nagios/plugins/check_memcache_connect
|
|
@ -1 +0,0 @@
|
|||
command[check_merged_file_age]=/usr/lib64/nagios/plugins/check_file_age -w 120 -c 300 /var/log/merged/messages.log
|
|
@ -1 +0,0 @@
|
|||
command[check_mirrorlist_cache]={{ libdir }}/nagios/plugins/check_file_age -w 14400 -c 129600 -f /var/lib/mirrormanager/mirrorlist_cache.pkl
|
|
@ -1 +0,0 @@
|
|||
command[check_mysql_backup]={{ libdir }}/nagios/plugins/check_file_age -w 86400 -c 129600 -f /backups/fpo-mediawiki-latest.xz
|
|
@ -1 +0,0 @@
|
|||
command[check_openvpn_link]={{ libdir }}/nagios/plugins/check_ping -H 192.168.1.41 -w 375.0,20% -c 500,60%
|
|
@ -1,2 +0,0 @@
|
|||
command[check_osbs_builds]={{ libdir }}/nagios/plugins/check_osbs_builds.py
|
||||
command[check_osbs_api]={{ libdir }}/nagios/plugins/check_osbs_api.py
|
|
@ -1 +0,0 @@
|
|||
command[check_postfix_queue]={{ libdir }}/nagios/plugins/check_postfix_queue -w {{ nrpe_check_postfix_queue_warn }} -c {{ nrpe_check_postfix_queue_crit }}
|
|
@ -1 +0,0 @@
|
|||
command[check_raid]={{ libdir }}/nagios/plugins/check_raid.py
|
|
@ -1 +0,0 @@
|
|||
command[check_readonly_fs]=/usr/lib64/nagios/plugins/check_readonly_fs
|
|
@ -1 +0,0 @@
|
|||
command[check_redis_proc]=/usr/lib64/nagios/plugins/check_procs -c 1:1 -C 'redis-server' -u redis
|
|
@ -1 +0,0 @@
|
|||
command[check_supybot_fedmsg_plugin]={{libdir}}/nagios/plugins/check_supybot_plugin -t fedmsg
|
|
@ -1 +0,0 @@
|
|||
command[check_swap]={{ libdir }}/nagios/plugins/check_swap -w 15% -c 10%
|
|
@ -1 +0,0 @@
|
|||
command[check_testcloud]={{ libdir }}/nagios/plugins/check_testcloud
|
|
@ -1 +0,0 @@
|
|||
command[check_unbound_proc]={{ libdir }}/nagios/plugins/check_procs -c 1:1 -C 'unbound' -u unbound
|
|
@ -1 +0,0 @@
|
|||
command[check_varnish_proc]=/usr/lib64/nagios/plugins/check_procs -c 1:2 -C 'varnishd' -u nobody
|
|
@ -1,232 +0,0 @@
|
|||
#############################################################################
|
||||
# Sample NRPE Config File
|
||||
# Written by: Ethan Galstad (nagios@nagios.org)
|
||||
#
|
||||
# Last Modified: 11-23-2007
|
||||
#
|
||||
# NOTES:
|
||||
# This is a sample configuration file for the NRPE daemon. It needs to be
|
||||
# located on the remote host that is running the NRPE daemon, not the host
|
||||
# from which the check_nrpe client is being executed.
|
||||
#############################################################################
|
||||
|
||||
|
||||
# LOG FACILITY
|
||||
# The syslog facility that should be used for logging purposes.
|
||||
|
||||
log_facility=daemon
|
||||
|
||||
|
||||
|
||||
# PID FILE
|
||||
# The name of the file in which the NRPE daemon should write it's process ID
|
||||
# number. The file is only written if the NRPE daemon is started by the root
|
||||
# user and is running in standalone mode.
|
||||
|
||||
#pid_file=/var/run/nrpe.pid
|
||||
|
||||
|
||||
|
||||
# PORT NUMBER
|
||||
# Port number we should wait for connections on.
|
||||
# NOTE: This must be a non-priviledged port (i.e. > 1024).
|
||||
# NOTE: This option is ignored if NRPE is running under either inetd or xinetd
|
||||
|
||||
server_port=5666
|
||||
|
||||
|
||||
|
||||
# SERVER ADDRESS
|
||||
# Address that nrpe should bind to in case there are more than one interface
|
||||
# and you do not want nrpe to bind on all interfaces.
|
||||
# NOTE: This option is ignored if NRPE is running under either inetd or xinetd
|
||||
|
||||
#server_address=127.0.0.1
|
||||
|
||||
|
||||
|
||||
# NRPE USER
|
||||
# This determines the effective user that the NRPE daemon should run as.
|
||||
# You can either supply a username or a UID.
|
||||
#
|
||||
# NOTE: This option is ignored if NRPE is running under either inetd or xinetd
|
||||
|
||||
nrpe_user=nrpe
|
||||
|
||||
|
||||
|
||||
# NRPE GROUP
|
||||
# This determines the effective group that the NRPE daemon should run as.
|
||||
# You can either supply a group name or a GID.
|
||||
#
|
||||
# NOTE: This option is ignored if NRPE is running under either inetd or xinetd
|
||||
|
||||
nrpe_group=nrpe
|
||||
|
||||
|
||||
|
||||
# ALLOWED HOST ADDRESSES
|
||||
# This is an optional comma-delimited list of IP address or hostnames
|
||||
# that are allowed to talk to the NRPE daemon. Network addresses with a bit mask
|
||||
# (i.e. 192.168.1.0/24) are also supported. Hostname wildcards are not currently
|
||||
# supported.
|
||||
#
|
||||
# Note: The daemon only does rudimentary checking of the client's IP
|
||||
# address. I would highly recommend adding entries in your /etc/hosts.allow
|
||||
# file to allow only the specified host to connect to the port
|
||||
# you are running this daemon on.
|
||||
#
|
||||
# NOTE: This option is ignored if NRPE is running under either inetd or xinetd
|
||||
|
||||
|
||||
{% if env == "staging" %}
|
||||
allowed_hosts=10.5.126.2,10.5.126.41,10.5.126.241,192.168.1.10,192.168.1.20,209.132.181.35,192.168.1.166,209.132.181.102
|
||||
{% else %}
|
||||
allowed_hosts=10.5.126.41,192.168.1.10,192.168.1.20,209.132.181.35,10.5.126.241,192.168.1.166,209.132.181.102
|
||||
{% endif %}
|
||||
|
||||
|
||||
|
||||
# COMMAND ARGUMENT PROCESSING
|
||||
# This option determines whether or not the NRPE daemon will allow clients
|
||||
# to specify arguments to commands that are executed. This option only works
|
||||
# if the daemon was configured with the --enable-command-args configure script
|
||||
# option.
|
||||
#
|
||||
# *** ENABLING THIS OPTION IS A SECURITY RISK! ***
|
||||
# Read the SECURITY file for information on some of the security implications
|
||||
# of enabling this variable.
|
||||
#
|
||||
# Values: 0=do not allow arguments, 1=allow command arguments
|
||||
|
||||
dont_blame_nrpe=0
|
||||
|
||||
|
||||
|
||||
# COMMAND PREFIX
|
||||
# This option allows you to prefix all commands with a user-defined string.
|
||||
# A space is automatically added between the specified prefix string and the
|
||||
# command line from the command definition.
|
||||
#
|
||||
# *** THIS EXAMPLE MAY POSE A POTENTIAL SECURITY RISK, SO USE WITH CAUTION! ***
|
||||
# Usage scenario:
|
||||
# Execute restricted commmands using sudo. For this to work, you need to add
|
||||
# the nagios user to your /etc/sudoers. An example entry for alllowing
|
||||
# execution of the plugins from might be:
|
||||
#
|
||||
# nagios ALL=(ALL) NOPASSWD: /usr/lib/nagios/plugins/
|
||||
#
|
||||
# This lets the nagios user run all commands in that directory (and only them)
|
||||
# without asking for a password. If you do this, make sure you don't give
|
||||
# random users write access to that directory or its contents!
|
||||
|
||||
# command_prefix=/usr/bin/sudo
|
||||
|
||||
|
||||
|
||||
# DEBUGGING OPTION
|
||||
# This option determines whether or not debugging messages are logged to the
|
||||
# syslog facility.
|
||||
# Values: 0=debugging off, 1=debugging on
|
||||
|
||||
debug=0
|
||||
|
||||
|
||||
|
||||
# COMMAND TIMEOUT
|
||||
# This specifies the maximum number of seconds that the NRPE daemon will
|
||||
# allow plugins to finish executing before killing them off.
|
||||
|
||||
command_timeout=100
|
||||
|
||||
|
||||
|
||||
# CONNECTION TIMEOUT
|
||||
# This specifies the maximum number of seconds that the NRPE daemon will
|
||||
# wait for a connection to be established before exiting. This is sometimes
|
||||
# seen where a network problem stops the SSL being established even though
|
||||
# all network sessions are connected. This causes the nrpe daemons to
|
||||
# accumulate, eating system resources. Do not set this too low.
|
||||
|
||||
connection_timeout=300
|
||||
|
||||
|
||||
|
||||
# WEEK RANDOM SEED OPTION
|
||||
# This directive allows you to use SSL even if your system does not have
|
||||
# a /dev/random or /dev/urandom (on purpose or because the necessary patches
|
||||
# were not applied). The random number generator will be seeded from a file
|
||||
# which is either a file pointed to by the environment valiable $RANDFILE
|
||||
# or $HOME/.rnd. If neither exists, the pseudo random number generator will
|
||||
# be initialized and a warning will be issued.
|
||||
# Values: 0=only seed from /dev/[u]random, 1=also seed from weak randomness
|
||||
|
||||
#allow_weak_random_seed=1
|
||||
|
||||
|
||||
|
||||
# INCLUDE CONFIG FILE
|
||||
# This directive allows you to include definitions from an external config file.
|
||||
|
||||
#include=<somefile.cfg>
|
||||
|
||||
|
||||
|
||||
# INCLUDE CONFIG DIRECTORY
|
||||
# This directive allows you to include definitions from config files (with a
|
||||
# .cfg extension) in one or more directories (with recursion).
|
||||
|
||||
include_dir=/etc/nrpe.d/
|
||||
|
||||
|
||||
|
||||
# COMMAND DEFINITIONS
|
||||
# Command definitions that this daemon will run. Definitions
|
||||
# are in the following format:
|
||||
#
|
||||
# command[<command_name>]=<command_line>
|
||||
#
|
||||
# When the daemon receives a request to return the results of <command_name>
|
||||
# it will execute the command specified by the <command_line> argument.
|
||||
#
|
||||
# Unlike Nagios, the command line cannot contain macros - it must be
|
||||
# typed exactly as it should be executed.
|
||||
#
|
||||
# Note: Any plugins that are used in the command lines must reside
|
||||
# on the machine that this daemon is running on! The examples below
|
||||
# assume that you have plugins installed in a /usr/local/nagios/libexec
|
||||
# directory. Also note that you will have to modify the definitions below
|
||||
# to match the argument format the plugins expect. Remember, these are
|
||||
# examples only!
|
||||
|
||||
|
||||
# The following examples use hardcoded command arguments...
|
||||
|
||||
command[check_users]={{ libdir }}/nagios/plugins/check_users -w 5 -c 10
|
||||
command[check_load]={{ libdir }}/nagios/plugins/check_load -w 15,10,5 -c 30,25,20
|
||||
command[check_hda1]={{ libdir }}/nagios/plugins/check_disk -w 20% -c 10% -p /dev/hda1
|
||||
{% if inventory_hostname not in groups['zombie-infested'] %}
|
||||
command[check_zombie_procs]={{ libdir }}/nagios/plugins/check_procs -w 5 -c 10 -s Z
|
||||
{% else %}
|
||||
# This host is prone to Zombies and we do not care or want to alert on it so we make the limits very high
|
||||
command[check_zombie_procs]={{ libdir }}/nagios/plugins/check_procs -w 50000 -c 100000 -s Z
|
||||
{% endif %}
|
||||
command[check_total_procs]={{ libdir }}/nagios/plugins/check_procs -w {{ nrpe_procs_warn }} -c {{ nrpe_procs_crit }}
|
||||
|
||||
|
||||
# The following examples allow user-supplied arguments and can
|
||||
# only be used if the NRPE daemon was compiled with support for
|
||||
# command arguments *AND* the dont_blame_nrpe directive in this
|
||||
# config file is set to '1'. This poses a potential security risk, so
|
||||
# make sure you read the SECURITY file before doing this.
|
||||
|
||||
#command[check_users]=/usr/lib64/nagios/plugins/check_users -w $ARG1$ -c $ARG2$
|
||||
#command[check_load]=/usr/lib64/nagios/plugins/check_load -w $ARG1$ -c $ARG2$
|
||||
#command[check_disk]=/usr/lib64/nagios/plugins/check_disk -w $ARG1$ -c $ARG2$ -p $ARG3$
|
||||
#command[check_procs]=/usr/lib64/nagios/plugins/check_procs -w $ARG1$ -c $ARG2$ -s $ARG3$
|
||||
|
||||
|
||||
# NEVER ADD ANYTHING HERE - ANY ENTRIES TO NRPE SHOULD BE in .cfg files in /etc/nrpe.d/
|
||||
|
||||
# NEVER NEVER NEVER
|
||||
#
|
|
@ -1,104 +0,0 @@
|
|||
#!/usr/bin/env python
|
||||
#
|
||||
# A script to read the Nagios status file and send email for notifications
|
||||
# off, but have recovered.
|
||||
#
|
||||
# Written by Athmane Madjoudj <athmane@fedoraproject.org>, 2011-11-15
|
||||
# based on tummy.com's work <jafo@tummy.com>, 2010-11-16
|
||||
# Released under the GPLv2.
|
||||
|
||||
import re
|
||||
from smtplib import SMTP
|
||||
from email.mime.text import MIMEText
|
||||
from socket import gethostname
|
||||
|
||||
# Settings
|
||||
debug = 0
|
||||
EMAIL_FROM="nagios@fedoraproject.org"
|
||||
EMAIL_TO="sysadmin-noc-members@fedoraproject.org"
|
||||
#EMAIL_TO="athmane@fedoraproject.org"
|
||||
nagios_status_file = '/var/spool/nagios/status.dat'
|
||||
|
||||
class NagiosStatus:
|
||||
def __init__(self, filename):
|
||||
self.filename = filename
|
||||
self.hosts = {}
|
||||
self.load_status_file()
|
||||
|
||||
def load_status_file(self):
|
||||
fp = open(self.filename, 'r')
|
||||
while True:
|
||||
line = fp.readline()
|
||||
if not line: break
|
||||
|
||||
m = re.match(r'^hoststatus\s+{\s*$', line)
|
||||
if m:
|
||||
if debug >= 2: print 'START OF HOST'
|
||||
data = { 'services' : [] }
|
||||
while True:
|
||||
line = fp.readline()
|
||||
if not line: break
|
||||
if debug >= 2: print 'host: %s' % line.rstrip()
|
||||
m2 = re.match(r'^\s+([^=]+)=(\S.*)*$', line.rstrip())
|
||||
if not m2: break
|
||||
data[m2.group(1)] = m2.group(2)
|
||||
self.hosts[data['host_name']] = data
|
||||
if debug >= 2: print 'END OF HOST'
|
||||
|
||||
m = re.match(r'^servicestatus\s+{\s*$', line)
|
||||
if m:
|
||||
if debug >= 2: print 'START OF SERVICE'
|
||||
data = {}
|
||||
while True:
|
||||
line = fp.readline()
|
||||
if not line: break
|
||||
if debug >= 2: print 'service: %s' % line.rstrip()
|
||||
m2 = re.match(r'^\s+([^=]+)=(.*)$', line.rstrip())
|
||||
if not m2: break
|
||||
data[m2.group(1)] = m2.group(2)
|
||||
self.hosts[data['host_name']]['services'].append(data)
|
||||
if debug >= 2: print 'END OF SERVICE'
|
||||
|
||||
def main():
|
||||
status = NagiosStatus(nagios_status_file)
|
||||
output = ""
|
||||
for host in sorted(status.hosts.keys()):
|
||||
host = status.hosts[host]
|
||||
if host.get('notifications_enabled', None) == None:
|
||||
output+= 'Host %s has no notifications_enabled line \n' % host['host_name']
|
||||
continue
|
||||
|
||||
# are there any hard states that aren't 0 or 1?
|
||||
hard_states = [ x for x in
|
||||
[ int(x['last_hard_state']) for x in host['services'] ]
|
||||
if not x in [0,1] ]
|
||||
need_newline = False
|
||||
if host['notifications_enabled'] == '0' and not hard_states:
|
||||
output += ('Host %s has notifications disabled and all services ok \n'
|
||||
% host['host_name'])
|
||||
need_newline = True
|
||||
|
||||
for service in host['services']:
|
||||
if debug: print '%s@%s' % ( service['check_command'], host['host_name'] )
|
||||
if debug: print ' notifications_enabled: %(notifications_enabled)s last_hard_state: %(last_hard_state)s' % service
|
||||
if (int(service['notifications_enabled']) == 0
|
||||
and int(service['last_hard_state']) in [0,1]):
|
||||
output+= (('Service %(check_command)s@%(host_name)s\n'
|
||||
' has notifications disabled, but is ok\n') % service)
|
||||
need_newline = True
|
||||
|
||||
if need_newline: output+="\n\n"
|
||||
|
||||
if output.strip() != '':
|
||||
msg_body = "List of notifications off for recovered hosts/services: \n\n"+output
|
||||
msg = MIMEText(msg_body)
|
||||
msg['Subject']="Notifications status on %s" % gethostname()
|
||||
msg['From']=EMAIL_FROM
|
||||
msg['To']=EMAIL_TO
|
||||
smtp_conn = SMTP()
|
||||
smtp_conn.connect('localhost')
|
||||
smtp_conn.sendmail(EMAIL_FROM, EMAIL_TO, msg.as_string())
|
||||
smtp_conn.quit()
|
||||
|
||||
if __name__ == '__main__':
|
||||
main()
|
|
@ -1,59 +0,0 @@
|
|||
#!/usr/bin/env python
|
||||
""" Reads a string from stdin and prints it to stdout with irc colors
|
||||
|
||||
:license: LGPLv2+
|
||||
:author: Ralph Bean <rbean@redhat.com>
|
||||
"""
|
||||
|
||||
import sys
|
||||
|
||||
mirc_colors = {
|
||||
"white": 0,
|
||||
"black": 1,
|
||||
"blue": 2,
|
||||
"green": 3,
|
||||
"red": 4,
|
||||
"brown": 5,
|
||||
"purple": 6,
|
||||
"orange": 7,
|
||||
"yellow": 8,
|
||||
"light green": 9,
|
||||
"teal": 10,
|
||||
"light cyan": 11,
|
||||
"light blue": 12,
|
||||
"pink": 13,
|
||||
"grey": 14,
|
||||
"light grey": 15,
|
||||
}
|
||||
|
||||
mapping = {
|
||||
'RECOVERY': 'green',
|
||||
'OK': 'green',
|
||||
'ACKNOWLEDGEMENT': 'yellow',
|
||||
'UNKNOWN': 'purple',
|
||||
'WARNING': 'teal',
|
||||
# 'red' probably makes the most sense here, but it behaved oddly
|
||||
'PROBLEM': 'brown',
|
||||
'CRITICAL': 'brown',
|
||||
}
|
||||
|
||||
|
||||
def markup(string, color):
|
||||
return "\x02\x03%i%s\x03\x02" % (mirc_colors[color], string)
|
||||
|
||||
|
||||
def colorize(word):
|
||||
suffix = ''
|
||||
if word.endswith(':'):
|
||||
word, suffix = word[:-1], word[-1]
|
||||
|
||||
if word in mapping:
|
||||
word = markup(word, mapping[word])
|
||||
|
||||
return word + suffix
|
||||
|
||||
|
||||
if __name__ == '__main__':
|
||||
lines = sys.stdin.readlines()
|
||||
for line in lines:
|
||||
print " ".join([colorize(word) for word in line.strip().split()])
|
|
@ -1,279 +0,0 @@
|
|||
#################################################################
|
||||
#
|
||||
# CGI.CFG - Sample CGI Configuration File for Nagios
|
||||
#
|
||||
# Last Modified: 05-05-2005
|
||||
#
|
||||
#################################################################
|
||||
|
||||
|
||||
# MAIN CONFIGURATION FILE
|
||||
# This tells the CGIs where to find your main configuration file.
|
||||
# The CGIs will read the main and host config files for any other
|
||||
# data they might need.
|
||||
|
||||
main_config_file=/etc/nagios/nagios.cfg
|
||||
|
||||
|
||||
|
||||
# PHYSICAL HTML PATH
|
||||
# This is the path where the HTML files for Nagios reside. This
|
||||
# value is used to locate the logo images needed by the statusmap
|
||||
# and statuswrl CGIs.
|
||||
|
||||
physical_html_path=/usr/share/nagios/share
|
||||
|
||||
|
||||
|
||||
# URL HTML PATH
|
||||
# This is the path portion of the URL that corresponds to the
|
||||
# physical location of the Nagios HTML files (as defined above).
|
||||
# This value is used by the CGIs to locate the online documentation
|
||||
# and graphics. If you access the Nagios pages with an URL like
|
||||
# http://www.myhost.com/nagios, this value should be '/nagios'
|
||||
# (without the quotes).
|
||||
|
||||
url_html_path=/nagios-external
|
||||
|
||||
|
||||
|
||||
# CONTEXT-SENSITIVE HELP
|
||||
# This option determines whether or not a context-sensitive
|
||||
# help icon will be displayed for most of the CGIs.
|
||||
# Values: 0 = disables context-sensitive help
|
||||
# 1 = enables context-sensitive help
|
||||
|
||||
show_context_help=0
|
||||
|
||||
|
||||
|
||||
# NAGIOS PROCESS CHECK COMMAND
|
||||
# This is the full path and filename of the program used to check
|
||||
# the status of the Nagios process. It is used only by the CGIs
|
||||
# and is completely optional. However, if you don't use it, you'll
|
||||
# see warning messages in the CGIs about the Nagios process
|
||||
# not running and you won't be able to execute any commands from
|
||||
# the web interface. The program should follow the same rules
|
||||
# as plugins; the return codes are the same as for the plugins,
|
||||
# it should have timeout protection, it should output something
|
||||
# to STDIO, etc.
|
||||
#
|
||||
# Note: The command line for the check_nagios plugin below may
|
||||
# have to be tweaked a bit, as different versions of the plugin
|
||||
# use different command line arguments/syntaxes.
|
||||
|
||||
#nagios_check_command=/usr/lib/nagios/plugins/check_nagios /var/log/nagios/status.dat 5 '/usr/sbin/nagios'
|
||||
|
||||
|
||||
|
||||
# AUTHENTICATION USAGE
|
||||
# This option controls whether or not the CGIs will use any
|
||||
# authentication when displaying host and service information, as
|
||||
# well as committing commands to Nagios for processing.
|
||||
#
|
||||
# Read the HTML documentation to learn how the authorization works!
|
||||
#
|
||||
# NOTE: It is a really *bad* idea to disable authorization, unless
|
||||
# you plan on removing the command CGI (cmd.cgi)! Failure to do
|
||||
# so will leave you wide open to kiddies messing with Nagios and
|
||||
# possibly hitting you with a denial of service attack by filling up
|
||||
# your drive by continuously writing to your command file!
|
||||
#
|
||||
# Setting this value to 0 will cause the CGIs to *not* use
|
||||
# authentication (bad idea), while any other value will make them
|
||||
# use the authentication functions (the default).
|
||||
|
||||
use_authentication=1
|
||||
|
||||
|
||||
|
||||
# DEFAULT USER
|
||||
# Setting this variable will define a default user name that can
|
||||
# access pages without authentication. This allows people within a
|
||||
# secure domain (i.e., behind a firewall) to see the current status
|
||||
# without authenticating. You may want to use this to avoid basic
|
||||
# authentication if you are not using a sercure server since basic
|
||||
# authentication transmits passwords in the clear.
|
||||
#
|
||||
# Important: Do not define a default username unless you are
|
||||
# running a secure web server and are sure that everyone who has
|
||||
# access to the CGIs has been authenticated in some manner! If you
|
||||
# define this variable, anyone who has not authenticated to the web
|
||||
# server will inherit all rights you assign to this user!
|
||||
|
||||
#default_user_name=guest
|
||||
|
||||
|
||||
|
||||
# SYSTEM/PROCESS INFORMATION ACCESS
|
||||
# This option is a comma-delimited list of all usernames that
|
||||
# have access to viewing the Nagios process information as
|
||||
# provided by the Extended Information CGI (extinfo.cgi). By
|
||||
# default, *no one* has access to this unless you choose to
|
||||
# not use authorization. You may use an asterisk (*) to
|
||||
# authorize any user who has authenticated to the web server.
|
||||
|
||||
#authorized_for_system_information=nagiosadmin,theboss,jdoe
|
||||
authorized_for_system_information=*
|
||||
|
||||
|
||||
|
||||
# CONFIGURATION INFORMATION ACCESS
|
||||
# This option is a comma-delimited list of all usernames that
|
||||
# can view ALL configuration information (hosts, commands, etc).
|
||||
# By default, users can only view configuration information
|
||||
# for the hosts and services they are contacts for. You may use
|
||||
# an asterisk (*) to authorize any user who has authenticated
|
||||
# to the web server.
|
||||
|
||||
#authorized_for_configuration_information=nagiosadmin,jdoe
|
||||
authorized_for_configuration_information=*
|
||||
|
||||
|
||||
# SYSTEM/PROCESS COMMAND ACCESS
|
||||
# This option is a comma-delimited list of all usernames that
|
||||
# can issue shutdown and restart commands to Nagios via the
|
||||
# command CGI (cmd.cgi). Users in this list can also change
|
||||
# the program mode to active or standby. By default, *no one*
|
||||
# has access to this unless you choose to not use authorization.
|
||||
# You may use an asterisk (*) to authorize any user who has
|
||||
# authenticated to the web server.
|
||||
|
||||
#authorized_for_system_commands=nagiosadmin
|
||||
authorized_for_system_commands=athmane,ausil,averi,badone,codeblock,hvivani,ianweller,jspaleta,jstanley,kevin,lbazan,lmacken,maxamillio,mmahut,mmcgrath,nb,pfrields,puiterwijk,rafaelgomes,ralph,sijis,smooge,susmit,tibbs,tmz,wsterling,mdomsch,notting,ricky,toshio,spot,mahrud,karsten,parasense,pingou,tflink,mizdebsk,msimacek
|
||||
|
||||
|
||||
|
||||
# GLOBAL HOST/SERVICE VIEW ACCESS
|
||||
# These two options are comma-delimited lists of all usernames that
|
||||
# can view information for all hosts and services that are being
|
||||
# monitored. By default, users can only view information
|
||||
# for hosts or services that they are contacts for (unless you
|
||||
# you choose to not use authorization). You may use an asterisk (*)
|
||||
# to authorize any user who has authenticated to the web server.
|
||||
|
||||
|
||||
authorized_for_all_services=*
|
||||
authorized_for_all_hosts=*
|
||||
|
||||
|
||||
# GLOBAL HOST/SERVICE COMMAND ACCESS
|
||||
# These two options are comma-delimited lists of all usernames that
|
||||
# can issue host or service related commands via the command
|
||||
# CGI (cmd.cgi) for all hosts and services that are being monitored.
|
||||
# By default, users can only issue commands for hosts or services
|
||||
# that they are contacts for (unless you you choose to not use
|
||||
# authorization). You may use an asterisk (*) to authorize any
|
||||
# user who has authenticated to the web server.
|
||||
|
||||
#authorized_for_all_service_commands=nagiosadmin
|
||||
#authorized_for_all_host_commands=nagiosadmin
|
||||
authorized_for_all_service_commands=athmane,ausil,averi,badone,codeblock,dwa,hvivani,ianweller,jspaleta,jstanley,kevin,lbazan,lmacken,maxamillio,mmahut,mmcgrath,nb,pfrields,puiterwijk,rafaelgomes,ralph,sijis,smooge,susmit,tibbs,tmz,wsterling,mdomsch,notting,ricky,toshio,spot,mahrud,dwa,karsten,pingou,tflink,mizdebsk,msimacek
|
||||
|
||||
authorized_for_all_host_commands=athmane,ausil,averi,badone,codeblock,dwa,hvivani,ianweller,jspaleta,jstanley,kevin,lbazan,lmacken,maxamillio,mmahut,mmcgrath,nb,pfrields,puiterwijk,rafaelgomes,ralph,sijis,smooge,susmit,tibbs,tmz,wsterling,mdomsch,notting,ricky,toshio,spot,mahrud,dwa,karsten,pingou,tflink,mizdebsk,msimacek
|
||||
|
||||
|
||||
|
||||
|
||||
# STATUSMAP BACKGROUND IMAGE
|
||||
# This option allows you to specify an image to be used as a
|
||||
# background in the statusmap CGI. It is assumed that the image
|
||||
# resides in the HTML images path (i.e. /usr/local/nagios/share/images).
|
||||
# This path is automatically determined by appending "/images"
|
||||
# to the path specified by the 'physical_html_path' directive.
|
||||
# Note: The image file may be in GIF, PNG, JPEG, or GD2 format.
|
||||
# However, I recommend that you convert your image to GD2 format
|
||||
# (uncompressed), as this will cause less CPU load when the CGI
|
||||
# generates the image.
|
||||
|
||||
#statusmap_background_image=smbackground.gd2
|
||||
|
||||
|
||||
|
||||
# DEFAULT STATUSMAP LAYOUT METHOD
|
||||
# This option allows you to specify the default layout method
|
||||
# the statusmap CGI should use for drawing hosts. If you do
|
||||
# not use this option, the default is to use user-defined
|
||||
# coordinates. Valid options are as follows:
|
||||
# 0 = User-defined coordinates
|
||||
# 1 = Depth layers
|
||||
# 2 = Collapsed tree
|
||||
# 3 = Balanced tree
|
||||
# 4 = Circular
|
||||
# 5 = Circular (Marked Up)
|
||||
|
||||
default_statusmap_layout=5
|
||||
|
||||
|
||||
|
||||
# DEFAULT STATUSWRL LAYOUT METHOD
|
||||
# This option allows you to specify the default layout method
|
||||
# the statuswrl (VRML) CGI should use for drawing hosts. If you
|
||||
# do not use this option, the default is to use user-defined
|
||||
# coordinates. Valid options are as follows:
|
||||
# 0 = User-defined coordinates
|
||||
# 2 = Collapsed tree
|
||||
# 3 = Balanced tree
|
||||
# 4 = Circular
|
||||
|
||||
default_statuswrl_layout=4
|
||||
|
||||
|
||||
|
||||
# STATUSWRL INCLUDE
|
||||
# This option allows you to include your own objects in the
|
||||
# generated VRML world. It is assumed that the file
|
||||
# resides in the HTML path (i.e. /usr/local/nagios/share).
|
||||
|
||||
#statuswrl_include=myworld.wrl
|
||||
|
||||
|
||||
|
||||
# PING SYNTAX
|
||||
# This option determines what syntax should be used when
|
||||
# attempting to ping a host from the WAP interface (using
|
||||
# the statuswml CGI. You must include the full path to
|
||||
# the ping binary, along with all required options. The
|
||||
# $HOSTADDRESS$ macro is substituted with the address of
|
||||
# the host before the command is executed.
|
||||
# Please note that the syntax for the ping binary is
|
||||
# notorious for being different on virtually ever *NIX
|
||||
# OS and distribution, so you may have to tweak this to
|
||||
# work on your system.
|
||||
|
||||
ping_syntax=/bin/ping -n -U -c 5 $HOSTADDRESS$
|
||||
|
||||
|
||||
|
||||
# REFRESH RATE
|
||||
# This option allows you to specify the refresh rate in seconds
|
||||
# of various CGIs (status, statusmap, extinfo, and outages).
|
||||
|
||||
refresh_rate=90
|
||||
|
||||
|
||||
|
||||
# SOUND OPTIONS
|
||||
# These options allow you to specify an optional audio file
|
||||
# that should be played in your browser window when there are
|
||||
# problems on the network. The audio files are used only in
|
||||
# the status CGI. Only the sound for the most critical problem
|
||||
# will be played. Order of importance (higher to lower) is as
|
||||
# follows: unreachable hosts, down hosts, critical services,
|
||||
# warning services, and unknown services. If there are no
|
||||
# visible problems, the sound file optionally specified by
|
||||
# 'normal_sound' variable will be played.
|
||||
#
|
||||
#
|
||||
# <varname>=<sound_file>
|
||||
#
|
||||
# Note: All audio files must be placed in the /media subdirectory
|
||||
# under the HTML path (i.e. /usr/local/nagios/share/media/).
|
||||
|
||||
#host_unreachable_sound=hostdown.wav
|
||||
#host_down_sound=hostdown.wav
|
||||
#service_critical_sound=critical.wav
|
||||
#service_warning_sound=warning.wav
|
||||
#service_unknown_sound=warning.wav
|
||||
#normal_sound=noproblem.wav
|
||||
base_url=/nagios-external
|
|
@ -1,5 +0,0 @@
|
|||
define contactgroup {
|
||||
contactgroup_name bodhi
|
||||
alias Bodhi Notifications
|
||||
members lmacken
|
||||
}
|
|
@ -1,5 +0,0 @@
|
|||
define contactgroup{
|
||||
contactgroup_name fedora-sysadmin-email
|
||||
alias Fedora Sysadmin Email Contacts
|
||||
members mmcgrath,ausil,admin,nigelj,ricky,jcollie,smooge,nb,rigeld2,codeblock,kevin,hvivani,puiterwijk
|
||||
}
|
|
@ -1,5 +0,0 @@
|
|||
define contactgroup{
|
||||
contactgroup_name fedora-sysadmin-ircbot
|
||||
alias Fedora Sysadmin irc Contacts
|
||||
members ircbot
|
||||
}
|
|
@ -1,10 +0,0 @@
|
|||
define contactgroup{
|
||||
contactgroup_name fedora-sysadmin-pager
|
||||
alias Fedora Sysadmin Pager Contacts
|
||||
members mmcgrathp,rickyp,smoogep,kevinp,puiterwijkp
|
||||
}
|
||||
define contactgroup{
|
||||
contactgroup_name fedora-sysadmin-emergency
|
||||
alias Fedora Sysadmin Pager Contacts
|
||||
members mmcgrath-emergency,ricky-emergency,smooge-emergency,kevin-emergency,puiterwijk-emergency
|
||||
}
|
|
@ -1,5 +0,0 @@
|
|||
define contactgroup{
|
||||
contactgroup_name null
|
||||
alias null
|
||||
members null
|
||||
}
|
|
@ -1,13 +0,0 @@
|
|||
define contact{
|
||||
contact_name admin
|
||||
alias Fedora Sysadmins
|
||||
service_notification_period 24x7
|
||||
host_notification_period 24x7
|
||||
service_notification_options w,u,c,r
|
||||
host_notification_options d,u,r
|
||||
service_notification_commands notify-by-email
|
||||
host_notification_commands host-notify-by-email
|
||||
email sysadmin-members@fedoraproject.org
|
||||
}
|
||||
|
||||
|
|
@ -1,16 +0,0 @@
|
|||
define contact{
|
||||
contact_name ausil
|
||||
alias Dennis Gilmore
|
||||
service_notification_period 24x7
|
||||
host_notification_period 24x7
|
||||
service_notification_options w,u,c,r
|
||||
host_notification_options d,u,r
|
||||
service_notification_commands notify-by-email
|
||||
host_notification_commands host-notify-by-email
|
||||
#service_notification_commands notify-by-epager
|
||||
#host_notification_commands host-notify-by-epager
|
||||
email ausil@fedoraproject.org
|
||||
#pager 3098682442@tmomail.net
|
||||
#email 3098682442@tmomail.net
|
||||
}
|
||||
|
|
@ -1,11 +0,0 @@
|
|||
define contact{
|
||||
contact_name codeblock
|
||||
alias Ricky Elrod
|
||||
service_notification_period never
|
||||
host_notification_period never
|
||||
service_notification_options w,u,c,r
|
||||
host_notification_options d,u,r
|
||||
service_notification_commands notify-by-email
|
||||
host_notification_commands host-notify-by-email
|
||||
email codeblock@elrod.me
|
||||
}
|
|
@ -1,12 +0,0 @@
|
|||
define contact{
|
||||
contact_name hvivani
|
||||
alias Hernan Vivani
|
||||
service_notification_period never
|
||||
host_notification_period never
|
||||
service_notification_options w,u,c,r
|
||||
host_notification_options d,u,r
|
||||
service_notification_commands notify-by-email
|
||||
host_notification_commands host-notify-by-email
|
||||
email hernan@vivani.com.ar
|
||||
}
|
||||
|
|
@ -1,10 +0,0 @@
|
|||
define contact{
|
||||
contact_name ircbot
|
||||
alias ZOD
|
||||
service_notification_period 24x7
|
||||
host_notification_period 24x7
|
||||
service_notification_options w,u,c,r
|
||||
host_notification_options d,u,r
|
||||
service_notification_commands notify-by-ircbot
|
||||
host_notification_commands host-notify-by-ircbot
|
||||
}
|
|
@ -1,11 +0,0 @@
|
|||
define contact{
|
||||
contact_name jcollie
|
||||
alias Jeffrey Ollie
|
||||
service_notification_period 24x7
|
||||
host_notification_period 24x7
|
||||
service_notification_options w,u,c,r
|
||||
host_notification_options d,u,r
|
||||
service_notification_commands notify-by-email
|
||||
host_notification_commands host-notify-by-email
|
||||
email jeff@ocjtech.us
|
||||
}
|
|
@ -1,11 +0,0 @@
|
|||
#define contact{
|
||||
# contact_name jmtaylor
|
||||
# alias Jason Taylor
|
||||
# service_notification_period 24x7
|
||||
# host_notification_period 24x7
|
||||
# service_notification_options w,u,c,r
|
||||
# host_notification_options d,u,r
|
||||
# service_notification_commands notify-by-email
|
||||
# host_notification_commands host-notify-by-email
|
||||
# email jmtaylor90@gmail.com
|
||||
#}
|
|
@ -1,37 +0,0 @@
|
|||
define contact{
|
||||
contact_name jstanley
|
||||
alias Jon Stanley
|
||||
service_notification_period 24x7
|
||||
host_notification_period 24x7
|
||||
service_notification_options w,u,c,r
|
||||
host_notification_options d,u,r
|
||||
service_notification_commands notify-by-email
|
||||
host_notification_commands host-notify-by-email
|
||||
email jonstanley@gmail.com
|
||||
}
|
||||
|
||||
define contact{
|
||||
contact_name jstanley-emergency
|
||||
alias Jon Stanley
|
||||
service_notification_period 24x7
|
||||
host_notification_period 24x7
|
||||
service_notification_options w,u,c,r
|
||||
host_notification_options d,u,r
|
||||
service_notification_commands notify-by-epager
|
||||
host_notification_commands host-notify-by-epager
|
||||
email 9178159801@vtext.com
|
||||
pager 9178159801@vtext.com
|
||||
}
|
||||
|
||||
define contact{
|
||||
contact_name jstanleyp
|
||||
alias Jon Stanley
|
||||
service_notification_period 16x7
|
||||
host_notification_period 16x7
|
||||
service_notification_options w,u,c,r
|
||||
host_notification_options d,u,r
|
||||
service_notification_commands notify-by-epager
|
||||
host_notification_commands host-notify-by-epager
|
||||
email 9178159801@vtext.com
|
||||
pager 9178159801@vtext.com
|
||||
}
|
|
@ -1,35 +0,0 @@
|
|||
define contact{
|
||||
contact_name kevin
|
||||
alias Kevin Fenzi
|
||||
service_notification_period 24x7
|
||||
host_notification_period 24x7
|
||||
service_notification_options w,u,c,r
|
||||
host_notification_options d,u,r
|
||||
service_notification_commands notify-by-email
|
||||
host_notification_commands host-notify-by-email
|
||||
email kevin-pager@scrye.com
|
||||
}
|
||||
|
||||
define contact{
|
||||
contact_name kevin-emergency
|
||||
alias Kevin Fenzi
|
||||
service_notification_period 24x7
|
||||
host_notification_period 24x7
|
||||
service_notification_options w,u,c,r
|
||||
host_notification_options d,u,r
|
||||
service_notification_commands notify-by-epager
|
||||
host_notification_commands host-notify-by-epager
|
||||
pager kevin-urgent@scrye.com
|
||||
}
|
||||
|
||||
define contact{
|
||||
contact_name kevinp
|
||||
alias Kevin Fenzi
|
||||
service_notification_period 16x7
|
||||
host_notification_period 16x7
|
||||
service_notification_options w,u,c,r
|
||||
host_notification_options d,u,r
|
||||
service_notification_commands notify-by-epager
|
||||
host_notification_commands host-notify-by-epager
|
||||
pager kevin-urgent@scrye.com
|
||||
}
|
|
@ -1,11 +0,0 @@
|
|||
define contact{
|
||||
contact_name lmacken
|
||||
alias Luke Macken
|
||||
service_notification_period 24x7
|
||||
host_notification_period 24x7
|
||||
service_notification_options w,u,c,r
|
||||
host_notification_options d,u,r
|
||||
service_notification_commands notify-by-email
|
||||
host_notification_commands host-notify-by-email
|
||||
email lewk@vtext.com
|
||||
}
|
|
@ -1,38 +0,0 @@
|
|||
define contact{
|
||||
contact_name mmcgrath
|
||||
alias Mike McGrath
|
||||
service_notification_period 24x7
|
||||
host_notification_period 24x7
|
||||
service_notification_options w,u,c,r
|
||||
host_notification_options d,u,r
|
||||
service_notification_commands notify-by-email
|
||||
host_notification_commands host-notify-by-email
|
||||
email mmcgrath@redhat.com
|
||||
}
|
||||
|
||||
define contact{
|
||||
contact_name mmcgrath-emergency
|
||||
alias Mike McGrath
|
||||
service_notification_period 24x7
|
||||
host_notification_period 24x7
|
||||
service_notification_options w,u,c,r
|
||||
host_notification_options d,u,r
|
||||
service_notification_commands notify-by-epager
|
||||
host_notification_commands host-notify-by-epager
|
||||
email imlinux+mobile@gmail.com
|
||||
pager imlinux+mobile@gmail.com
|
||||
}
|
||||
|
||||
define contact{
|
||||
contact_name mmcgrathp
|
||||
alias Mike McGrath
|
||||
service_notification_period 16x7
|
||||
host_notification_period 16x7
|
||||
service_notification_options w,u,c,r
|
||||
host_notification_options d,u,r
|
||||
service_notification_commands notify-by-epager
|
||||
host_notification_commands host-notify-by-epager
|
||||
email imlinux+mobile@gmail.com
|
||||
pager imlinux+mobile@gmail.com
|
||||
}
|
||||
|
|
@ -1,38 +0,0 @@
|
|||
define contact{
|
||||
contact_name nb
|
||||
alias Nick Bebout
|
||||
service_notification_period never
|
||||
host_notification_period never
|
||||
service_notification_options w,u,c,r
|
||||
host_notification_options d,u,r
|
||||
service_notification_commands notify-by-email
|
||||
host_notification_commands host-notify-by-email
|
||||
email nick@bebout.net
|
||||
}
|
||||
|
||||
#define contact{
|
||||
# contact_name nb-emergency
|
||||
# alias Nick Bebout
|
||||
# service_notification_period never
|
||||
# host_notification_period never
|
||||
# service_notification_options w,u,c,r
|
||||
# host_notification_options d,u,r
|
||||
# service_notification_commands notify-by-epager
|
||||
# host_notification_commands host-notify-by-epager
|
||||
# email nb5@txt.att.net
|
||||
# pager nb5@txt.att.net
|
||||
#}
|
||||
|
||||
#define contact{
|
||||
# contact_name nbp
|
||||
# alias Nick Bebout
|
||||
# service_notification_period never
|
||||
# host_notification_period never
|
||||
# service_notification_options w,u,c,r
|
||||
# host_notification_options d,u,r
|
||||
# service_notification_commands notify-by-epager
|
||||
# host_notification_commands host-notify-by-epager
|
||||
# email nb5@txt.att.net
|
||||
# pager nb5@txt.att.net
|
||||
#}
|
||||
|
|
@ -1,11 +0,0 @@
|
|||
define contact{
|
||||
contact_name nigelj
|
||||
alias Nigel Jones
|
||||
service_notification_period never
|
||||
host_notification_period never
|
||||
service_notification_options w,u,c,r
|
||||
host_notification_options d,u,r
|
||||
service_notification_commands notify-by-email
|
||||
host_notification_commands host-notify-by-email
|
||||
email dev@nigelj.com
|
||||
}
|
|
@ -1,11 +0,0 @@
|
|||
define contact{
|
||||
contact_name null
|
||||
alias null
|
||||
service_notification_period 24x7
|
||||
host_notification_period 24x7
|
||||
service_notification_options w,u,c,r
|
||||
host_notification_options d,u,r
|
||||
service_notification_commands notify-by-email
|
||||
host_notification_commands host-notify-by-email
|
||||
email nobody@fedoraproject.org
|
||||
}
|
|
@ -1,35 +0,0 @@
|
|||
define contact{
|
||||
contact_name puiterwijk
|
||||
alias Patrick Uiterwijk
|
||||
service_notification_period 24x7
|
||||
host_notification_period 24x7
|
||||
service_notification_options w,u,c,r
|
||||
host_notification_options d,u,r
|
||||
service_notification_commands notify-by-epager
|
||||
host_notification_commands host-notify-by-epager
|
||||
pager pager@puiterwijk.org
|
||||
}
|
||||
|
||||
define contact{
|
||||
contact_name puiterwijkp
|
||||
alias Patrick Uiterwijk
|
||||
service_notification_period 24x7
|
||||
host_notification_period 24x7
|
||||
service_notification_options w,u,c,r
|
||||
host_notification_options d,u,r
|
||||
service_notification_commands notify-by-epager
|
||||
host_notification_commands host-notify-by-epager
|
||||
pager pager@puiterwijk.org
|
||||
}
|
||||
|
||||
define contact{
|
||||
contact_name puiterwijk-emergency
|
||||
alias Patrick Uiterwijk
|
||||
service_notification_period 24x7
|
||||
host_notification_period 24x7
|
||||
service_notification_options w,u,c,r
|
||||
host_notification_options d,u,r
|
||||
service_notification_commands notify-by-epager
|
||||
host_notification_commands host-notify-by-epager
|
||||
pager emergency@puiterwijk.org
|
||||
}
|
|
@ -1,38 +0,0 @@
|
|||
define contact{
|
||||
contact_name ricky
|
||||
alias Ricky Zhou
|
||||
service_notification_period 24x7
|
||||
host_notification_period 24x7
|
||||
service_notification_options w,u,c,r
|
||||
host_notification_options d,u,r
|
||||
service_notification_commands notify-by-email
|
||||
host_notification_commands host-notify-by-email
|
||||
email ricky@rzhou.org
|
||||
}
|
||||
|
||||
define contact{
|
||||
contact_name ricky-emergency
|
||||
alias Ricky Zhou
|
||||
service_notification_period never
|
||||
host_notification_period never
|
||||
service_notification_options w,u,c,r
|
||||
host_notification_options d,u,r
|
||||
service_notification_commands notify-by-epager
|
||||
host_notification_commands host-notify-by-epager
|
||||
email 2014030692@vtext.com
|
||||
pager 2014030692@vtext.com
|
||||
}
|
||||
|
||||
define contact{
|
||||
contact_name rickyp
|
||||
alias Ricky Zhou
|
||||
service_notification_period never
|
||||
host_notification_period never
|
||||
service_notification_options w,u,c,r
|
||||
host_notification_options d,u,r
|
||||
service_notification_commands notify-by-epager
|
||||
host_notification_commands host-notify-by-epager
|
||||
email 2014030692@vtext.com
|
||||
pager 2014030692@vtext.com
|
||||
}
|
||||
|
|
@ -1,11 +0,0 @@
|
|||
define contact{
|
||||
contact_name rigeld2
|
||||
alias Rob Marti
|
||||
service_notification_period 24x7
|
||||
host_notification_period 24x7
|
||||
service_notification_options w,u,c,r
|
||||
host_notification_options d,u,r
|
||||
service_notification_commands notify-by-email
|
||||
host_notification_commands host-notify-by-email
|
||||
email robmartiwork@gmail.com
|
||||
}
|
|
@ -1,48 +0,0 @@
|
|||
#define contact{
|
||||
# contact_name skvidal
|
||||
# alias Seth Vidal
|
||||
# service_notification_period 24x7
|
||||
# host_notification_period 24x7
|
||||
# service_notification_options w,u,c,r
|
||||
# host_notification_options d,u,r
|
||||
# service_notification_commands notify-by-email
|
||||
# host_notification_commands host-notify-by-email
|
||||
# email seth-alert@sethdot.org
|
||||
#}
|
||||
#
|
||||
#define contact{
|
||||
# contact_name skvidal_xmpp
|
||||
# alias Seth Vidal
|
||||
# service_notification_period 24x7
|
||||
# host_notification_period 24x7
|
||||
# service_notification_options w,u,c,r
|
||||
# host_notification_options d,u,r
|
||||
# service_notification_commands notify-by-xmpp
|
||||
# host_notification_commands host-notify-by-xmpp
|
||||
# email skvidal@jabber.org
|
||||
#}
|
||||
#
|
||||
#define contact{
|
||||
# contact_name skvidal-emergency
|
||||
# alias Seth Vidal
|
||||
# service_notification_period 24x7
|
||||
# host_notification_period 24x7
|
||||
# service_notification_options w,u,c,r
|
||||
# host_notification_options d,u,r
|
||||
# service_notification_commands notify-by-epager
|
||||
# host_notification_commands host-notify-by-epager
|
||||
# email page-seth-vidal@sethdot.org
|
||||
#}
|
||||
#
|
||||
#define contact{
|
||||
# contact_name skvidalp
|
||||
# alias Seth Vidal
|
||||
# service_notification_period 16x7
|
||||
# host_notification_period 16x7
|
||||
# service_notification_options w,u,c,r
|
||||
# host_notification_options d,u,r
|
||||
# service_notification_commands notify-by-epager
|
||||
# host_notification_commands host-notify-by-epager
|
||||
# email page-seth-vidal@sethdot.org
|
||||
# pager page-seth-vidal@sethdot.org
|
||||
#}
|
|
@ -1,38 +0,0 @@
|
|||
define contact{
|
||||
contact_name smooge
|
||||
alias Stephen Smoogen
|
||||
service_notification_period 24x7
|
||||
host_notification_period 24x7
|
||||
service_notification_options w,u,c,r
|
||||
host_notification_options d,u,r
|
||||
service_notification_commands notify-by-email
|
||||
host_notification_commands host-notify-by-email
|
||||
email smooge+notify@gmail.com
|
||||
}
|
||||
|
||||
define contact{
|
||||
contact_name smooge-emergency
|
||||
alias Stephen Smoogen
|
||||
service_notification_period 24x7
|
||||
host_notification_period 24x7
|
||||
service_notification_options w,u,c,r
|
||||
host_notification_options d,u,r
|
||||
service_notification_commands notify-by-epager
|
||||
host_notification_commands host-notify-by-epager
|
||||
email smooge+mobile@gmail.com
|
||||
pager smooge+mobile@gmail.com
|
||||
}
|
||||
|
||||
define contact{
|
||||
contact_name smoogep
|
||||
alias Stephen Smoogen
|
||||
service_notification_period 16x7
|
||||
host_notification_period 16x7
|
||||
service_notification_options w,u,c,r
|
||||
host_notification_options d,u,r
|
||||
service_notification_commands notify-by-epager
|
||||
host_notification_commands host-notify-by-epager
|
||||
email smooge+mobile@gmail.com
|
||||
pager smooge+mobile@gmail.com
|
||||
}
|
||||
|
|
@ -1,22 +0,0 @@
|
|||
define hostescalation{
|
||||
host_name *
|
||||
hostgroup_name *
|
||||
contact_groups fedora-sysadmin-email,fedora-sysadmin-emergency,fedora-sysadmin-ircbot
|
||||
first_notification 2
|
||||
last_notification 0
|
||||
notification_interval 60
|
||||
escalation_period 24x7
|
||||
escalation_options d,u,r
|
||||
}
|
||||
|
||||
|
||||
define serviceescalation{
|
||||
host_name *
|
||||
description *
|
||||
contact_groups fedora-sysadmin-email,fedora-sysadmin-emergency,fedora-sysadmin-ircbot
|
||||
first_notification 2
|
||||
last_notification 0
|
||||
notification_interval 60
|
||||
escalation_period 24x7
|
||||
escalation_options w,u,c,r
|
||||
}
|
|
@ -1,9 +0,0 @@
|
|||
###############
|
||||
# All Servers and associated devices
|
||||
###############
|
||||
|
||||
define hostgroup {
|
||||
hostgroup_name all
|
||||
alias All hosts / Devices
|
||||
members *
|
||||
}
|
|
@ -1,9 +0,0 @@
|
|||
###############
|
||||
# DNS Servers
|
||||
###############
|
||||
|
||||
define hostgroup {
|
||||
hostgroup_name dnsservers
|
||||
alias DNS Servers
|
||||
members ns02, ns04, ns05
|
||||
}
|
|
@ -1,329 +0,0 @@
|
|||
#
|
||||
# phx2
|
||||
#
|
||||
define host {
|
||||
host_name 209.132.181.16-phx2
|
||||
alias 209.132.181.16-phx2
|
||||
use defaulttemplate
|
||||
address 209.132.181.16
|
||||
parents proxy01.fedoraproject.org
|
||||
}
|
||||
|
||||
define host {
|
||||
host_name proxy01.fedoraproject.org
|
||||
alias proxy01.fedoraproject.org
|
||||
use defaulttemplate
|
||||
address 209.132.181.16
|
||||
}
|
||||
|
||||
define host {
|
||||
host_name 209.132.181.15-phx2
|
||||
alias 209.132.181.15-phx2
|
||||
use defaulttemplate
|
||||
address 209.132.181.15
|
||||
parents proxy10.fedoraproject.org
|
||||
}
|
||||
|
||||
define host {
|
||||
host_name proxy10.fedoraproject.org
|
||||
alias proxy10.fedoraproject.org
|
||||
use defaulttemplate
|
||||
address 209.132.181.15
|
||||
}
|
||||
|
||||
#
|
||||
# rdu2
|
||||
#
|
||||
define host {
|
||||
host_name 8.43.85.67-rdu2
|
||||
alias 8.43.85.67-rdu2
|
||||
use defaulttemplate
|
||||
address 8.43.85.67
|
||||
parents proxy14.fedoraproject.org
|
||||
}
|
||||
|
||||
define host {
|
||||
host_name proxy14.fedoraproject.org
|
||||
alias proxy14.fedoraproject.org
|
||||
use defaulttemplate
|
||||
address 8.43.85.67
|
||||
}
|
||||
|
||||
#
|
||||
# tummy
|
||||
#
|
||||
|
||||
#define host {
|
||||
# host_name 66.35.62.166-tummy
|
||||
# alias 66.35.62.166-tummy
|
||||
# use defaulttemplate
|
||||
# address 66.35.62.166
|
||||
# parents proxy03.fedoraproject.org
|
||||
#}
|
||||
|
||||
define host {
|
||||
host_name proxy03.fedoraproject.org
|
||||
alias proxy03.fedoraproject.org
|
||||
use defaulttemplate
|
||||
address 66.35.62.162
|
||||
parents tummy01.fedoraproject.org
|
||||
}
|
||||
|
||||
define host {
|
||||
host_name tummy01.fedoraproject.org
|
||||
alias tummy01.fedoraproject.org
|
||||
use defaulttemplate
|
||||
address 66.35.62.161
|
||||
}
|
||||
|
||||
#
|
||||
# ibiblio
|
||||
#
|
||||
|
||||
#define host {
|
||||
# host_name 152.19.134.142-ibiblio
|
||||
# alias 152.19.134.142-ibiblio
|
||||
# use defaulttemplate
|
||||
# address 152.19.134.142
|
||||
# parents proxy04.fedoraproject.org
|
||||
#}
|
||||
|
||||
define host {
|
||||
host_name proxy04.fedoraproject.org
|
||||
alias proxy04.fedoraproject.org
|
||||
use defaulttemplate
|
||||
address 152.19.134.142
|
||||
parents ibiblio02.fedoraproject.org
|
||||
}
|
||||
|
||||
define host {
|
||||
host_name proxy12.fedoraproject.org
|
||||
alias proxy12.fedoraproject.org
|
||||
use defaulttemplate
|
||||
address 152.19.134.198
|
||||
parents ibiblio05.fedoraproject.org
|
||||
}
|
||||
|
||||
define host {
|
||||
host_name ibiblio02.fedoraproject.org
|
||||
alias ibiblio02.fedoraproject.org
|
||||
use defaulttemplate
|
||||
address 152.19.134.169
|
||||
}
|
||||
|
||||
#define host {
|
||||
# host_name ibiblio05.fedoraproject.org
|
||||
# alias ibiblio05.fedoraproject.org
|
||||
# use defaulttemplate
|
||||
# address 152.19.134.137
|
||||
#}
|
||||
|
||||
#
|
||||
# ibiblio ipv6
|
||||
#
|
||||
|
||||
define host {
|
||||
host_name admin-ipv6-ibiblio
|
||||
alias 2610:28:3090:3001:dead:beef:cafe:fed3-ibiblio
|
||||
use defaulttemplate
|
||||
address 2610:28:3090:3001:dead:beef:cafe:fed3
|
||||
parents proxy04-ipv6-ibiblio.fedoraproject.org
|
||||
}
|
||||
|
||||
define host {
|
||||
host_name proxy04-ipv6-ibiblio.fedoraproject.org
|
||||
alias proxy04-ipv6-ibiblio.fedoraproject.org
|
||||
use defaulttemplate
|
||||
address 2610:28:3090:3001:dead:beef:cafe:fed3
|
||||
}
|
||||
|
||||
|
||||
#
|
||||
# internetx
|
||||
#
|
||||
|
||||
define host {
|
||||
host_name 85.236.55.6-internetx
|
||||
alias 85.236.55.6-internetx
|
||||
use defaulttemplate
|
||||
address 85.236.55.6
|
||||
parents proxy02.fedoraproject.org
|
||||
}
|
||||
|
||||
define host {
|
||||
host_name proxy02.fedoraproject.org
|
||||
alias proxy02.fedoraproject.org
|
||||
use defaulttemplate
|
||||
address 85.236.55.6
|
||||
parents internetx01.fedoraproject.org
|
||||
}
|
||||
|
||||
define host {
|
||||
host_name internetx01.fedoraproject.org
|
||||
alias internetx01.fedoraproject.org
|
||||
use defaulttemplate
|
||||
address 85.236.55.4
|
||||
}
|
||||
|
||||
#
|
||||
# internetx ipv6
|
||||
#
|
||||
|
||||
define host {
|
||||
host_name admin-ipv6-internetx
|
||||
alias admin-ipv6-internetx
|
||||
use defaulttemplate
|
||||
address 2001:4178:2:1269::fed2
|
||||
parents proxy02-ipv6-internetx.fedoraproject.org
|
||||
}
|
||||
|
||||
define host {
|
||||
host_name proxy02-ipv6-internetx.fedoraproject.org
|
||||
alias proxy02-ipv6-internetx.fedoraproject.org
|
||||
use defaulttemplate
|
||||
address 2001:4178:2:1269::fed2
|
||||
parents internetx01-ipv6.fedoraproject.org
|
||||
}
|
||||
|
||||
define host {
|
||||
host_name internetx01-ipv6.fedoraproject.org
|
||||
alias internetx01-ipv6.fedoraproject.org
|
||||
use defaulttemplate
|
||||
address 2001:4178:2:1269::10
|
||||
}
|
||||
|
||||
#
|
||||
# osuosl
|
||||
#
|
||||
|
||||
# define host {
|
||||
# host_name 140.211.169.197-osuosl
|
||||
# alias 140.211.169.197-osuosl
|
||||
# use defaulttemplate
|
||||
# address 140.211.169.197
|
||||
# parents proxy06.fedoraproject.org
|
||||
# }
|
||||
|
||||
define host {
|
||||
host_name proxy06.fedoraproject.org
|
||||
alias proxy06.fedoraproject.org
|
||||
use defaulttemplate
|
||||
address 140.211.169.196
|
||||
parents osuosl01.fedoraproject.org
|
||||
}
|
||||
|
||||
define host {
|
||||
host_name proxy09.fedoraproject.org
|
||||
alias proxy09.fedoraproject.org
|
||||
use defaulttemplate
|
||||
address 140.211.169.206
|
||||
parents osuosl02.fedoraproject.org
|
||||
}
|
||||
|
||||
define host {
|
||||
host_name osuosl01.fedoraproject.org
|
||||
alias osuosl01.fedoraproject.org
|
||||
use defaulttemplate
|
||||
address 140.211.169.194
|
||||
}
|
||||
|
||||
define host {
|
||||
host_name osuosl02.fedoraproject.org
|
||||
alias osuosl02.fedoraproject.org
|
||||
use defaulttemplate
|
||||
address 140.211.169.195
|
||||
}
|
||||
|
||||
#
|
||||
# bodhost
|
||||
#
|
||||
|
||||
#define host {
|
||||
# host_name 213.175.193.206-bodhost
|
||||
# alias 213.175.193.206-bodhost
|
||||
# use defaulttemplate
|
||||
# address 213.175.193.206
|
||||
# parents proxy07.fedoraproject.org
|
||||
#}
|
||||
#
|
||||
#define host {
|
||||
# host_name proxy07.fedoraproject.org
|
||||
# alias proxy07.fedoraproject.org
|
||||
# use defaulttemplate
|
||||
# address 213.175.193.206
|
||||
# parents bodhost01.fedoraproject.org
|
||||
#}
|
||||
#
|
||||
#define host {
|
||||
# host_name bodhost01.fedoraproject.org
|
||||
# alias bodhost01.fedoraproject.org
|
||||
# use defaulttemplate
|
||||
# address 94.76.206.175
|
||||
#}
|
||||
|
||||
#
|
||||
# coloamer
|
||||
#
|
||||
|
||||
define host {
|
||||
host_name 67.203.2.67-coloamer
|
||||
alias 67.203.2.67-coloamer
|
||||
use defaulttemplate
|
||||
address 67.203.2.67
|
||||
parents proxy08.fedoraproject.org
|
||||
}
|
||||
|
||||
define host {
|
||||
host_name proxy08.fedoraproject.org
|
||||
alias proxy08.fedoraproject.org
|
||||
use defaulttemplate
|
||||
address 67.203.2.67
|
||||
parents coloamer01.fedoraproject.org
|
||||
}
|
||||
|
||||
define host {
|
||||
host_name coloamer01.fedoraproject.org
|
||||
alias coloamer01.fedoraproject.org
|
||||
use defaulttemplate
|
||||
address 67.203.2.66
|
||||
}
|
||||
|
||||
#
|
||||
# coloamer ipv6
|
||||
#
|
||||
|
||||
define host {
|
||||
host_name admin-ipv6-coloamer
|
||||
alias admin-ipv6-coloamer
|
||||
use defaulttemplate
|
||||
address 2607:f188::dead:beef:cafe:fed1
|
||||
parents proxy08-ipv6.fedoraproject.org
|
||||
}
|
||||
|
||||
define host {
|
||||
host_name proxy08-ipv6.fedoraproject.org
|
||||
alias proxy08-ipv6.fedoraproject.org
|
||||
use defaulttemplate
|
||||
address 2607:f188::dead:beef:cafe:fed1
|
||||
}
|
||||
|
||||
#
|
||||
# dedicated ipv6
|
||||
#
|
||||
|
||||
define host {
|
||||
host_name admin-ipv6-dedicated
|
||||
alias admin-ipv6-dedicated
|
||||
use defaulttemplate
|
||||
address 2604:1580:fe00:0:dead:beef:cafe:fed1
|
||||
parents proxy11-ipv6.fedoraproject.org
|
||||
}
|
||||
|
||||
define host {
|
||||
host_name proxy11-ipv6.fedoraproject.org
|
||||
alias proxy11-ipv6.fedoraproject.org
|
||||
use defaulttemplate
|
||||
address 2604:1580:fe00:0:dead:beef:cafe:fed1
|
||||
}
|
||||
|
||||
|
|
@ -1,21 +0,0 @@
|
|||
define host {
|
||||
host_name 152.19.134.199-people02
|
||||
alias 152.19.134.199-people02
|
||||
use defaulttemplate
|
||||
address 152.19.134.199
|
||||
parents ibiblio05.fedoraproject.org
|
||||
}
|
||||
|
||||
define host {
|
||||
host_name ibiblio05.fedoraproject.org
|
||||
alias ibiblio05.fedoraproject.org
|
||||
use defaulttemplate
|
||||
address 152.19.134.137
|
||||
}
|
||||
|
||||
define host {
|
||||
host_name ipv6-people02
|
||||
alias ipv6-people02
|
||||
use defaulttemplate
|
||||
address 2610:28:3090:3001:5054:ff:fea7:9474
|
||||
}
|
|
@ -1,87 +0,0 @@
|
|||
#define host {
|
||||
# host_name 85.236.55.5-internetx
|
||||
# alias 85.236.55.5-internetx
|
||||
# use defaulttemplate
|
||||
# address 85.236.55.5
|
||||
# parents proxy02.fedoraproject.org
|
||||
#}
|
||||
|
||||
define host {
|
||||
host_name fpo-ipv6-internetx
|
||||
alias fpo-ipv6-internetx
|
||||
use defaulttemplate
|
||||
address 2001:4178:2:1269::fed2
|
||||
parents proxy02-ipv6-internetx.fedoraproject.org
|
||||
}
|
||||
|
||||
define host {
|
||||
host_name 66.35.62.162-tummy
|
||||
alias 66.35.62.162-tummy
|
||||
use defaulttemplate
|
||||
address 66.35.62.162
|
||||
parents proxy03.fedoraproject.org
|
||||
}
|
||||
|
||||
define host {
|
||||
host_name 152.19.134.142-ibiblio
|
||||
alias 152.19.134.142-ibiblio
|
||||
use defaulttemplate
|
||||
address 152.19.134.142
|
||||
parents proxy04.fedoraproject.org
|
||||
}
|
||||
|
||||
define host {
|
||||
host_name 152.19.134.198-ibiblio
|
||||
alias 152.19.134.198-ibiblio
|
||||
use defaulttemplate
|
||||
address 152.19.134.198
|
||||
parents proxy12.fedoraproject.org
|
||||
}
|
||||
|
||||
# define host {
|
||||
# host_name fpo-ipv6-ibiblio
|
||||
# alias fpo-ipv6-ibiblio
|
||||
# use defaulttemplate
|
||||
# address 2610:28:3090:3001:dead:beef:cafe:fed4
|
||||
# parents proxy04-ipv6-ibiblio.fedoraproject.org
|
||||
# }
|
||||
|
||||
#define host {
|
||||
# host_name proxy06.fedorarproject.org
|
||||
# alias proxy06.fedorarproject.org
|
||||
# use defaulttemplate
|
||||
# address 140.211.169.197
|
||||
# parents proxy06.fedoraproject.org
|
||||
#}
|
||||
|
||||
#define host {
|
||||
# host_name 213.175.193.205-bodhost
|
||||
# alias 213.175.193.205-bodhost
|
||||
# use defaulttemplate
|
||||
# address 213.175.193.205
|
||||
# parents proxy07.fedoraproject.org
|
||||
#}
|
||||
|
||||
define host {
|
||||
host_name 67.203.2.67-coloamerica
|
||||
alias 67.203.2.67-coloamerica
|
||||
use defaulttemplate
|
||||
address 67.203.2.67
|
||||
parents proxy08.fedoraproject.org
|
||||
}
|
||||
|
||||
define host {
|
||||
host_name fpo-ipv6-coloamerica
|
||||
alias fpo-ipv6-coloamerica
|
||||
use defaulttemplate
|
||||
address 2607:f188::dead:beef:cafe:fed1
|
||||
parents proxy08-ipv6.fedoraproject.org
|
||||
}
|
||||
|
||||
define host {
|
||||
host_name fpo-ipv6-dedicatedsolutions
|
||||
alias fpo-ipv6-dedicatedsolutions
|
||||
use defaulttemplate
|
||||
address 2604:1580:fe00:0:dead:beef:cafe:fed1
|
||||
parents proxy11-ipv6.fedoraproject.org
|
||||
}
|
|
@ -1,7 +0,0 @@
|
|||
define host {
|
||||
host_name openvpn-phx
|
||||
alias openvpn-phx
|
||||
use defaulttemplate
|
||||
address 192.168.0.1
|
||||
}
|
||||
|
Some files were not shown because too many files have changed in this diff Show More
Loading…
Reference in New Issue