Puppet project to install a minimal openstack cluster.
I've choose to set the publics endpoint behind sub url in the apache configuration to avoid opening ports on the wild internet.
You will get two accounts : Admin and Demo.
By default openstack will use admin or internal endpoint to work.
When using https version, we create a key pair with predefined information. Check manifests/horizon.pp
line 21 to change theses.
These instructions will get you a copy of the project up and running on your local machine for development and testing purposes. See deployment for notes on how to deploy the project on a live system.
This project has been tested on CentOS 7.x with Openstack Queens and Puppet 4.10.
To get this up and running you just need to do the following :
- Install dependencies
puppet module install puppetlabs-stdlib
- Clone the repo inside puppet
cd /etc/puppetlabs/code/environments/production/modules
git clone https://github.com/MrBE4R/mrbe4r-openstack.git
- Add the roles to your nodes
node 'os-controller' {
class {'openstack':
ensure_package => 'latest',
node_type => 'controller',
https => true,
reset => '/bin/echo 0',
self_signed => true,
node_admin_ip => $::ipaddress_eth0,
node_public_ip => $::ipaddress_eth0,
controller_ip => $::ipaddress_eth0,
os_region_id => 'RegionOne',
provider_interface => 'eth1',
provider_ip => $::ipaddress_eth1,
}
include openstack::install
}
node 'os-compute-001' {
class {'openstack':
ensure_package => 'latest',
node_type => 'compute',
self_signed => true,
controller_ip => 'XXX.XXX.XXX.XXX',
node_admin_ip => $::ipaddress_eth0,
node_public_ip => $::ipaddress_eth0,
os_region_id => 'RegionOne',
provider_interface => 'eth1',
provider_ip => $::ipaddress_eth1,
}
include openstack::install
}
- Run puppet on your nodes
- ???
- Enjoy your new openstack cluster
- Update for newer releases of openstack
- Cleanup the mess
- your suggestions
Please read CONTRIBUTING.md for details on our code of conduct, and the process for submitting pull requests to us.
- Jean-François GUILLAUME (Jeff MrBear) - Initial work - MrBE4R
See also the list of contributors who participated in this project.
This project is licensed under the MIT License - see the LICENSE file for details
- Hat tip to anyone whose code was used