You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

100 lines
3.2 KiB

  1. ---
  2. ## Install and configure xymon client Debian ##
  3. ## Custom Facts
  4. - name: Set Facts Debian
  5. set_fact:
  6. xymon_cfg_path: "/usr/lib/hobbit/client/etc/clientlaunch.d"
  7. xymon_ext_path: "/usr/lib/hobbit/client/ext"
  8. xymon_binary: "/usr/lib/hobbit/client/bin/bb"
  9. client_name: "hobbit"
  10. client_name_cfg: "$HOBBITCLIENTHOME"
  11. client_name_logs: "$BBCLIENTLOGS"
  12. tags:
  13. - xymon-client
  14. - xymon-server
  15. - configuration
  16. when: ansible_distribution == 'Debian' or ansible_distribution == 'Ubuntu'
  17. # Binaries
  18. - name: install xymon client debian
  19. apt: pkg={{item}} state=present update_cache=yes
  20. tags:
  21. - client-packages
  22. - xymon-client
  23. with_items:
  24. - xymon-client
  25. - hobbit-plugins
  26. when: ansible_distribution == 'Debian'
  27. # Configuration
  28. - name: Configure Xymon ip on old Debian
  29. tags:
  30. - xymon-client
  31. - client-configuration
  32. lineinfile: name=/etc/default/hobbit-client regexp='^HOBBITSERVERS=' line='HOBBITSERVERS="{{xymon_server}}"'
  33. notify: restart hobbit-client
  34. when: ansible_distribution == 'Debian' and ansible_distribution_major_version|int < 8
  35. - name: Configure Xymon ip on debian >= 8
  36. tags:
  37. - xymon-client
  38. - client-configuration
  39. lineinfile: name=/etc/default/xymon-client regexp='^XYMONSERVERS=' line='XYMONSERVERS="{{xymon_server}}"'
  40. notify: restart xymon-client
  41. when: ansible_distribution == 'Debian' and ansible_distribution_major_version|int >= 8
  42. - name: Configure local Xymon name on old debian
  43. tags:
  44. - xymon-client
  45. - client-configuration
  46. lineinfile: name=/etc/default/hobbit-client regexp='^CLIENTHOSTNAME=' line='CLIENTHOSTNAME="{{ansible_fqdn}}"'
  47. notify: restart hobbit-client
  48. when: ansible_distribution == 'Debian' and ansible_distribution_major_version|int < 8
  49. - name: Configure local Xymon name on Debian >=8
  50. tags:
  51. - xymon-client
  52. - client-configuration
  53. lineinfile: name=/etc/default/xymon-client regexp='^CLIENTHOSTNAME=' line='CLIENTHOSTNAME="{{ansible_fqdn}}"'
  54. notify: restart xymon-client
  55. when: ansible_distribution == 'Debian' and ansible_distribution_major_version|int >= 8
  56. - name: Set xymon cron for APT
  57. tags:
  58. - xymon-client
  59. - client-configuration
  60. cron:
  61. name="check update for Xymon"
  62. minute="45"
  63. hour="*/4"
  64. job="apt-get update -qq > /var/lib/apt/update_output 2>&1 && [ ! -s /var/lib/apt/update_output ] && date -u > /var/lib/apt/update_success"
  65. cron_file="xymon-apt"
  66. state=present
  67. user=root
  68. when: ansible_distribution == 'Debian'
  69. - name: Disable sonde for client
  70. tags:
  71. - xymon-client
  72. - client-configuration
  73. lineinfile:
  74. name: /etc/xymon/clientlaunch.d/{{ item }}.cfg
  75. regexp: '#DISABLED'
  76. state: present
  77. line: 'DISABLED'
  78. backrefs: yes
  79. with_items: "{{ xymon_disabled_sondes }}"
  80. notify: restart xymon-client
  81. when: ansible_distribution == 'Debian' and xymon_disabled_sondes is defined
  82. - name: Drop disabled sonde on Xymon server
  83. tags:
  84. - xymon-client
  85. - client-configuration
  86. command: /usr/lib/xymon/server/bin/xymon 127.0.0.1 "drop ansible_fqdn {{ item }}"
  87. with_items: "{{ xymon_disabled_sondes }}"
  88. delegate_to: "{{ xymon_server }}"
  89. when: ansible_distribution == 'Debian' and xymon_disabled_sondes is defined