使用Ansible进行Zabbix维护

时间:2017-03-09 08:16:04

标签: ansible zabbix

我想使用zabbix _maintenance module

但是我想将host_groups作为额外的var发送,这样我就可以将多个主机组放在维护中。

我遇到的问题是host_group需要一个项目列表,我无法理解如何编写角色,因此它会在额外var

我试过了:

- name: maintenance
   zabbix_maintenance:
    name: Pause
    host_groups:
      - "{{ item }}"
    with_items:
      - { 'zabbix_hosts_groups' }
    state: "{{ zabbix_state }}"
    server_url: http://zabbix.XXX.com
    login_user: YYY
    login_password: XXX
    minutes: 90
    desc: "Paused-for-dep"

并运行它:

 ansible-playbook -i 'localhost,' --connection=local zabbix-maintenance.yml -e '{"zabbix_hosts_groups":"Test1","Test2"}' -e 'zabbix_state=present

2 个答案:

答案 0 :(得分:0)

语法正确的任务定义是:

- name: maintenance
  zabbix_maintenance:
    name: Pause
    host_groups: "{{ zabbix_hosts_groups }}"
    state: "{{ zabbix_state }}"
    server_url: http://zabbix.XXX.com
    login_user: YYY
    login_password: XXX
    minutes: 90
    desc: "Paused-for-dep"

我不明白问题的描述。 “詹金斯” ??? “如何写角色”???请至少学习提出问题所需的词汇。

答案 1 :(得分:0)

我使用ansible模块zabbix_host。有一个属性 link_templates 。但它会删除之前链接到主机的所有组。 我还没有管理过这个。所以现在我用它来添加常用模板,然后在Zabbix GUI中手动链接所需的模板。

检查此回购,也许您会找到一些有用的:igogorevi4:Ansible