Hi All,

Giving a very brief overview of everything that has been done. If any
questions or expansion is wanted please reply back.

TL;DR "vagrant up" for: Cloudstack basic zone from source, Cloudstack
advanced zone from source, Cloudstack Simulator, Cloudstack binary
installation and configuration. All provisioning/setup done by chef.

VagrantFiles / Example usage: https://github.com/imduffy15/GSoC-2014

Chef recipe: https://github.com/imduffy15/cookbook_cloudstack


*CLOUDSTACK-6114 - GSoC: Create config management recipes to install
CloudStack. ( https://issues.apache.org/jira/browse/CLOUDSTACK-6114
<https://issues.apache.org/jira/browse/CLOUDSTACK-6114> ) *

*"Devcloud" basic (https://github.com/imduffy15/GSoC-2014/tree/master/basic
<https://github.com/imduffy15/GSoC-2014/tree/master/basic>)*

Re-jigged version of devcloud using vagrant and chef.

Made up of:
 1) "Management" VM. Acts as NFS, MySQL and a Gateway.
 2)  XenServer VM. (Built using packer
https://github.com/imduffy15/packer-xenserver)

Cloudstack is ran on the developers machine.
Marvin is also ran on the developers machine with a supplied configuration
for a basic zone.

MySQL is forwarded from the VM to localhost 3306. This means deploydb works
without issue.

Unlike the old implementation, the VMs brought up by cloudstack have
internet access.

VagrantFile and Marvin config can be found at
https://github.com/imduffy15/GSoC-2014/tree/master/basic

*"Devcloud" advanced
(https://github.com/imduffy15/GSoC-2014/tree/master/advanced
<https://github.com/imduffy15/GSoC-2014/tree/master/advanced>)*

Extension of the above described "Devcloud" basic.

This extension introduces more virtual network cards. This allows for an
advanced zone to be deployed.

Again, Cloudstack and Marvin will the ran on the developers machine. A
marvin config file has been supplied for this.

VagrantFile and Marvin config can be found at
https://github.com/imduffy15/GSoC-2014/tree/master/advanced

**** Note ****
*The ttylinux_vhd supplied with devcloud has hard coded dns servers in
resolv.conf.*

*These are not overwrote by the DHCP lease.*

*As a side project and workaround I have supplied Debian
images http://dl.openvm.eu/cloudstack/debian/vanilla/7/x86_64/
<http://dl.openvm.eu/cloudstack/debian/vanilla/7/x86_64/> Thanks to Nux for
hosting and exoscale supplying boxes to build the images automatically. *

*Simulator (https://github.com/imduffy15/GSoC-2014/tree/master/simulator
<https://github.com/imduffy15/GSoC-2014/tree/master/simulator>)*

This is a single virtual machine. All development tools and mysql are
installed onto this box. A specified version of Cloudstack source is
downloaded and compiled.

The simulator is booted, when completed marvin is executed on the box and
the simulator is configured.

Takes a bit of time to come up... faster solution below.

VagrantFile at https://github.com/imduffy15/GSoC-2014/tree/master/simulator

*Simulator fast
(https://github.com/imduffy15/GSoC-2014/tree/master/simulator-fast
<https://github.com/imduffy15/GSoC-2014/tree/master/simulator-fast>)*

This is a single virtual machine that supplies the cloudstack simulator. I*t
comes up in however fast you can download the 128mb cloud-client-ui war.*

This is restricted to running the cloud-client.war I have supplied (based
of 4.4). This is due to inflexibility around the database. I was hoping to
just use the basic create-schema files and let the upgrade handle the rest
however the upgrade fails. If anybody has a solution to this I would love
to hear it.

This works by taking the cloud-client.war and deploying it with jetty.

VagrantFile at
https://github.com/imduffy15/GSoC-2014/tree/master/simulator-fast

*Binary Installation
(https://github.com/imduffy15/GSoC-2014/tree/master/binary-installation
<https://github.com/imduffy15/GSoC-2014/tree/master/binary-installation>)*

Takes the Cloudstack RPMs, installs them and all requirements.

Installs marvin and executes it against a configuration supplied within the
chef recipe to configure your cloud.

The hypervisor is to be considered a static node. In a real world
environment it must exist before executing the chef recipe.

For demoing and testing purposes a VagrantFile for this can be found at
https://github.com/imduffy15/GSoC-2014/tree/master/binary-installation

**** Note ****

All of the above described boxes are not baked. They are fried on boot up
using chef, this means you can use the recipe outside of vagrant for
achieving the same thing.

The recipe can be found at https://github.com/imduffy15/cookbook_cloudstack
for usage please see the above mentioned vagrantfiles and their run lists
along with the chef attributes defination file.

Reply via email to