Hi Aaron:

Thank you for taking time to look at that code. I will update the code very 
soon according to you suggestion.

> I see your powering off the nodes in certain cases, after each reclaim and at 
> the end of block allocations. Can you explain more about that?
Because IBM Cloud will charge the IBM Cloud Account for any running machines, 
no matter if there is user using or not. So in order to minimize the cost, we 
want to make sure there is no running machines in IBM Cloud when users don't 
make a reservation. So there are several ways we achieve that. 

First, when the user end one reservation, VCL daemon would call the load 
function in CCMP module, load function at this time would check the userid, 
node's status and block allocation computer table. When load function finds out 
userid is "vclreload", the node is running, and the node is not inside block 
allocation computer pool, it would power off the node and return.  So the node 
would not be reload after the reservation.

Second, the code would power off the node if it detects any errors during 
provisioning process. For instance, when provisioning request failed, or 
provisioned instance doesn't get the IP address, or reservation is canceled 
before the whole load function finishing, the code would initiate power off 
process to power off the instance and delete it inside IBM Cloud.

Third, we make block allocation works with CCMP module. However, (correct me if 
I am wrong) currently VCL code would not power off nodes which belong to the 
block allocation node's pool when block allocation time expired. So we add some 
codes inside blockrequest.pm to power off those nodes when time expired. In 
order to avoid interfere other parts of VCL, the code we added would only check 
the nodes which are using ccmp module as provisioning module.

> 
> In the OS modules, what are main changes there? What version were you working 
> against? I see a lot of little changes, but many may be related to the 
> differences in the version your were working on. Ideally we would want to 
> extend the OS modules to handle what would be needed to work with all the 
> provisioning modules.

The main reason we create a separate OS module is that the instance in IBM 
Cloud only has one network connection which is public network. And traditional 
OS module, like Linux module and Windows Module, would fetch both 
configurations for public ethernet network card and private ethernet network 
card. So the way we get around this is that our code would always return the 
public network's configuration when VCL daemon request configuration 
information for public NIC or private NIC. The OS modules is based on VCL 2.2 
OS modules, linux.pm and windows.pm, I may make a lot of changes when I develop 
and test these modules. So if extend original OS modules is the best way, I can 
extend both modules, and then send you guys the code to check, sounds good?

Again, thank you for your time,

Xianqing Yu

------
Graduate Research Assistant, Cyber Defense Lab
Department of Computer Science
North Carolina State University, Raleigh, NC
E-mail: x...@ncsu.edu 


On Apr 20, 2011, at 4:29 PM, Aaron Peeler wrote:

> Hi Milen, Xianqing,
> 
> Thanks for the update.
> 
> Overall the code looks really good.
> 
> Some suggestions, which would help clean up the code a little bit.
> 
> I see your making sql calls directly in the ccmp module.
> Something to help simplify is to use these routines.
> 
> database_select()
> database_execute()
> 
> These database_* routines will check for and create a db handle if needed. 
> Also if we every need to move away from mysql to another
> 
> Some other ones related to sql statements:
> for the blockComputers check you can use
> is_inblockrequest($computer_id)
> to see if a user deleted a request you can use this routine
> is_request_deleted($request_id)
> 
> In your does_image_exist routine. You can do away with the Check in the local 
> database and only confirm the image is available in the IBM cloud.
> If the image wasn't in the local VCL database, then the user request would 
> not be able to get that far anyway.
> 
> 
> Also you might be able to make use of the variable table.
> An example starts on line 250 in the xCAT2.pm provisioning module
> if($self->data->is_variable_set($variable_name)){
>  notify($ERRORS{'DEBUG'}, 0, "throttle is  set for $variable_name");
>  #fetch variable
>  $xcat_throttle = $self->data->get_variable($variable_name);
> }
> 
> The variable table can used to handle variables that do not have a home or 
> that need to be flexible.
> 
> I see your powering off the nodes in certain cases, after each reclaim and at 
> the end of block allocations. Can you explain more about that?
> 
> In the OS modules, what are main changes there? What version were you working 
> against? I see a lot of little changes, but many may be related to the 
> differences in the version your were working on. Ideally we would want to 
> extend the OS modules to handle what would be needed to work with all the 
> provisioning modules.
> 
> Thanks again for your work,
> Aaron
> 
> 
> 
> On 4/20/11 11:47 AM, Milen P Paskov wrote:
>> Hello community,
>> 
>> There is now a JIRA issue with the code attached to it
>> (https://issues.apache.org/jira/browse/VCL-457). We are currently
>> working on getting some more documentation and will upload once we have it.
>> 
>> Here is a link about IBM Cloud where you can find some more information
>> about it:
>> http://www-935.ibm.com/services/us/igs/cloud-development/#tab:overview/#leadspace:default
>> 
>> 
>> Best Regards,
>> Milen Paskov
>> WSTI Intern
>> mppas...@us.ibm.com
>> 
>> Inactive hide details for Aaron Peeler ---04/19/2011 09:37:57 AM---Hi
>> Milen, Please discuss the module details on this list so Aaron Peeler
>> ---04/19/2011 09:37:57 AM---Hi Milen, Please discuss the module details
>> on this list so others are aware of
>> 
>> From: Aaron Peeler <aaron_pee...@ncsu.edu>
>> To: vcl-dev@incubator.apache.org
>> Date: 04/19/2011 09:37 AM
>> Subject: Re: The CCMP module for IBM Cloud
>> 
>> ------------------------------------------------------------------------
>> 
>> 
>> 
>> Hi Milen,
>> 
>> Please discuss the module details on this list so others are aware of
>> it. All development discussions should be done on this list for
>> community public record.
>> 
>> For instance, Talk about what the module is doing. What sort of changes
>> need to take place on the management node? What changes in the db?
>> 
>> Have you created a Jira issue for it yet?
>> 
>> Thanks,
>> Aaron
>> 
>> On 4/18/11 5:39 PM, Milen P Paskov wrote:
>> > Hi Aaron,
>> >
>> > As we are very close to NCSU campus me and Xianqing will be able to drop
>> > by on Wednesday, how does 9am sound. Then we can discuss the module in
>> > detail as well as what needs to be done to test it in a production VCL.
>> >
>> > Once again we would like to thank you and NCSU for the opportunity to
>> > test our module
>> >
>> > Best Regards,
>> > Milen Paskov
>> > WSTI Intern
>> > mppas...@us.ibm.com
>> >
>> > Inactive hide details for Aaron Peeler ---04/15/2011 12:58:53 PM---Hi
>> > Milen, This is great. We'd like to test it here at NCSU.Aaron Peeler
>> > ---04/15/2011 12:58:53 PM---Hi Milen, This is great. We'd like to test
>> > it here at NCSU.
>> >
>> > From: Aaron Peeler <aaron_pee...@ncsu.edu>
>> > To: vcl-dev@incubator.apache.org
>> > Date: 04/15/2011 12:58 PM
>> > Subject: Re: The CCMP module for IBM Cloud
>> >
>> > ------------------------------------------------------------------------
>> >
>> >
>> >
>> > Hi Milen,
>> >
>> > This is great. We'd like to test it here at NCSU.
>> >
>> > If you haven't already do so, please create a JIRA issue for this and
>> > add any info you can to it. Normally you can attached the code for the
>> > module to the jira issue for review, but I can only assume you have to
>> > some kind of clearance from IBM legal.
>> >
>> > Just let us know the next steps to be able to review and test it out.
>> >
>> > Thanks,
>> > Aaron
>> >
>> > On 4/15/11 10:14 AM, Milen P Paskov wrote:
>> > > Hello community,
>> > >
>> > > I would like to bring some more attention to this topic as the module
>> > > has taken shape.
>> > >
>> > > The idea behind this module is that university as well as anyone else
>> > > interested in VCL will be able to have access to additional resources.
>> > > Hardware can be expensive and not everyone can afford to buy some just
>> > > to test VCL. Using this module one can set up VCL on a local machine or
>> > > one on IBM Cloud and provision images on the IBM Cloud. Images on IBM
>> > > Cloud can be modified and saved just like a regular VCL. In
>> addition the
>> > > module can be used to increase the capacity of of currently
>> > operational VCL.
>> > >
>> > > Currently the module is fully functional with Linux images and can
>> > > provision Windows images, but it can not save the Windows images. The
>> > > module has been tested within IBM, but we are looking for ways to try
>> > > and test on a production VCL.
>> > >
>> > > Best Regards,
>> > > Milen Paskov
>> > > WSTI Intern
>> > > mppas...@us.ibm.com
>> > >
>> > > Inactive hide details for Aaron Peeler ---12/10/2010 02:54:51 PM---Hi
>> > > Xianqing, Sounds great, look forward to seeing it (hopefuAaron Peeler
>> > > ---12/10/2010 02:54:51 PM---Hi Xianqing, Sounds great, look forward to
>> > > seeing it (hopefully it will get IBM
>> > >
>> > > From: Aaron Peeler <aaron_pee...@ncsu.edu>
>> > > To: vcl-dev@incubator.apache.org
>> > > Date: 12/10/2010 02:54 PM
>> > > Subject: Re: The CCMP module for IBM Cloud
>> > >
>> > >
>> ------------------------------------------------------------------------
>> > >
>> > >
>> > >
>> > > Hi Xianqing,
>> > >
>> > > Sounds great, look forward to seeing it (hopefully it will get IBM
>> > > approval for donation).
>> > >
>> > > Aaron
>> > >
>> > > On 12/10/10 10:49 AM, Xianqing Yu wrote:
>> > > > Hello VCL community,
>> > > >
>> > > > I have been working on a new provisioning module (ccmp module) for
>> > > VCL. With this module the VCL will be able to provision instances
>> on the
>> > > IBM Developer Could. Milen Paskov was working on the project, and now I
>> > > take over it. I updated the module and now the module is under the
>> > > testing. I think we can contribute ccmp module and documentation
>> > > relative to the module to VCL community in January next year.
>> > > >
>> > > >
>> > > > Best Regards,
>> > > >
>> > > > Xianqing Yu
>> > > > WSTI Intern
>> > > > y...@us.ibm.com
>> > >
>> > >
>> > > --
>> > >
>> > > Aaron Peeler
>> > > Program Manager
>> > > Virtual Computing Lab
>> > > NC State University
>> > > aaron_pee...@ncsu.edu
>> > > 919-513-4571
>> > >
>> > >
>> >
>> > --
>> > Aaron Peeler
>> > Program Manager
>> > Virtual Computing Lab
>> > NC State University
>> >
>> 
>> --
>> Aaron Peeler
>> Program Manager
>> Virtual Computing Lab
>> NC State University
>> 
> 
> -- 
> Aaron Peeler
> Program Manager
> Virtual Computing Lab
> NC State University
> 

Reply via email to