torsdag den 20. oktober 2016

iRODS with Ansible

The story behind : My group ask me if I can do a Ansible install for iRODS.

But what is Ansible ? 
Ansible is an open source, powerful automation software for configuring, managing and deploying software applications on the nodes without any downtime just by using SSH. Today, most of the IT Automation tools runs as a agent in remote host, but ansible just need a SSH connection and Python (2.4 or later) to be installed on the remote nodes to perform it’s action.

Prerequisites
Operating System: RHEL/CentOS/Fedora and Ubuntu/Debian/Linux Mint
Jinja2: A modern, fast and easy to use stand-alone template engine for Python.
PyYAML: A YAML parser and emitter for the Python programming language.
parmiko: A native Python SSHv2 channel library.
httplib2: A comprehensive HTTP client library.
sshpass: A non-interactive ssh password authentication.

Source : http://www.tecmint.com/install-and-configure-ansible-automation-tool-in-linux/

My quick install (centOS) :
sudo rpm -iUvh http://dl.fedoraproject.org/pub/epel/7/x86_64/e/epel-release-7-8.noarch.rpm
yum -y install ansible

####Make the trust###
ssh-keygen -t rsa -b 4096 -C "root@192.168.xxx.147"
ssh-copy-id root@192.168.xxx.148
ssh-copy-id root@192.168.xxx.149

### please note IP is the MAIN note IP###

To do the automate installation we use Ansible from www.ansible.com , Ansible-Tower and some ideas from EUDATs Github.  On a Redhat/Centos 7.x.  
Please note : You can easy re-use the shellscript with Ansible because it only need a ssh-login.

My RPMbuilder and installer: 
We just change the playbook from : https://github.com/aabdulwahed/iRODS/