71 lines
1.8 KiB
YAML
71 lines
1.8 KiB
YAML
---
|
|
|
|
# find current zabbix version
|
|
- name: "check for old zabbix-release"
|
|
ansible.builtin.shell:
|
|
cmd: "zabbix_agent2 --version | head -n 1"
|
|
changed_when: false
|
|
failed_when: false
|
|
ignore_errors: true
|
|
register: "zabbix_current_version"
|
|
|
|
# install zabbix-agent2
|
|
- name: "install zabbix-agent2"
|
|
when: "zabbix_major_version not in zabbix_current_version.stdout"
|
|
block:
|
|
|
|
# install repository - debian
|
|
- name: "install repository"
|
|
when: 'ansible_os_family == "Debian"'
|
|
block:
|
|
|
|
# remove old agent
|
|
- name: "remove old agent"
|
|
ansible.builtin.apt:
|
|
name: "zabbix-agent*"
|
|
state: "absent"
|
|
|
|
# install agent
|
|
- name: "install agent"
|
|
ansible.builtin.apt:
|
|
name: "{{ item }}"
|
|
state: "present"
|
|
update_cache: true
|
|
when: 'ansible_os_family == "Debian"'
|
|
loop:
|
|
- "zabbix-agent2"
|
|
- "zabbix-agent2-plugin-*"
|
|
|
|
|
|
# install repository - suse
|
|
- name: "install repository"
|
|
when: 'ansible_os_family == "Suse"'
|
|
block:
|
|
|
|
# remove old agent
|
|
- name: "remove old agent"
|
|
ansible.builtin.zypper:
|
|
name: "zabbix-agent*"
|
|
state: "absent"
|
|
|
|
# install agent
|
|
- name: "install agent"
|
|
ansible.builtin.zypper:
|
|
name: "{{ item }}"
|
|
disable_recommends: false
|
|
state: "present"
|
|
when: 'ansible_os_family == "Suse"'
|
|
loop:
|
|
- "zabbix-agent2"
|
|
- "zabbix-agent2-plugin-*"
|
|
|
|
|
|
# install sudoers file
|
|
- name: "install sudoers file"
|
|
ansible.builtin.template:
|
|
src: "templates/sudoers.d/zabbix.j2"
|
|
dest: "/etc/sudoers.d/zabbix"
|
|
owner: "root"
|
|
group: "root"
|
|
mode: "0440"
|
|
when: "zabbix_sudo_user"
|