[openstack-dev] [nova][scheduler] Instance Group Model and APIs - Updated document with an example request payload

Yathiraj Udupi (yudupi) yudupi at cisco.com
Tue Oct 29 21:26:47 UTC 2013


Thanks Khanh for your questions and Mike for adding your inputs.  Some more inline comments.

On 10/29/13, 1:23 PM, "Mike Spreitzer" <mspreitz at us.ibm.com<mailto:mspreitz at us.ibm.com>> wrote:

Khanh-Toan Tran <khanh-toan.tran at cloudwatt.com<mailto:khanh-toan.tran at cloudwatt.com>> wrote on 10/29/2013 09:10:00 AM:
> ...
> 1) Member of a group is recursive. A member can be group or an
> instance. In this case there are two different declaration formats
> for members, as with http-server-group-1 ("name, "policy", "edge")
> and Http-Server-1 ("name", "request_spec", "type"). Would it be
> better if group-typed member also have "type" field to better
> interpret the member? Like policy which has "type" field to declare
> that's a egde-typed policy or group-typed policy.

I have no strong opinion on this.

Yeah some of this might have missed in my example, the purpose here was to provide an example to express it.  type field for group-type member will be included in the request payload


> 2) The "edge" is not clear to me. It seems to me that "edge" is just
> a place holder for the edge policy. Does it have some particular
> configuration like group members (e.g. group-typed member is
> described by its "member","edge" and "policy", while instance-typed
> member is described by its "request_spec") ?

Yes, an edge is just a way to apply a policy to an ordered pair of groups.

If you read earlier in the doc – an edge represents the InstanceGroupMemberConnection, which describes the edge connecting two instance group members.  This is used to apply a policy on this edge.   This is also used to represent complex topologies where members could be different groups.
Again, the request payload is based on what all data can be provided to instantiate the objects in DB based on the model class diagram provided in the document.  This is just an example spec, so some fields may be missing in this example.



> 3) Members & groups have policy declaration nested in them. Why is
> edge-policy is declared outside of edge's declaration?

I agree, it would be more natural to write an edge's policy references inside the edge object itself.

Like we discussed earlier and also mentioned in the document,  the policy has a lifecycle of its own and defined outside with all the required parameters.  InstanceGroupPolicy is a reference to that policy object.



Thanks,
Mike


Thanks,
Yathi.

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.openstack.org/pipermail/openstack-dev/attachments/20131029/26f372c6/attachment.html>


More information about the OpenStack-dev mailing list