INSIGHT-MVP/repos/INSIGHT-Infra/ansible/roles/zabbix_agent/tasks/main.yml
Thomas Reitz 36196457ea feat(infra): vollständige Ansible-Struktur Phase 1
- Alle Ansible-Rollen erstellt: common, disk_setup, docker, postgresql,
  pgbouncer, redis, nginx, zabbix_agent
- ansible.cfg mit Pipeline-Optimierung
- hosts.yml mit echten IPs (DBS01=.20, APS01=.21, WEB01=.22)
- group_vars für alle Server (dbs, aps, web)
- Zabbix-Server auf sentinel.xinion.de gesetzt
- vault.yml.example als Vorlage für Secrets
- site.yml nutzt import_playbook (DBS01→APS01→WEB01)
- BRIEFING.md für alle 4 Repos angelegt (Platform, Apps, Infra, Shared)

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-03-15 15:23:29 +01:00

59 lines
1.5 KiB
YAML

---
# Role: zabbix_agent
# Installiert Zabbix Agent 2 und verbindet ihn mit sentinel.xinion.de
- name: "Zabbix Repository hinzufügen"
apt:
deb: "https://repo.zabbix.com/zabbix/6.4/ubuntu/pool/main/z/zabbix-release/zabbix-release_6.4-1+ubuntu{{ ansible_distribution_version }}_all.deb"
state: present
register: zabbix_repo_result
ignore_errors: true
- name: "Zabbix Repository (Fallback — via URL)"
get_url:
url: "https://repo.zabbix.com/zabbix/6.4/ubuntu/pool/main/z/zabbix-release/zabbix-release_6.4-1+ubuntu22.04_all.deb"
dest: /tmp/zabbix-release.deb
mode: '0644'
when: zabbix_repo_result is failed
- name: "Zabbix Repository installieren (Fallback)"
apt:
deb: /tmp/zabbix-release.deb
when: zabbix_repo_result is failed
- name: "Zabbix Agent 2 installieren"
apt:
name: zabbix-agent2
state: present
update_cache: true
- name: "Zabbix Agent 2 konfigurieren"
template:
src: zabbix_agent2.conf.j2
dest: /etc/zabbix/zabbix_agent2.conf
owner: root
group: zabbix
mode: '0640'
notify: restart zabbix-agent2
- name: "Zabbix Agent 2 Service aktivieren und starten"
service:
name: zabbix-agent2
state: started
enabled: true
- name: "UFW — Zabbix Agent Port erlauben (vom Zabbix Server)"
ufw:
rule: allow
src: "{{ zabbix_server }}"
port: "10050"
proto: tcp
- name: "Zabbix Agent Status prüfen"
command: zabbix_agent2 -V
register: zabbix_version
changed_when: false
- name: "Zabbix Agent Version ausgeben"
debug:
msg: "{{ zabbix_version.stdout_lines[0] }}"