<tt><font size=2>Zane Bitter <zbitter@redhat.com> wrote on 07/01/2014
07:05:15 PM:<br>
<br>
> On 01/07/14 16:30, Mike Spreitzer wrote:<br>
> > Thinking about my favorite use case for lifecycle plug points
for cloud<br>
> > providers (i.e., giving something a chance to make a holistic
placement<br>
> > decision), it occurs to me that one more is needed: a scale-down
plug<br>
> > point.  A plugin for this point has a distinctive job: to
decide which<br>
> > group member(s) to remove from a scaling group (i.e.,<br>
> > OS::Heat::AutoScalingGroup or OS::Heat::InstanceGroup or<br>
> > OS::Heat::ResourceGroup or AWS::AutoScaling::AutoScalingGroup).
 The<br>
> > plugin's signature could be something like this: given a list
of group<br>
> > members and a number to remove, return the list of members to
remove<br>
> > (or, equivalently, return the list of members to keep).  What
do you think?<br>
> <br>
> I think you're not thinking big enough ;)</font></tt>
<br>
<br><tt><font size=2>I agree, I was taking only a small bite in hopes of
a quick success.<br>
<br>
> There exist a whole class of applications that would benefit from
<br>
> autoscaling but which are not quite stateless. (For example, a PaaS.)
So <br>
> it's not enough to have plugins that place the choice of which node
to <br>
> scale down under operator control; in fact it needs to be under <br>
> _application_ control.</font></tt>
<br>
<br><tt><font size=2>Exactly.  There are two different roles that
want such control; in general, neither is happy if only the other gets
it.  Now the question becomes, how do we get them to play nice together?
 In the case of TripleO there may be an exceptionally easy out: the
owner of an application deployed on the undercloud may well be the same
as the provider of the undercloud (i.e., the operator whose end goal is
to provide the overcloud(s) ).</font></tt>
<br><tt><font size=2><br>
> This is on the roadmap, and TripleO really needs it, so hopefully
it <br>
> will happen in Juno.<br>
</font></tt>
<br><tt><font size=2>I assume you mean giving this control to the application,
which I presume amounts to giving it to the template author.  Is this
written up somewhere?</font></tt>
<br>
<br><tt><font size=2>Thanks,</font></tt>
<br><tt><font size=2>Mike<br>
</font></tt>