CloudStack Development for KVM in a Virtual Machine Purpose To familiarize programmers with developing for CloudStack using a virtualized KVM host Prerequisites 1) Computer ● Hypervisor capable of running nested virtualization −VMware Fusion 6 Pro + MacOS −Linux w/KVM, nested=1 kvm module parameter ● 4GB of free RAM (8GB+ total system ram) 2) Internet 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