CloudStack Development for KVM in a Purpose To familiarize with developing for CloudStack using a virtualized KVM host Prerequisites 1) Computer ● capable of running nested −VMware Fusion 6 Pro + MacOS − w/KVM, nested=1 kvm module parameter ● 4GB of free RAM (8GB+ total system ram) 2) Connection ● For download of source, VM templates, wiki instructions DevCloud Development Models

● FFullull StackStack inin VMVM ● Split Manager/Agent Installation: MacOS w/VMware Fusion 1.Install VMware Fusion 6 Professional 2.Set up networks, VMware Fusion → Preferences Setup vmnet2 Setup vmnet3 3. Download DevCloud-KVM VM for VMware Fusion: http://marcus.mlsorensen.com/cloudstack-extras/devcloud-kvm-fusi on.tar.gz

4. Extract package via double-click in Finder 5. Navigate folder, right click VM → Open With → VMware Fusion Select “I moved it”, which will preserve MAC addresses Installation: Linux w/KVM 1. Verify nested KVM capability

2. Download DevCloud-KVM package for Linux KVM

3. Extract archive 4. Install networks 5. Edit file devcloud-kvm.xml, change path for qcow2 image to match actual path on workstation

6. Register and start VM Inside DevCloud-KVM ssh [email protected] password : “password” Installing CloudStack from Source Deploying A Zone Network Key KVM Agent Classes

● LLibvirtComputingResourceibvirtComputingResource – Primary handler of *Command classes ● VirtualRoutingResource – Handles Virtual Router programming *Command classes ● LibvirtVMDef – Handles putting together Libvirt XML for guests ● KVMStorageProcessor – Handles most storage related *Command classes ● StorageAdaptor – Interface for implementing a storage pool (agent-side storage plugins) ● VifDriver – Interface for implementing vm nic plug, unplug (network plugin) – Extend VifDriverBase Resources

● hhttps://cwiki.apache.org/confluence/display/CLOUDSTACK/Dettps://cwiki.apache.org/confluence/display/CLOUDSTACK/De vCloud-kvm

● https://cwiki.apache.org/confluence/display/CLOUDSTACK/Mar vin+-+Testing+with+Python

● http://marcus.mlsorensen.com/cloudstack-extras