From b77f5736b4c9fb30c31316b2c440dfa529d0b77e Mon Sep 17 00:00:00 2001 From: Michael Simacek Date: Thu, 2 Mar 2017 15:02:28 +0100 Subject: [PATCH] Koschei: split resolver into build-resolver and repo-resolver --- inventory/group_vars/koschei-backend | 6 ------ roles/fedmsg/base/templates/endpoints.py.j2 | 11 ++++++----- roles/koschei/backend/files/systemd-memory-limit.conf | 2 +- roles/koschei/backend/handlers/main.yml | 7 +++++-- roles/koschei/backend/tasks/main.yml | 8 ++++++-- .../check_koschei_build_resolver_proc.cfg.j2 | 1 + .../templates/check_koschei_repo_resolver_proc.cfg.j2 | 1 + .../templates/check_koschei_resolver_proc.cfg.j2 | 1 - roles/nagios/server/files/nagios/services/koschei.cfg | 11 +++++++++-- roles/nagios/server/files/nrpe.cfg | 3 ++- .../check_koschei_build_resolver_proc.cfg.j2 | 1 + .../templates/check_koschei_repo_resolver_proc.cfg.j2 | 1 + .../templates/check_koschei_resolver_proc.cfg.j2 | 1 - roles/nagios_server/files/nagios/services/koschei.cfg | 11 +++++++++-- roles/nagios_server/files/nrpe/nrpe.cfg | 3 ++- 15 files changed, 44 insertions(+), 24 deletions(-) create mode 100644 roles/nagios/client/templates/check_koschei_build_resolver_proc.cfg.j2 create mode 100644 roles/nagios/client/templates/check_koschei_repo_resolver_proc.cfg.j2 delete mode 100644 roles/nagios/client/templates/check_koschei_resolver_proc.cfg.j2 create mode 100644 roles/nagios_client/templates/check_koschei_build_resolver_proc.cfg.j2 create mode 100644 roles/nagios_client/templates/check_koschei_repo_resolver_proc.cfg.j2 delete mode 100644 roles/nagios_client/templates/check_koschei_resolver_proc.cfg.j2 diff --git a/inventory/group_vars/koschei-backend b/inventory/group_vars/koschei-backend index da25e18654..7b058f70c7 100644 --- a/inventory/group_vars/koschei-backend +++ b/inventory/group_vars/koschei-backend @@ -57,9 +57,3 @@ csi_relationship: | - pkgdb2 - bastion (for mail relay) - memcached01 - -koschei_backend_services: - - koschei-polling - - koschei-resolver - - koschei-scheduler - - koschei-watcher diff --git a/roles/fedmsg/base/templates/endpoints.py.j2 b/roles/fedmsg/base/templates/endpoints.py.j2 index 453c322fa5..abead5a416 100644 --- a/roles/fedmsg/base/templates/endpoints.py.j2 +++ b/roles/fedmsg/base/templates/endpoints.py.j2 @@ -47,14 +47,15 @@ config = dict( ], {% endif %} - # mizdebsk says he thinks we'll need four sockets. Two services - # (koschei-resolver and koschei-polling) are only sending messages, one - # service (koschei-watcher) can both send and receive them. The wsgi - # webapp doesn't use fedmsg at all and all services are single-threaded + # mizdebsk says he thinks we'll need five sockets. Three services + # (koschei-{build,repo}-resolver and koschei-polling) are only sending + # messages, one service (koschei-watcher) can both send and receive + # them. The wsgi webapp doesn't use fedmsg at all and all services are + # single-threaded # koschei-watcher uses two endpoints "koschei.koschei-backend01": [ "tcp://koschei-backend01.%s:30%02i" % (suffix, i) - for i in range(4) + for i in range(5) ], # koji is not listed here since it publishes to the fedmsg-relay diff --git a/roles/koschei/backend/files/systemd-memory-limit.conf b/roles/koschei/backend/files/systemd-memory-limit.conf index 49d11d08e4..7c1c5fb8d3 100644 --- a/roles/koschei/backend/files/systemd-memory-limit.conf +++ b/roles/koschei/backend/files/systemd-memory-limit.conf @@ -1,2 +1,2 @@ [Service] -MemoryLimit=3G +MemoryLimit=2G diff --git a/roles/koschei/backend/handlers/main.yml b/roles/koschei/backend/handlers/main.yml index 03037a7e04..86c038a77e 100644 --- a/roles/koschei/backend/handlers/main.yml +++ b/roles/koschei/backend/handlers/main.yml @@ -4,8 +4,11 @@ - name: restart koschei-polling action: service name=koschei-polling state=restarted -- name: restart koschei-resolver - action: service name=koschei-resolver state=restarted +- name: restart koschei-build-resolver + action: service name=koschei-build-resolver state=restarted + +- name: restart koschei-repo-resolver + action: service name=koschei-repo-resolver state=restarted - name: restart koschei-scheduler action: service name=koschei-scheduler state=restarted diff --git a/roles/koschei/backend/tasks/main.yml b/roles/koschei/backend/tasks/main.yml index 672bb36db0..59541335ee 100644 --- a/roles/koschei/backend/tasks/main.yml +++ b/roles/koschei/backend/tasks/main.yml @@ -24,10 +24,14 @@ - name: install systemd config files copy: > src=systemd-memory-limit.conf - dest=/etc/systemd/system/koschei-resolver.service.d/memory-limit.conf + dest=/etc/systemd/system/{{ item }}.service.d/memory-limit.conf + with_items: + - koschei-build-resolver + - koschei-repo-resolver notify: - reload systemd - - restart koschei-resolver + - restart koschei-build-resolver + - restart koschei-repo-resolver tags: - koschei - config diff --git a/roles/nagios/client/templates/check_koschei_build_resolver_proc.cfg.j2 b/roles/nagios/client/templates/check_koschei_build_resolver_proc.cfg.j2 new file mode 100644 index 0000000000..af4470ae5b --- /dev/null +++ b/roles/nagios/client/templates/check_koschei_build_resolver_proc.cfg.j2 @@ -0,0 +1 @@ +command[check_koschei_build_resolver_proc]={{ libdir }}/nagios/plugins/check_procs -s RSD -u koschei -C koschei-build-r -c 1:1 diff --git a/roles/nagios/client/templates/check_koschei_repo_resolver_proc.cfg.j2 b/roles/nagios/client/templates/check_koschei_repo_resolver_proc.cfg.j2 new file mode 100644 index 0000000000..6fec336f9b --- /dev/null +++ b/roles/nagios/client/templates/check_koschei_repo_resolver_proc.cfg.j2 @@ -0,0 +1 @@ +command[check_koschei_repo_resolver_proc]={{ libdir }}/nagios/plugins/check_procs -s RSD -u koschei -C koschei-repo-re -c 1:1 diff --git a/roles/nagios/client/templates/check_koschei_resolver_proc.cfg.j2 b/roles/nagios/client/templates/check_koschei_resolver_proc.cfg.j2 deleted file mode 100644 index ff4814291c..0000000000 --- a/roles/nagios/client/templates/check_koschei_resolver_proc.cfg.j2 +++ /dev/null @@ -1 +0,0 @@ -command[check_koschei_resolver_proc]={{ libdir }}/nagios/plugins/check_procs -s RSD -u koschei -C koschei-resolve -c 1:1 diff --git a/roles/nagios/server/files/nagios/services/koschei.cfg b/roles/nagios/server/files/nagios/services/koschei.cfg index e6acc4a28e..697b1c7ee5 100644 --- a/roles/nagios/server/files/nagios/services/koschei.cfg +++ b/roles/nagios/server/files/nagios/services/koschei.cfg @@ -7,8 +7,15 @@ define service { define service { host_name koschei-backend01 - service_description koschei-resolver process - check_command check_by_nrpe!check_koschei_resolver_proc + service_description koschei-build-resolver process + check_command check_by_nrpe!check_koschei_build_resolver_proc + use defaulttemplate +} + +define service { + host_name koschei-backend01 + service_description koschei-repo-resolver process + check_command check_by_nrpe!check_koschei_repo_resolver_proc use defaulttemplate } diff --git a/roles/nagios/server/files/nrpe.cfg b/roles/nagios/server/files/nrpe.cfg index 02060de6ad..957ad9e035 100644 --- a/roles/nagios/server/files/nrpe.cfg +++ b/roles/nagios/server/files/nrpe.cfg @@ -243,7 +243,8 @@ command[check_openvpn_link]=/usr/lib64/nagios/plugins/check_ping -H 192.168.1.41 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 command[check_koschei_polling_proc]=/usr/lib64/nagios/plugins/check_procs -s RSD -u koschei -C koschei-polling -c 1:1 -command[check_koschei_resolver_proc]=/usr/lib64/nagios/plugins/check_procs -s RSD -u koschei -C koschei-resolve -c 1:1 +command[check_koschei_build_resolver_proc]=/usr/lib64/nagios/plugins/check_procs -s RSD -u koschei -C koschei-build-r -c 1:1 +command[check_koschei_repo_resolver_proc]=/usr/lib64/nagios/plugins/check_procs -s RSD -u koschei -C koschei-repo-re -c 1:1 command[check_koschei_scheduler_proc]=/usr/lib64/nagios/plugins/check_procs -s RSD -u koschei -C koschei-schedul -c 1:1 command[check_koschei_watcher_proc]=/usr/lib64/nagios/plugins/check_procs -s RSD -u koschei -C koschei-watcher -c 1:1 diff --git a/roles/nagios_client/templates/check_koschei_build_resolver_proc.cfg.j2 b/roles/nagios_client/templates/check_koschei_build_resolver_proc.cfg.j2 new file mode 100644 index 0000000000..af4470ae5b --- /dev/null +++ b/roles/nagios_client/templates/check_koschei_build_resolver_proc.cfg.j2 @@ -0,0 +1 @@ +command[check_koschei_build_resolver_proc]={{ libdir }}/nagios/plugins/check_procs -s RSD -u koschei -C koschei-build-r -c 1:1 diff --git a/roles/nagios_client/templates/check_koschei_repo_resolver_proc.cfg.j2 b/roles/nagios_client/templates/check_koschei_repo_resolver_proc.cfg.j2 new file mode 100644 index 0000000000..6fec336f9b --- /dev/null +++ b/roles/nagios_client/templates/check_koschei_repo_resolver_proc.cfg.j2 @@ -0,0 +1 @@ +command[check_koschei_repo_resolver_proc]={{ libdir }}/nagios/plugins/check_procs -s RSD -u koschei -C koschei-repo-re -c 1:1 diff --git a/roles/nagios_client/templates/check_koschei_resolver_proc.cfg.j2 b/roles/nagios_client/templates/check_koschei_resolver_proc.cfg.j2 deleted file mode 100644 index ff4814291c..0000000000 --- a/roles/nagios_client/templates/check_koschei_resolver_proc.cfg.j2 +++ /dev/null @@ -1 +0,0 @@ -command[check_koschei_resolver_proc]={{ libdir }}/nagios/plugins/check_procs -s RSD -u koschei -C koschei-resolve -c 1:1 diff --git a/roles/nagios_server/files/nagios/services/koschei.cfg b/roles/nagios_server/files/nagios/services/koschei.cfg index 1754c60beb..fdc1e6e0ae 100644 --- a/roles/nagios_server/files/nagios/services/koschei.cfg +++ b/roles/nagios_server/files/nagios/services/koschei.cfg @@ -7,8 +7,15 @@ define service { define service { host_name koschei-backend01.phx2.fedoraproject.org - service_description koschei-resolver process - check_command check_by_nrpe!check_koschei_resolver_proc + service_description koschei-build-resolver process + check_command check_by_nrpe!check_koschei_build_resolver_proc + use defaulttemplate +} + +define service { + host_name koschei-backend01.phx2.fedoraproject.org + service_description koschei-repo-resolver process + check_command check_by_nrpe!check_koschei_repo_resolver_proc use defaulttemplate } diff --git a/roles/nagios_server/files/nrpe/nrpe.cfg b/roles/nagios_server/files/nrpe/nrpe.cfg index e7b6113955..1d79e1129a 100644 --- a/roles/nagios_server/files/nrpe/nrpe.cfg +++ b/roles/nagios_server/files/nrpe/nrpe.cfg @@ -338,7 +338,8 @@ command[check_openvpn_link]=/usr/lib64/nagios/plugins/check_ping -H 192.168.1.41 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 command[check_koschei_polling_proc]=/usr/lib64/nagios/plugins/check_procs -s RSD -u koschei -C koschei-polling -c 1:1 -command[check_koschei_resolver_proc]=/usr/lib64/nagios/plugins/check_procs -s RSD -u koschei -C koschei-resolve -c 1:1 +command[check_koschei_build_resolver_proc]=/usr/lib64/nagios/plugins/check_procs -s RSD -u koschei -C koschei-build-r -c 1:1 +command[check_koschei_repo_resolver_proc]=/usr/lib64/nagios/plugins/check_procs -s RSD -u koschei -C koschei-repo-re -c 1:1 command[check_koschei_scheduler_proc]=/usr/lib64/nagios/plugins/check_procs -s RSD -u koschei -C koschei-schedul -c 1:1 command[check_koschei_watcher_proc]=/usr/lib64/nagios/plugins/check_procs -s RSD -u koschei -C koschei-watcher -c 1:1