This repository has been archived by the owner on Mar 30, 2022. It is now read-only.
-
Notifications
You must be signed in to change notification settings - Fork 17
Development Environment
kamfonik edited this page Jul 31, 2015
·
16 revisions
31 July 2015: Most (if not all) of the information on this page is deprecated. It is being archived for reference.
For our development environment, we use vagrant to create the base virtual machines with libvirt, then use a modified version of the puppetlabs-openstack git repo to deploy Openstack on top of the virtual machines.
To launch a new virtualized Openstack environment:
- Install prerequisites
- vagrant - go to https://www.vagrantup.com/downloads and choose the correct package for you platform
- apt-get install kvm libvirt-bin git
- adduser $USER libvirtd
- Obtain the MOC puppetlabs-openstack code
- Navigate to the subdirectory puppetlabs-openstack/examples/libvirt
- Run install_requirements.sh
- Run firstrun.sh
- The authentication credentials are on the control node, in /root/openrc
To rebuild:
- Run 50_destroy_nodes.sh
- Run firstrun.sh
To add an additional service to be automatically installed using puppet:
- Add a new entry to the Puppetfile at the top level of the puppetlabs-openstack directory
- Add the correct pointer to the puppet module you added to the role for the machine you want in in, specified under puppetlabs-openstack/manifests/roles
- Vagrant 1.6.3
- Vagrant-hostmanager 1.5.0
- Vagrant-libvirt 0.0.16
- Puppet 3.6.2
Current shortcomings: Only one development environment can exist on a machine. The private IP addresses are hard-coded into the vagrant file, so duplicate vm's networks would conflict.
Issues I encountered:
- Vagrant-libvirt does not install the most recent version by default, and needs to be specified in the install. This is in install-requirements.txt. If it is not the most recent version, removing domains will not work correctly, and you will have to manually remove virtual machines.