Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

At the heart is a VM that serves as a Jenkins slave, and contains a set of tools to allow one to run QA tests on a clean environment. These tools, hosted on the VM (lets call it "ProvisionerQACloud"), are :

Tool / Software

Use

Comments

Cobbler

Provision baremetal hosts with hypervisor
Provision management server OS

Cobbler integrates well with Puppet and provides useful helper scripts

Puppet

Configure management server with mysql etc

 

DNSMASQ

DHCP + DNS

Used to provision hosts

Squid

HTTP Proxy

Testing infrastructure uses isolated network. Some tasks, like yum install, need internet access

NFS Server

As NFS secondary storage

Packeged Packaged systemVM and builtin templates for quicker download

ipmitool

Interact with baremetal machines through IPMI network

 

Marvin

Deployment and testing framework for CloudStack

 

...

A typical deployment would have the Provisioner QACloud VM also act as a Jenkins slave for builds and launching test suite

...

Setting up from scratch

Follow the instructions here to set-up the infrastructure from scratch.

...

  1. Budget at least 4 machines to your set-up. Install XenServer (6+) on one machine to host Provisioner and management server. This machine is required to have internet access.
  2. Set-up and configure IPMI network and enable hosts for IPMI. This link may be useful http://stuff.mit.edu/afs/athena/dept/cron/documentation/dell-server-admin/en/DRAC_5/racugc1j.htm
  3. Set-up private switch for hosts on eth0. Reference config is available here
  4. Import Provisioner QACloud template by downloading from here
  5. Change MAC address in Cobbler (cobbler system edit --mac-address=<MAC> --name=xen1/2/3 ), DNSMASQ (/etc/dnsmasq.conf) and system.properties file
  6. Set IPMI password in configure script
  7. Set-up public internet access for Provisioner VM so it may proxy requests as needed.

...