My Comments are following,

Thanks,

Xianqing

IBM WSTI

-----Original Message----- From: Aaron Peeler
Sent: Wednesday, April 25, 2012 2:10 PM
To: vcl-dev@incubator.apache.org
Subject: Re: The CCMP module for IBM Cloud

Hi Xianqing, All,

While brokering resources from the IBM cloud is important and has
great value, it's my opinion we need to delay the inclusion of the
CCMP module until the 2.4 release.

As Kevan commented on in the jira issue, one of the things that need
to be addressed are the IP clearance. When attaching contributions and
you intend for it to be included, make sure to click "Grant license to
ASF for inclusion in ASF works". By doing this, the attachments in the
jira issue will have an apache feather beside each file, telling us it
has been contributed to Apache community.

Sure, next time I would make sure I do that.

Also a larger community discussion is needed on dealing with public
clouds. This will also affect EC2 api, IBM SCP, and likely libcloud
provisioning module related work.  As the folks who have already
started experimenting/working with those, you've realized there are
default behaviors in VCL that keep nodes in a hot-standby mode waiting
for the next user. This is great in local VCL instances, but it's not
feasible in public clouds, as someone is going to get billed for a
running machine.

Agree.

So here is my basic list of design discussion for public clouds :
* policies to define node behavior, turn off after each non-user load, suspend?
Agree, I believe that is a major difference from other VCL VMs which are running inside VCL cluster. Based on my experience, when I am working on EC2 module and CCMP module, I have to find my own way to disable VCL pre-load mechanism to save third-party Cloud's bill. I think that we can add an parameter in host table to define if administrator want to enable image pre-load function or not for each host. About suspend function, it can be useful to save loading time. I prefer to add this mechanism inside provisioning module and also use this function in provisioning module's load function to avoid modifying VCL code.

* best way to handle available images/environments from a given cloud
Agree, we should need to use a defined API to query image list from the Cloud. Because finally available image list should be listed on web page, each image should have its own access privilege to specific users or group. What I thought is that maybe we can create function "query" or "queryImage" in provisioning module. By calling this function, VCL can get list of available image and update its image table according to this list information. VCL administrator can operate on VCL web page to send request said "update IBM Cloud Image List", and web code write this request to VCL database, VCL daemon would find the request and call "query" function and update image table at last. After those operations, we can leave VCL administrator to assign the right access privilege to those images.

* billing based on affiliation
I thought we have to define that what information generally we need to do such billing and put it inside VCL database. My feeling is that those log code can be put inside VCL code or provisioning module code. It is a kind of tradeoff choice, if log code is inside VCL code, it can reduce hardness to develop provisioning module, but may not precisely to record billing time. If the log code is inside VCL code, we have to make sure each developer can to log information in right format in VCL database, but we can fetch more precise time information (such as VM start time, end time).

* single IP from public clouds
Yes, I feel the most simple solution is that using different OS module to do post configuration for each VM. That is what I did for EC2 module and CCMP module. Basically, it would return single IP no matter VCL query for public or private.

* storing API credentials in the vcl database (securely)
I think that is really critical, currently my method is that store password in VCL database in plaintext which is not secure at all. It is hard problem because it is really depending on the third party's API option. Taking EC2 as an example, if I remember correctly, you don't have to store credentials in VCL, but you have to set up credentials configuration on the host which VCL daemon is running. Now I don't have any better idea, but I think it is critical.

* other topics as we design it out

Block Allocation function

Third-Party Cloud Usage Threshold warning or limitation, so administrator can limit an maximum of time one cloud account can be used. It can be a critical protection.


By discussion a general design for these (and other) cases, I think we
can better handle public clouds than we do today.

Anyway. I suggest we move both VCL-457 and VCL-537 jira issues to 2.4
release roadmap and have more discussion about the public cloud topic.
Here are the links for current issues assigned for 2.3 release.
https://issues.apache.org/jira/browse/VCL-457
https://issues.apache.org/jira/browse/VCL-537

We will talk to Young H's group tomorrow. More comments will be added.


Thoughts?

Best Regards,
Aaron

On Tue, Apr 24, 2012 at 5:14 PM, Xianqing Yu <yu267155...@hotmail.com> wrote:
Hi Aaron,

Thanks for your help.

I will test it out.


Thanks,

Xianqing Yu

IBM WSTI

-----Original Message----- From: Aaron Peeler
Sent: Tuesday, April 24, 2012 9:14 AM

To: vcl-dev@incubator.apache.org
Subject: Re: The CCMP module for IBM Cloud

Hi Xianqing,

Thanks for the contribution.

Accounting for charge back is important feature.

I'll do my best to review this and followup soon.

If you haven't done so already, Can you test your provisioning module
with the latest code in trunk?

Thanks,
Aaron


On Mon, Apr 23, 2012 at 1:09 PM, Xianqing Yu <yu267155...@hotmail.com>
wrote:

Hi VCL Community,

Milen and I wrote CCMP() provisioning module to enable VCL provisioning
virtual machine in IBM Smart Cloud. We created JIRA
issue(https://issues.apache.org/jira/browse/VCL-457) and hope it can be
added into VCL release. I would like to keep updating the code until it
satisfy all requirements. Please let me know your opinion, thanks in
advance.

Because IBM Smart Cloud has its own account information which is different
from the VCL user. Generally, if VCL uses CCMP module, multiple users
(such
as students in one department) share one IBM Cloud Account. Thus it
raising
an demand to record individual VCL users' usage history for one IBM Cloud
Account for varies purposes (administration, accounting, etc.). So I wrote
an initial Perl script to generate a VCL users' IBM Cloud usage report.
From
this report, administrator can see which vcl user and how long she or he
used which IBM Cloud Account. The main idea of this script is that CCMP
module would put down necessary information into vcl log file, and my
script
can scan the log file to generate the report. Another possible solution I
can think about is that also using CCMP module but record information into
VCL database, later on accounting script can fetch information from VCL
database to generate report. However, in this method, you have to open VCL
database access to accounting code. I am not sure which method is better,
more discussion is appreciated.

Thanks,
Xianqing Yu

IBM WSTI Intern

-----Original Message----- From: Xianqing Yu
Sent: Tuesday, April 26, 2011 7:07 PM

To: vcl-dev@incubator.apache.org
Subject: Re: The CCMP module for IBM Cloud

Hi Aaron:

I updated the CCMP code today on JIRA.

Here is updated list:

Use database_* routines to check or update VCL database.
Use is_inblockrequest($computer_id) to check if computer belong to block
allocation computer pool.
Use is_request_deleted($request_id) to check reservation status.
Create power_off function, and use it to power off computers.

Again, thank you for your recommendations,

Xianqing Yu

------
Graduate Research Assistant, Cyber Defense Lab
Department of Computer Science
North Carolina State University, Raleigh, NC
E-mail: x...@ncsu.edu
-----Original Message----- From: Aaron Peeler
Sent: Wednesday, April 20, 2011 04:29 PM
To: vcl-dev@incubator.apache.org
Subject: Re: The CCMP module for IBM Cloud

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




--
Aaron Peeler
Program Manager
Virtual Computing Lab
NC State University

All electronic mail messages in connection with State business which
are sent to or received by this account are subject to the NC Public
Records Law and may be disclosed to third parties.



--
Aaron Peeler
Program Manager
Virtual Computing Lab
NC State University

All electronic mail messages in connection with State business which
are sent to or received by this account are subject to the NC Public
Records Law and may be disclosed to third parties.

Reply via email to