---
|
|
|
|
|
|
## Installation and configuration for Xymon server ##
|
|
|
|
# Binaries
|
|
|
|
- name: install xymon server binaries - download
|
|
get_url: url=http://sourceforge.net/projects/xymon/files/latest/download?source=directory dest=/tmp/xymon_server.tar.gz
|
|
tags:
|
|
- xymon-server
|
|
- server-packages
|
|
|
|
- name: install xymon server binaries - untar
|
|
unarchive: src=/tmp/xymon_server.tar.gz dest=/tmp/ copy=no
|
|
tags:
|
|
- xymon-server
|
|
- server-packages
|
|
|
|
- name: install xymon server binaries - register release
|
|
shell: ls -d /tmp/xymon-* | awk -F'-' '{print $2}'
|
|
register: xymon_release
|
|
tags:
|
|
- xymon-server
|
|
- server-packages
|
|
|
|
- name: install xymon server binaries - display release
|
|
fail: msg="Using xymon server version {{ xymon_release.stdout }}."
|
|
ignore_errors: yes
|
|
tags:
|
|
- xymon-server
|
|
- server-packages
|
|
|
|
- name: install xymon server binaries - display warning
|
|
fail: msg="Now building packages. WARN! It may take some time."
|
|
ignore_errors: yes
|
|
tags:
|
|
- xymon-server
|
|
- server-packages
|
|
|
|
## Debian
|
|
- name: Debian, install xymon server dependencies
|
|
apt: pkg={{item}} state=present update_cache=yes
|
|
tags:
|
|
- server-packages
|
|
- server-configuration
|
|
- xymon-server
|
|
with_items:
|
|
- apache2
|
|
- rrdtool
|
|
- librrd-dev
|
|
- libpcre3-dev
|
|
- libssl-dev
|
|
- ldap-utils
|
|
- libldap2-dev
|
|
- fping
|
|
- libc-ares-dev
|
|
- python-passlib
|
|
when: ansible_distribution == 'Debian'
|
|
|
|
- name: Debian, install xymon server binaries - make deb
|
|
shell: ./build/makedeb.sh {{ xymon_release.stdout }}
|
|
args:
|
|
executable: /bin/bash
|
|
chdir: /tmp/xymon-{{ xymon_release.stdout }}/
|
|
tags:
|
|
- xymon-server
|
|
- server-packages
|
|
when: ansible_distribution == 'Debian'
|
|
|
|
- name: Debian, install xymon server binaries - create pid directory
|
|
file:
|
|
path=/var/run/xymon
|
|
state=directory mode=0755
|
|
owner=xymon
|
|
group=xymon
|
|
tags:
|
|
- xymon-server
|
|
- server-packages
|
|
|
|
- name: Debian, install xymon server binaries - install deb server
|
|
apt: deb=/tmp/xymon-{{ xymon_release.stdout }}/debbuild/xymon_{{ xymon_release.stdout }}_amd64.deb
|
|
tags:
|
|
- xymon-server
|
|
- server-packages
|
|
when: ansible_distribution == 'Debian'
|
|
notify: restart apache
|
|
|
|
- name: Debian, install xymon server binaries - install deb client
|
|
apt: deb=/tmp/xymon-{{ xymon_release.stdout }}/debbuild/xymon-client_{{ xymon_release.stdout }}_amd64.deb
|
|
tags:
|
|
- xymon-server
|
|
- server-packages
|
|
when: ansible_distribution == 'Debian'
|
|
|
|
## Centos NOT READY YET
|
|
#- name: Centos, add xymon group
|
|
#group:
|
|
#name=xymon
|
|
#state=present
|
|
#tags:
|
|
#- xymon-server
|
|
#- server-packages
|
|
#when: ansible_distribution == 'CentOS' or ansible_distribution == 'CloudLinux'
|
|
|
|
#- name: Centos, add xymon user
|
|
#user:
|
|
#name=xymon
|
|
#group=xymon
|
|
#createhome=yes
|
|
#tags:
|
|
#- xymon-server
|
|
#- server-packages
|
|
#when: ansible_distribution == 'CentOS' or ansible_distribution == 'CloudLinux'
|
|
|
|
#- name: Centos, install xymon server dependencies
|
|
#yum: pkg={{item}} state=installed
|
|
#with_items:
|
|
#- gcc
|
|
#- make
|
|
#- fping
|
|
#- pcre-devel
|
|
#- openssl-devel
|
|
#- openldap-devel
|
|
#- rrdtool-devel
|
|
#tags:
|
|
#- xymon-server
|
|
#- server-packages
|
|
#when: ansible_distribution == 'CentOS' or ansible_distribution == 'CloudLinux'
|
|
|
|
#- name: Centos, install xymon server binaries - configure
|
|
#shell: ./configure --server
|
|
#args:
|
|
#executable: /bin/bash
|
|
#chdir: /tmp/xymon-{{ xymon_release.stdout }}/
|
|
#tags:
|
|
#- xymon-server
|
|
#- server-packages
|
|
#when: ansible_distribution == 'CentOS' or ansible_distribution == 'CloudLinux'
|
|
|
|
#- name: Centos, install xymon server binaries - make & make install
|
|
#shell: make && make install
|
|
#args:
|
|
#executable: /bin/bash
|
|
#chdir: /tmp/xymon-{{ xymon_release.stdout }}/
|
|
#tags:
|
|
#- xymon-server
|
|
#- server-packages
|
|
#when: ansible_distribution == 'CentOS' or ansible_distribution == 'CloudLinux'
|
|
|
|
#- name: Centos, install xymon server binaries - init file
|
|
#shell: mv /tmp/xymon-{{ xymon_release.stdout }}/rpm/xymon-init.d /etc/init.d/xymon
|
|
#args:
|
|
#executable: /bin/bash
|
|
#tags:
|
|
#- xymon-server
|
|
#- server-packages
|
|
#when: ansible_distribution == 'CentOS' or ansible_distribution == 'CloudLinux'
|
|
|
|
|
|
## Xymon server configuration
|
|
- name: enable global group Server in conf
|
|
lineinfile: dest=/etc/xymon/hosts.cfg
|
|
regexp="^#group Servers$"
|
|
line="group Servers"
|
|
backrefs=yes
|
|
tags:
|
|
- xymon-server
|
|
- server-configuration
|
|
|
|
## Apache for xymon server
|
|
- name: generate htpasswd file for xymon-server
|
|
htpasswd:
|
|
path="/usr/local/xymon/server/etc/xymonpasswd"
|
|
name={{xymon_htname}}
|
|
password={{xymon_htpasswd}}
|
|
create=yes
|
|
state=present
|
|
tags:
|
|
- xymon-server
|
|
- server-configuration
|
|
when: ansible_distribution == 'Debian'
|
|
|
|
- name: Apache configuration done
|
|
fail: msg="You can now connect to http://yourserver/xymon/"
|
|
ignore_errors: yes
|
|
tags:
|
|
- xymon-server
|
|
- server-configuration
|