From 43b0f20a0d4514723d4b815db95875bdfda6a8e7 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?J=C3=B6rg=20Sachse?= <joerg.sachse@slub-dresden.de> Date: Fri, 9 Sep 2022 15:54:59 +0200 Subject: [PATCH] fix: deploy Oracle monitoring plugins correctly, cleanup old locations --- files/etc/check_mk/sqlnet.ora | 11 +++++ .../oracle/install_checkmk_plugins_oracle.yml | 45 ++++++++++++++++++- 2 files changed, 55 insertions(+), 1 deletion(-) create mode 100755 files/etc/check_mk/sqlnet.ora diff --git a/files/etc/check_mk/sqlnet.ora b/files/etc/check_mk/sqlnet.ora new file mode 100755 index 0000000..7c30d0b --- /dev/null +++ b/files/etc/check_mk/sqlnet.ora @@ -0,0 +1,11 @@ +LOG_DIRECTORY_CLIENT = /var/log/check_mk/oracle_client +DIAG_ADR_ENABLED = OFF + +SQLNET.WALLET_OVERRIDE = FALSE +WALLET_LOCATION = + (SOURCE= + (METHOD = FILE) + (METHOD_DATA = (DIRECTORY=/etc/check_mk/oracle_wallet)) + ) + + diff --git a/tasks/oracle/install_checkmk_plugins_oracle.yml b/tasks/oracle/install_checkmk_plugins_oracle.yml index 5327aca..92d60ca 100644 --- a/tasks/oracle/install_checkmk_plugins_oracle.yml +++ b/tasks/oracle/install_checkmk_plugins_oracle.yml @@ -1,4 +1,15 @@ --- +- name: delete legacy directory for self-developed Check_MK plugins (they were in the wrong location) + ansible.builtin.file: + path: "/usr/lib/check_mk_agent/nrpe" + state: absent + +- name: create directory for self-developed Check_MK plugins + ansible.builtin.file: + path: "/usr/lib/check_mk_agent/local/3600/" + state: directory + mode: "0755" + - name: install self-developed Check_MK plugins for Oracle ansible.builtin.copy: src: "usr/lib/check_mk_agent/local/3600/{{ item }}" @@ -9,8 +20,25 @@ loop: - "check_oracle_db_segment_size.sh" - "check_oracle_db_table_integrity.sh" + register: cmk_plugins + +- name: find cache files for local Check_MK checks + ansible.builtin.find: + path: "/var/lib/check_mk_agent/cache" + pattern: "local_*.cache" + register: cachefiles + +- name: > + delete cache files for local Check_MK checks, so when the new plugins run + for the first time, they produce fresh data + ansible.builtin.file: + path: "{{ item.path }}" + state: absent + loop: "{{ cachefiles.files }}" + when: cmk_plugins.changed # noqa no-handler -# get vendor plugins straight from monitoring server to make sure we get the latest version +# get vendor plugins straight from monitoring server to make sure we get the +# latest version - name: install vendor Check_MK plugins for Oracle ansible.builtin.get_url: url: "https://cmk.slub-dresden.de/slubmon/check_mk/agents/plugins/{{ item }}" @@ -20,3 +48,18 @@ mode: "0755" loop: - "mk_oracle" + +- name: configure vendor Check_MK plugin for Oracle + ansible.builtin.lineinfile: + path: "/etc/check_mk/mk_oracle.cfg" + line: "DBUSER={{ vault_oracle_user_nagios.name }}:{{ vault_oracle_user_nagios.pass }}" + owner: "root" + group: "root" + mode: "0640" + create: true + +- name: deploy sqlnet.ora + ansible.builtin.copy: + src: "etc/check_mk/sqlnet.ora" + dest: "/etc/check_mk/sqlnet.ora" + mode: "0644" -- GitLab