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.
 
 
 

189 lines
4.9 KiB

---
## 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