This repository contains a collection of Ansible roles and playbooks that aim at easing the deployment procedure of ARGO products. The goal for these roles and playbooks has been to be as generic as possible so that they are easily adaptable to different environments and e-Infrastructure requirements. Hence most of the variables used by default in these roles reside under the roles/{role_name}/defaults/main.yml
files.
The administrator of the ARGO product being deployed via these Ansible playbooks may use any of the following places in order to successfully overwrite the default values of the variables and adapt the ARGO product to the specific environment and requirements:
roles/{role_name}/vars/main.yml
groups_vars/{groups_name}
host_vars/{inventory_hostname}
Per ARGO product more details on prerequisites and variables are given in the following subsections.
- Disable Selinux: Vi /etc/sycoconfig/selinux change SELINUX=enforcing to SELINUX=disabled
- Allocate interfaces to zones: e.g. firewall-cmd --zone=internal --change-interface=eth2 --permanent
- Upload Public keys inclunding GRNET_CI
- Reboot
-
In order to run an ansible playbook, you need to make sure that you are using
ansible 2.6
. -
In order to develop new playbooks you will also need to have
docker
andmolecule
.
To make the set up process easier, you will have to create a virtual environment executing the following steps:
-
Make sure you have
python2.7
installed -
Update
pip
pip install --upgrade pip
-
Install the virtualenv package
pip install virtualenv
-
Create the new virtual environment
virtualenv --python=/usr/bin/python2.7 ./argo-ansible-env
- Navigate inside the virtual environment and activate it
cd argo-ansible-env && source ./bin/activate
- Clone the repo and install the appropriate packages
After cloning the repo,navigate inside it, and issue the command
pip install -r requirements.txt
- After setting up your environment, you will also need some pre-defined roles that our playbooks are using.To get these roles, issue the command:
ansible-galaxy install -r requirements.yml