===== Foreman =====
Tested on Centos 7
==== Installation ====
hostnamectl set-hostname foremanserver
echo "$IPADDRESS foremanserver.walmart.cr foremanserver" >> /etc/hosts
yum update
yum -y install https://yum.puppetlabs.com/puppet5/puppet5-release-el-7.noarch.rpm
yum -y install http://dl.fedoraproject.org/pub/epel/epel-release-latest-7.noarch.rpm
yum -y install https://yum.theforeman.org/releases/1.20/el7/x86_64/foreman-release.rpm
yum -y install foreman-installer
Run:
foreman-installer -i
When installation is completed you will receive a message similar to:
* Foreman is running at https://foremanserver.walmart.cr
Initial credentials are admin / HQyjzADDVs6PunGX
* Foreman Proxy is running at https://foremanserver.walmart.cr:8443
* Puppetmaster is running at port 8140
The full log is at /var/log/foreman-installer/foreman.log
Configure firewall:
firewall-cmd --add-service=https --permanent
firewall-cmd --add-port=8443/tcp --permanent
firewall-cmd --add-port=8140/tcp --permanent
firewall-cmd --reload
==== Ansible integration ====
Install ansible:
yum install ansible
Change /etc/ansible/ansible.cfg to contain:
callback_whitelist = foreman
Add a section [callback_foreman] at the end of /etc/ansible/ansible.cfg like this:
[callback_foreman]
url = 'https://foremanserver.walmart.cr'
ssl_cert = /etc/puppetlabs/puppet/ssl/certs/foremanserver.walmart.cr.pem
ssl_key = /etc/puppetlabs/puppet/ssl/private_keys/foremanserver.walmart.cr.pem
verify_certs = /etc/puppetlabs/puppet/ssl/certs/ca.pem
Install required plugins:
foreman-installer --enable-foreman-plugin-ansible --enable-foreman-proxy-plugin-ansible
foreman-installer --enable-foreman-plugin-remote-execution --enable-foreman-proxy-plugin-remote-execution-ssh
==== Configure Ansible ====
==== References ====
* https://www.theforeman.org/plugins/foreman_ansible/2.x/index.html
* https://www.digitalocean.com/community/tutorials/how-to-install-and-configure-ansible-on-centos-7
* https://www.theforeman.org/manuals/1.20/quickstart_guide.html