We have created a module that will set up remote servers from within the GUI. The following steps are the current process needed to set up a remote.
First set up the remote host to allow access from the master server
SSH onto the remote host
Sudo to the root user
Create a ~/.ssh folder for root
Add your master server's public key to the known hosts
echo "your_key" >> ~/.ssh/authorized_keys
Disable SELinux (bad I know but this module is still experimental)
Now log onto the master server
SSH onto the master server
Go to the modules area of your aegir hostmaster or devshop site.
Download the new modules
git clone http://github.com/opendevshop/aegir_ansible /var/aegir/hostmaster-7.x-3.x/sites/HOSTNAME/modules
inventory file to
/etc/ansible/hosts and make it executable (as
root, or use sudo. Note
aegir user cannot sudo.):
`root@local:~# cp /var/aegir/hostmaster-7.x-3.x/sites/HOSTNAME/modules/aegir_ansible/inventory /etc/ansible/hosts``root@local:~# chmod +x /etc/ansible/hosts`
Enable the required modules
drush @hostmaster en ansible_services aegir_ansible_inventory
Now you can use the GUI to provision a host
Log into your opendevshop host and choose servers -> add server (or visit http://your.fqdn.here/node/add/server)
In the web section will be a new option labelled "Ansible: Apache SSL". Select this option
In the Database section will be a new option labelled "Ansible: MySQL". Select this option
Click save, then run the verify task. Watch the log as it progresses and you should see the server install all the required Apache and MySQL code and configuration. If the verification succeeds, you have a new remote host up and synced into Aegir.
* = The GUI will partially provision a host... It has issues with SELinux and granting the MySQL database access from the master server.