Version 4 (modified by 15 years ago) ( diff ) | ,
---|
WiMAX Virtual Machine Grid Service
Accessibility
Running on: cons-wm-02 Base URL: http://wm-asngw-02:5012/wimaxcl/
Functions supported
root@cons-wm-02:/usr/lib/ruby/1.8/omf-aggmgr/ogs_wimaxvm <?xml version='1.0'?> <services><serviceGroup name='wimaxvm' prefix='/wimaxvm'><info>Service to control virtual machines</info> <service name='addclient'> <info>Service to Add a wimax client</info><args><arg name='clientmac' isRequired='true' value='clientmac'><info>MAC address of the client</info></arg><arg name='vmname' isRequired='true' value='vmname'><info>Name of the virtual machine</info></arg></args></service> <service name='create'> <info>Service to create a VM</info><args><arg name='mac' isRequired='true' value='mac'><info>MAC address of the vm</info></arg><arg name='ip' isRequired='true' value='ip'><info>IP address of the vm</info></arg><arg name='vmname' isRequired='true' value='vmname'><info>Name of the virtual machine</info></arg></args></service> <service name='initvms'/><service name='start'><info>Service to start a VM</info><args><arg name='vmname' isRequired='true' value='vmname'><info>Name of the virtual machine</info></arg></args></service><service name='startshaping'><info>Service to start vnts controller</info> </service> <service name='stop'> <info>Service to stop a VM</info><args><arg name='vmname' isRequired='true' value='vmname'><info>Name of the virtual machine</info></arg></args> </service><service name='stopshaping'><info>Stop shaping scrip t</info></service><service name='vmlist'><info>List all VMs</info></service> <service name='vmstat'> <info>Service to query info from a VM</info><args><arg name='vmname' isRequired='true' value='vmname'><info>Name of the virtual machine</info></arg></args></service></serviceGroup></services>
Sample Queries and corresponding outputs
1) To initialize the service.
- Checks for the number of running VMs, populates MAC list and also assigns VLAN ids.
- Is also supposed to send the VLAN information to the server on ASN-GW
wget http://wm-asngw-02:5012/wimaxvm/initvms vm30 VLANid 7 mac address='52:52:52:52:52:52'/ vm7 VLANid 2 mac address='52:54:00:1c:00:cb'/ vm10 VLANid 6 mac address='54:52:00:2c:05:7a'/ vm55 VLANid 3 mac address='01:23:45:67:89:ab'/ vm57 VLANid 4 mac address='01:32:54:67:98:ba'/ vm58 VLANid 5 mac address='01:65:23:67:98:ba'/ vm5 VLANid 0 mac address='52:54:00:2a:85:b6'/ vm6 VLANid 1 mac address='52:54:00:34:aa:a3'/
2) Start VM
- Start vm, assign vlan tag and send info to server on ASNGW
- Socket part is yet to be integrated
http://wm-asngw-02:5012/wimaxvm/start/?vmname=vm30 Domain vm30 started with vlan tag 9
3) Stop VM
- Similar to start VM, but does exactly the opposite
http://wm-asngw-02:5012/wimaxvm/stop/?vmname=vm8 Domain vm8 destroyed
4) Get statistics about a VM
- Gets all relavent information for a particular VM name
http://wm-asngw-02:5012/wimaxvm/vmstat/?vmname=vm8 <domain type='kvm' id='40'> <name>vm30</name> <uuid>94c79efa-01b1-64e7-3bd7-2baedd3cfb1a</uuid> <memory>262144</memory> <currentMemory>262144</currentMemory> <vcpu>1</vcpu> <os> <type arch='i686' machine='pc'>hvm</type> <boot dev='hd'/> </os> <features> <acpi/> </features> <clock offset='utc'/> <on_poweroff>destroy</on_poweroff> <on_reboot>restart</on_reboot> <on_crash>destroy</on_crash> <devices> <emulator>/usr/bin/kvm</emulator> <disk type='file' device='disk'> <source file='/home/native/vm30/disk0.qcow2'/> <target dev='hda' bus='ide'/> </disk> <interface type='network'> <mac address='52:52:52:52:52:52'/> <source network='default'/> <target dev='vnet6'/> <model type='virtio'/> </interface> <input type='mouse' bus='ps2'/> <graphics type='vnc' port='5905' autoport='yes' listen='127.0.0.1'/> </devices> </domain>
5) Get VM list
- Useful for an admin and gives a list of all VMs.
- Format is vmname, Vlanid, vm-mac-addr.
http://wm-asngw-02:5012/wimaxvm/vmlist vm30 VLANid 7 mac address='52:52:52:52:52:52'/ vm7 VLANid 2 mac address='52:54:00:1c:00:cb'/ vm10 VLANid 6 mac address='54:52:00:2c:05:7a'/ vm55 VLANid 3 mac address='01:23:45:67:89:ab'/ vm57 VLANid 4 mac address='01:32:54:67:98:ba'/ vm58 VLANid 5 mac address='01:65:23:67:98:ba'/ vm5 VLANid 0 mac address='52:54:00:2a:85:b6'/ vm6 VLANid 1 mac address='52:54:00:34:aa:a3'/
Note:
See TracWiki
for help on using the wiki.