89 lines
2.1 KiB
YAML
89 lines
2.1 KiB
YAML
# sets up and starts Zabbix with default settings using a MySQL database.
|
|
|
|
- name: install zabbix repository key
|
|
apt_key:
|
|
url: "{{ zabbix_apt_repository_key }}"
|
|
state: present
|
|
|
|
- name: install zabbix repository
|
|
apt_repository:
|
|
repo: "{{ zabbix_apt_repository }}"
|
|
filename: zabbix
|
|
state: present
|
|
notify: remove zabbix repository
|
|
|
|
- name: check if dpkg is set to exclude specific destinations
|
|
stat:
|
|
path: /etc/dpkg/dpkg.cfg.d/excludes
|
|
register: dpkg_excludes
|
|
|
|
- name: ensure documentation installations are allowed for zabbix
|
|
lineinfile:
|
|
path: /etc/dpkg/dpkg.cfg.d/excludes
|
|
regexp: '^path-include=/usr/share/doc/zabbix*$'
|
|
line: 'path-include=/usr/share/doc/zabbix*'
|
|
state: present
|
|
when: dpkg_excludes.stat.exists
|
|
|
|
- name: install zabbix apt dependencies
|
|
apt:
|
|
name: "{{ zabbix_packages }}"
|
|
state: latest
|
|
update_cache: yes
|
|
notify: remove zabbix packages
|
|
|
|
- name: install zabbix-api python package
|
|
pip:
|
|
name: zabbix-api
|
|
state: latest
|
|
notify: remove zabbix pip packages
|
|
|
|
- name: create mysql user {{ db_user }}
|
|
mysql_user:
|
|
name: "{{ db_user }}"
|
|
password: "{{ db_password }}"
|
|
state: present
|
|
priv: "{{ db_name }}.*:ALL"
|
|
login_unix_socket: '{{ mysql_socket }}'
|
|
|
|
- name: import initial zabbix database
|
|
mysql_db:
|
|
name: "{{ db_name }}"
|
|
login_user: "{{ db_user }}"
|
|
login_password: "{{ db_password }}"
|
|
state: import
|
|
target: /usr/share/doc/zabbix-server-mysql/create.sql.gz
|
|
|
|
- name: deploy zabbix-server configuration
|
|
template:
|
|
src: zabbix_server.conf.j2
|
|
dest: /etc/zabbix/zabbix_server.conf
|
|
owner: root
|
|
group: zabbix
|
|
mode: 0640
|
|
|
|
- name: deploy zabbix web frontend configuration
|
|
template:
|
|
src: zabbix.conf.php.j2
|
|
dest: /etc/zabbix/web/zabbix.conf.php
|
|
mode: 0644
|
|
|
|
- name: Create proper run directory for zabbix-server
|
|
file:
|
|
path: /var/run/zabbix
|
|
state: directory
|
|
owner: zabbix
|
|
group: zabbix
|
|
mode: 0775
|
|
|
|
- name: restart zabbix-server
|
|
service:
|
|
name: zabbix-server
|
|
state: restarted
|
|
enabled: yes
|
|
|
|
- name: restart apache2
|
|
service:
|
|
name: apache2
|
|
state: restarted
|
|
enabled: yes
|