jclouds-user mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Zack Shoylev <zack.shoy...@RACKSPACE.COM>
Subject Re: openstack affinity / antiaffinity in jcouds
Date Tue, 04 Aug 2015 14:08:15 GMT
If I remember correctly, the compute template options will be converted to nova template options,
but you might have to update the code that does that.
If you are using compute, you will have to add support for the new option in both.
If you are just using openstack-nova, you will only have to change openstack-nova.

I would also recommend you try this against 1.9.x
________________________________________
From: Martin Eppel (meppel) <meppel@cisco.com>
Sent: Monday, August 3, 2015 6:54 PM
To: user@jclouds.apache.org
Subject: RE: openstack affinity / antiaffinity in jcouds

Another question, to support the server-groups in the interim I am also looking into the temporary
solution of  creating the server-groups through the nova client (outside jclouds) and pass
the server-group uuid as parameter to the ComputeService API as part of the nova boot:

1. create the server-groups using nova client (or client outside jclouds)  ... nova server-group-create
...

2. pass the affinity filter as part of the create API (group=<uuid>) - jcloud
    ComputeService.createNodesInGroup ...


E.g:

{
    "server": {
        "name": "new-server-test",
        "imageRef": "http://glance.openstack.example.com/openstack/images/70a599e0-31e7-49b7-b260-868f441e862b",
        "flavorRef": "http://openstack.example.com/openstack/flavors/1"
    },
    "os:scheduler_hints ": {
        "group": "<group_id>"
    }
}


To add the extra parameter to the jcloud compute api is there an example I can compare with
to implement it - at the moment it looks to me that it is just a matter of extending  the
TemplateOptions ?

Thanks

Martin

Btw, I am basing my (temporary) changes on jclouds 1.8.1



-----Original Message-----
From: Zack Shoylev [mailto:zack.shoylev@RACKSPACE.COM]
Sent: Monday, August 03, 2015 3:50 AM
To: user@jclouds.apache.org
Subject: Re: openstack affinity / antiaffinity in jcouds

We already have quite a few nova extensions implemented. The Instance Group Api Extension
will be implemented as just another extension.
I have added a JIRA here:

https://issues.apache.org/jira/browse/JCLOUDS-980

The other nova extensions, as linked before, are here:

https://github.com/jclouds/jclouds/tree/master/apis/openstack-nova/src/main/java/org/jclouds/openstack/nova/v2_0/extensions

It makes sense to implement the extension to be consistent with other extensions. The only
different thing I would recommend would be using autovalue with builders for the domain classes
and mock tests for the tests. Nova will have to be refactored to use these eventually anyways.

-Zack
________________________________________
From: Martin Eppel (meppel) <meppel@cisco.com>
Sent: Sunday, August 2, 2015 8:06 PM
To: user@jclouds.apache.org
Subject: RE: openstack affinity / antiaffinity in jcouds

Hi,

After digging somewhat deeper I realize, in order to support affinity / anti-affinity in openstack
 I would have to implement (as you are already pointed out) the "Compute API v2 extensions"
API (or at least portions of it). Do you have recommendations on how do this, how would this
 implementation coexist with "Compute API v2" or would it simply replace it or does it require
just to extend the current implementation (I don't have yet a complete picture on how jclouds
works) ? Would I have to worry about backward compatibility between  "Compute API v2 extensions"
API and "Compute API v2 " API (the API's seem to overlap) ?

Thanks

Martin

(my apologies for any redundant or novice questions)

-----Original Message-----
From: Martin Eppel (meppel)
Sent: Friday, July 31, 2015 10:21 PM
To: user@jclouds.apache.org
Subject: RE: openstack affinity / antiaffinity in jcouds

Hi,

I was looking at the references below but I am still wondering, if I just want to support
extra parameter(s) (e.g server-groups) in the nova boot command (corresponding RestAPI) how
would I go about it - is it a matter of having to extend and implement new classes (any examples
of similar  options I could reference ?) or would it be as simple as to add / pass a new property
to the  ComputeService API (which invokes the boot) ?

Thanks

Martin

-----Original Message-----
From: Martin Eppel (meppel)
Sent: Friday, July 31, 2015 10:18 AM
To: user@jclouds.apache.org
Subject: RE: openstack affinity / antiaffinity in jcouds

Thanks for the pointers, I'll take a look

Regards

Martin

-----Original Message-----
From: Zack Shoylev [mailto:zack.shoylev@RACKSPACE.COM]
Sent: Thursday, July 30, 2015 7:51 AM
To: user@jclouds.apache.org
Subject: Re: openstack affinity / antiaffinity in jcouds

I think you are referring to the instance group api extension.
https://wiki.openstack.org/wiki/InstanceGroupApiExtension

As far as I know, this extension is not supported in jclouds right now.

If it helps,  the extensions supported for nova in master are here:
https://github.com/jclouds/jclouds/tree/master/apis/openstack-nova/src/main/java/org/jclouds/openstack/nova/v2_0/extensions
________________________________________
From: Martin Eppel (meppel) <meppel@cisco.com>
Sent: Wednesday, July 29, 2015 7:26 PM
To: user@jclouds.apache.org
Subject: openstack affinity / antiaffinity in jcouds

Hi,

I had a question if jclouds currently supports the affinity / anti-affinity concept (and more
specifically for openstack)  where VMs get deployed either co-located on the same compute
host or not.

In openstack, affinity / anti-affinity is supported through server-groups, does jcloud  support
any of the following (openstack specific) nova commands :

    server-group-create         Create a new server group with the specified
    server-group-delete         Delete specific server group(s).
    server-group-get            Get a specific server group.
    server-group-list           Print a list of all server groups.

Secondly, does it support the option in the nova boot command to apply the affinity / anti-affinity
configuration, for example:

   nova boot --image "image1" --hint group=<group-UUID> ......

If there is a documentation which spells out the support please point me to it

Thanks

Martin Eppel

Mime
View raw message