[openstack-dev] [Climate] Questions and comments
Patrick Petit
patrick.petit at bull.net
Mon Oct 7 11:02:36 UTC 2013
Hi Mike,
There are actually more facets to this. Sorry if it's a little confusing
:-( Climate's original blueprint
https://wiki.openstack.org/wiki/Blueprint-nova-planned-resource-reservation-api
was about physical host reservation only. The typical use case being: "I
want to reserve x number of hosts that match the capabilities expressed
in the reservation request". The lease is populated with reservations
which at this point are only capacity descriptors. The reservation
becomes active only when the lease starts at a specified time and for a
specified duration. The lease manager plugin in charge of the physical
reservation has a planning of reservations that allows Climate to grant
a lease only if the requested capacity is available at that time. Once
the lease becomes active, the user can request instances to be created
on the reserved hosts using a lease handle as a Nova's scheduler hint.
That's basically it. We do not assume or enforce how and by whom (Nova,
Heat ,...) a resource instantiation is performed. In other words, a host
reservation is like a whole host allocation
https://wiki.openstack.org/wiki/WholeHostAllocation that is reserved
ahead of time by a tenant in anticipation of some workloads that is
bound to happen in the future. Note that while we are primarily
targeting hosts reservations the same service should be offered for
storage. Now, Mirantis brought in a slew of new use cases that are
targeted toward virtual resource reservation as explained earlier by
Dina. While architecturally both reservation schemes (physical vs
virtual) leverage common components, it is important to understand that
they behave differently. For example, Climate exposes an API for the
physical resource reservation that the virtual resource reservation
doesn't. That's because virtual resources are supposed to be already
reserved (through some yet to be created Nova, Heat, Cinder,...
extensions) when the lease is created. Things work differently for the
physical resource reservation in that the actual reservation is
performed by the lease manager plugin not before the lease is created
but when the lease becomes active (or some time before depending on the
provisioning lead time) and released when the lease ends.
HTH clarifying things.
BR,
Patrick
On 10/6/13 8:36 AM, Mike Spreitzer wrote:
> I looked at the blueprint
> (https://blueprints.launchpad.net/heat/+spec/stacks-reservation) and
> associated wiki page
> (https://wiki.openstack.org/wiki/Heat/Reservation), and I have a few
> comments/questions.
>
> The wiki page has some remarks that are Nova-centric, and some other
> remarks that emphasize that Climate is not just about Nova, and I do
> not understand the relationship between these remarks. Is this a
> roadmapping thought (start with just Nova, expand to other services
> later), or the inclusion of some details (related to Nova) and
> omission of other similar details (related to the other services), or
> what?
>
> Will Climate be an independent service, or part of Nova, or what?
>
> What will be the atomic operations? I presume the primary interesting
> operation will be something like reserving a bag of resources, where
> that bag is allowed to contain any mixture of resources from any
> services. Have I got that right?
>
> What exactly does reserving a resource mean? Does this atomic
> reservation operation include some atomic cooperation from the
> resources' services' schedulers (e.g., Nova scheduler, Cinder
> scheduler, etc)? Or is this reservation service logically independent
> of the resources' primary schedulers? Overall I am getting the
> suggestion that reservation is an independent service. The flow is
> something like first reserve a bag of resources, and then proceed to
> use them at your leisure. But I also suppose that the important thing
> about a reservation is that it includes the result of scheduling
> (placement) --- the point of a reservation is that it is holding
> capacity to host the reserved resources. You do not want an atomic
> operation to take a long time; do the scheduling decisions get made
> (tentatively, of course) before the real atomic section, with
> re-schedule and re-try on conflict detection, or is scheduling
> included in the atomic section?
>
> For how long does a reservation last? What sort of thing owns a
> reservation? I suppose one important use case is that a heat engine,
> or the heat service (in the multi-engine world), could own a
> reservation; in this use case, the reservation would last until heat
> releases it. Hopefully heat will persist its reservation information,
> so that a process crash will not cause a dangling reservation; how
> will you enable complete avoidance of timing splinters (e.g., heat
> engine crashes after making reservation but before persisting
> information about it)? Presumably other things besides heat could own
> reservations.
>
> Is this primarily about planning for the distant future, or focused on
> the immediate future? If a bag of resources (including their backing
> capacities) is reserved for a period that starts more than a little
> while in the future, what is done with that backing capacity in the
> meantime?
>
> I see use cases for immediate future reservations; do you have use
> cases for more distant reservations?
>
> Thanks,
> Mike
>
>
> _______________________________________________
> OpenStack-dev mailing list
> OpenStack-dev at lists.openstack.org
> http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev
--
Patrick Petit
Cloud Computing Principal Architect, Innovative Products
Bull, Architect of an Open World TM
Tél : +33 (0)4 76 29 70 31
Mobile : +33 (0)6 85 22 06 39
http://www.bull.com
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.openstack.org/pipermail/openstack-dev/attachments/20131007/943a17c4/attachment.html>
More information about the OpenStack-dev
mailing list