- name: Agent2 - Install packages ansible.builtin.apt: name: "{{ item }}" state: latest loop: "{{ agent.packages }}" tags: - install_agent - name: Agent2 - Find Group set_fact: my_group: "{{ group_names | first }}" - name: Agent2 - Créer la liste des hôtes correspondant aux rôles cibles set_fact: hotes_filtres: >- {{ groups[my_group] | map('extract', hostvars) | selectattr('role', 'in', roles_cibles) | map(attribute='inventory_hostname') | list }} - name: Agent2 - Generate Server List set_fact: Server: "{{ hotes_filtres | join(',') }}" - name: Agent2 - Generate ActiveServer List set_fact: ServerActive: "{{ hotes_filtres | join(';') }}" - name: Agent2 - Generate agent2 config ansible.builtin.template: src: zabbix_agent2.conf.j2 dest: /etc/zabbix/zabbix_agent2.conf owner: zabbix group: zabbix mode: 0640 - name: Agent2 - Create cert directory if zabbix_crypt=="tls" ansible.builtin.file: path: "/etc/zabbix/certs" state: directory recurse: yes owner: zabbix group: zabbix when: zabbix_crypt=="tls" - name: Agent2 - Copy Certificats ansible.builtin.copy: src: "{{ item }}" dest: "/etc/zabbix/certs/{{ item }}" owner: zabbix group: zabbix loop: - "{{ zabbix_ca }}.crt" - "{{ zabbix_agent }}.crt" - "{{ zabbix_agent }}.key" when: zabbix_crypt=="tls" - name: Enable and start service zabbix agent2 ansible.builtin.service: name: "{{ item }}" state: restarted enabled: true loop: - zabbix-agent2