You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@vcl.apache.org by 杨杰 <xt...@gmail.com> on 2009/05/15 06:44:45 UTC

Functions in the VCL

Hi,
We are now trying to integrate VCL as a provision manager to a load
banlancing tool. The experiment may help us to manage the VMs according to
the server load automatically.

The task demands definite understand on the API of VCL, which will
considerably advance our experiment. How could i get it ? or is there any
website to view the API document ?

Thank you !

-- 
Yang Jie(杨杰)

Team of MRMSS, Xi'an Jiaotong University

Department of Computer Science and Technology, Xi’an Jiaotong University

TEL: +8613468883723;029-82665263 EXT.24

MSN: xtyangjie2004@yahoo.com.cn

E-mail: xtyangjie@gmail.com
Don Marquis <http://www.brainyquote.com/quotes/authors/d/don_marquis.html>
- "Procrastination is the art of keeping up with yesterday."

Re: Functions in the VCL

Posted by Josh Thompson <jo...@ncsu.edu>.
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

There are 2 APIs.  One is an XML RPC API that is for interacting with a full 
install of VCL.  The second is the API for creating backend modules.

The documentation for the XML RPC API should be available at your own vcl 
website under the Documentation link in the left navigation area.  This API 
does not expose all of the functionality that can be done through the web 
interface, but it is growing and is easy to extend.  If you don't see the 
Documentation link, you need to add your userid (from the user table) to the 
$docreaders array in .ht-inc/vcldocs.php.

There is a legacy reason for using this $docreaders array that sill exists 
from when the code was developed at NCSU.  I'll create a JIRA issue to change 
that to either be available to all users or to be configurable so that it can 
be available to all users without having to add them to the array.

The documentation for the backend module API is available at the apache 
confluence space in the child pages of:

http://cwiki.apache.org/confluence/display/VCL/Backend

Josh

On Friday May 15, 2009, 杨杰 wrote:
> Hi,
> We are now trying to integrate VCL as a provision manager to a load
> banlancing tool. The experiment may help us to manage the VMs according to
> the server load automatically.
>
> The task demands definite understand on the API of VCL, which will
> considerably advance our experiment. How could i get it ? or is there any
> website to view the API document ?
>
> Thank you !
- -- 
- -------------------------------
Josh Thompson
Systems Programmer
Virtual Computing Lab (VCL)
North Carolina State University

Josh_Thompson@ncsu.edu
919-515-5323

my GPG/PGP key can be found at pgp.mit.edu
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.6 (GNU/Linux)

iD8DBQFKDXGBV/LQcNdtPQMRAgnRAJ43CGAUQuzlhEX3i3o0BvaAJXNDMACeNZaR
rhYy22Ri4s2W6KM0EuNXlsE=
=ogxx
-----END PGP SIGNATURE-----

Re: Functions in the VCL

Posted by 杨杰 <xt...@gmail.com>.
Thank you so much for both of the suggestions ! Aiming to build a platform
which has load balancing functionality of vm operation, we've tried for a
while. We are now trying to use a load balancing tool to call the functions
that vcl has implemented based on the vmware perl toolkit. In this respect,
the vcl project has given us considerable help.
For the fact Brian has shown, we'll try to research on and find a practical
method to customize part of the code of vcl to meet our need. Thanks again
for your help !

2009/5/16 Brian Bouterse <bm...@ncsu.edu>

> When Andrew and I built the esx.pm provisioning module that was developed
> at the Open Systems Collaboration and Research Lab (OSCaR), we wanted to
> build load balancing functionality based on feedback from the usage of the
> servers in real time.  From our evaluation, there is not reasonable way to
> do this with the VCL 2.X architecture.  The heart of the problem is that the
> 2.X architecture achieves scheduling through a combination of frontend code,
> backend code, and a database in the middle.  The placement decision (which
> hypervisor an image will run on) is decided in the frontend, so no amount of
> API's will enable this decision to be more intelligent without rewriting
> portions of both the frontend and backend to being ESX aware and ESX
> specific.  Over time, integrating a large number of resource types makes
> this integration path intractable.
>
> Having tried to implement this into VCL 2.X, this feature use case is what
> brought about the proposal of an alternative VCL architecture to accommodate
> these types of features and extensions in a more reasonable way/  (found
> here:
> http://cwiki.apache.org/confluence/display/VCL/Experimental+VCL+Architecture+Document).
>  An implementation of this experimental architecture is nearing the proof of
> concept stage, and I will commit the POC code of the proposed experimental
> architecture to a branch of the SVN next week.  I would encourage your team
> to use that as a starting point for the integration you propose.  It could
> be done easily by rewriting the PlacementController component inside the ESX
> Resource Manager, which will contain a simple round robin scheduler as it
> goes to pair images with hypervisors to run on.  More documentation will
> also be provided along with the initial code commit to help get you started.
>
> Best,
> Brian
>
>
> Brian Bouterse
> Secure Open Systems Initiative
> 919.698.8796
>
>
>
>
>
> On May 15, 2009, at 12:44 AM, 杨杰 wrote:
>
>  Hi,
>> We are now trying to integrate VCL as a provision manager to a load
>> banlancing tool. The experiment may help us to manage the VMs according to
>> the server load automatically.
>>
>> The task demands definite understand on the API of VCL, which will
>> considerably advance our experiment. How could i get it ? or is there any
>> website to view the API document ?
>>
>> Thank you !
>>
>> --
>> Yang Jie(杨杰)
>>
>> Team of MRMSS, Xi'an Jiaotong University
>>
>> Department of Computer Science and Technology, Xi’an Jiaotong University
>>
>> TEL: +8613468883723;029-82665263 EXT.24
>>
>> MSN: xtyangjie2004@yahoo.com.cn
>>
>> E-mail: xtyangjie@gmail.com
>> Don Marquis <http://www.brainyquote.com/quotes/authors/d/don_marquis.html
>> >
>> - "Procrastination is the art of keeping up with yesterday."
>>
>
>


-- 
Yang Jie(杨杰)

Team of MRMSS, Xi'an Jiaotong University

Department of Computer Science and Technology, Xi’an Jiaotong University

TEL: +8613468883723;029-82665263 EXT.24

MSN: xtyangjie2004@yahoo.com.cn

E-mail: xtyangjie@gmail.com
Vince Lombardi<http://www.brainyquote.com/quotes/authors/v/vince_lombardi.html>
- "We didn't lose the game; we just ran out of time."

Re: Functions in the VCL

Posted by Brian Bouterse <bm...@ncsu.edu>.
When Andrew and I built the esx.pm provisioning module that was  
developed at the Open Systems Collaboration and Research Lab (OSCaR),  
we wanted to build load balancing functionality based on feedback from  
the usage of the servers in real time.  From our evaluation, there is  
not reasonable way to do this with the VCL 2.X architecture.  The  
heart of the problem is that the 2.X architecture achieves scheduling  
through a combination of frontend code, backend code, and a database  
in the middle.  The placement decision (which hypervisor an image will  
run on) is decided in the frontend, so no amount of API's will enable  
this decision to be more intelligent without rewriting portions of  
both the frontend and backend to being ESX aware and ESX specific.   
Over time, integrating a large number of resource types makes this  
integration path intractable.

Having tried to implement this into VCL 2.X, this feature use case is  
what brought about the proposal of an alternative VCL architecture to  
accommodate these types of features and extensions in a more  
reasonable way/  (found here:  http://cwiki.apache.org/confluence/display/VCL/Experimental+VCL+Architecture+Document) 
.  An implementation of this experimental architecture is nearing the  
proof of concept stage, and I will commit the POC code of the proposed  
experimental architecture to a branch of the SVN next week.  I would  
encourage your team to use that as a starting point for the  
integration you propose.  It could be done easily by rewriting the  
PlacementController component inside the ESX Resource Manager, which  
will contain a simple round robin scheduler as it goes to pair images  
with hypervisors to run on.  More documentation will also be provided  
along with the initial code commit to help get you started.

Best,
Brian


Brian Bouterse
Secure Open Systems Initiative
919.698.8796




On May 15, 2009, at 12:44 AM, 杨杰 wrote:

> Hi,
> We are now trying to integrate VCL as a provision manager to a load
> banlancing tool. The experiment may help us to manage the VMs  
> according to
> the server load automatically.
>
> The task demands definite understand on the API of VCL, which will
> considerably advance our experiment. How could i get it ? or is  
> there any
> website to view the API document ?
>
> Thank you !
>
> -- 
> Yang Jie(杨杰)
>
> Team of MRMSS, Xi'an Jiaotong University
>
> Department of Computer Science and Technology, Xi’an Jiaotong  
> University
>
> TEL: +8613468883723;029-82665263 EXT.24
>
> MSN: xtyangjie2004@yahoo.com.cn
>
> E-mail: xtyangjie@gmail.com
> Don Marquis <http://www.brainyquote.com/quotes/authors/d/don_marquis.html 
> >
> - "Procrastination is the art of keeping up with yesterday."