[one-users] Custom scheduler for OpenNebula

Ruben S. Montero rubensm at dacya.ucm.es
Thu Sep 11 07:16:55 PDT 2008

	Please to meet you Artem. Great to know about your work!, it seems quite 
interesting indeed. I had the opportunity to attend to a nice presentation  
Alexander Moskovsky at VHPC08. And for sure, your developments would be of 
interest for the ONE community. 

	For the integration you can use the xml-rpc interface provided by OpenNebula. 
This interface exposes several functions for VM and Host management and 
monitoring. ONE is a flexible VM management engine that supports the addition 
of custom monitorization probes (for both VMs and Hosts), this information is 
accessed using a standard sql interface (sqlite). 
	Following this approach the scheduler would obtain it's input (pending VM's, 
, the status of the running ones, available hosts and their status...) form 
the DB. Then the scheduler will make some placement decisions (such as deploy 
a VM in a host or migrate it) and will propagate these decisions to the ONE 
core using the XML-RPC interface.

	Some implementation alternatives:
1.- You can use any XML-RPC and Sqlite bindings (python, ruby, C/C++...) to 
integrate ONE with your current developments. 
2.- There is a JAVA-API that wraps the previous functions, take a look to the 
OpenNebula JAVA API at:
3.- There is also a scheduler template in the ONE source code that can be  
modified and extended. You can take a look at it also 

	Please let me know if you need more information or help with any of these 
approaches. Good luck and keep us updated with your progress!



On Wednesday 10 September 2008 22:11:32 Artem Y. Pervin wrote:
> Dear colleagues!
> Let me introduce myself first. My name is Artem Pervin, software engineer
> developer of the Program System Institute of RAS.
> One of the project I'm currently working on seems to be conceptually very
> similar to the OpenNebula. We have developed a framework to manage virtual
> appliances on a cluster of virtual machines. Also there is an automatic
> tool which may redistribute resources among appliances in an on-demand mode
> based upon their changing resources needs. This component is a conceptual
> equivalent of Haizea, I think. I will provide more detailed description of
> our research if you like.
> Currently we're focused on the scheduling component, that will implement
> quite sophisticated algorithms of optimal control  theory to ensure
> efficient use of resources with an acceptable service level of virtual
> appliances in the real time mode.
> How do think, may such functionality be of interest for the users of
> OpenNebula? If so, we would be glad to develop a custom scheduler for
> OpenNebula to test our ideas in your framework and to exchange some
> experience in implementation of a VM manager. Are there any instructions on
> developing a custom scheduler for OpenNebula? Could you please share some
> of them?
> Best regards,
> Artem Pervin 

 Dr. Ruben Santiago Montero
 Associate Professor
 Distributed System Architecture Group (http://dsa-research.org)

 URL:    http://dsa-research.org/doku.php?id=people:ruben
 Weblog: http://blog.dsa-research.org/?author=7
 GridWay, http://www.gridway.org
 OpenNEbula, http://www.opennebula.org

More information about the Users mailing list