You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@stratos.apache.org by Nirmal Fernando <ni...@gmail.com> on 2014/04/29 02:38:43 UTC
[Autoscaling] Allowing users to configure an upper and a lower limit
of threshold values
Hi All,
Current auto-scaler takes only the 'average' threshold value from a user's
auto-scaling policy. Then inside the scaling related drools rules it
calculates an upper bound and a lower bound by multiplying the average
threshold value by two non-configurable constants.
scaleUp : Boolean() from ((rifReset && (rifPredictedValue > rifAverageLimit
* *0.8*)) || (mcReset && (mcPredictedValue > mcAverageLimit * 0.8)) ||
(laReset && (laPredictedValue > laAverageLimit * 0.8)))
scaleDown : Boolean() from ((rifReset && (rifPredictedValue <
rifAverageLimit ** 0.1*)) && (mcReset && (mcPredictedValue < mcAverageLimit
* 0.1)) && (laReset && (laPredictedValue < laAverageLimit * 0.1)))
IMO this is a limitation and we could make these constants configurable via
auto-scaling policy.
So, I propose following format to the auto-scaling policy:
{
"id": "autoscale-policy-1",
"loadThresholds": {
"requestsInFlight": {
"upperLimit": 30,
"lowerLimit": 5
},
"memoryConsumption": {
"upperLimit": 80,
"lowerLimit": 50
},
"loadAverage": {
"upperLimit": 100,
"lowerLimit": 20
}
}
}
Then, we can modify the rule to consider user-defined threshold values when
taking the scaling decision.
Let me know your thoughts.
--
Best Regards,
Nirmal
Nirmal Fernando.
PPMC Member & Committer of Apache Stratos,
Senior Software Engineer, WSO2 Inc.
Blog: http://nirmalfdo.blogspot.com/
Re: [Autoscaling] Allowing users to configure an upper and a lower
limit of threshold values
Posted by Nirmal Fernando <ni...@gmail.com>.
Jira: https://issues.apache.org/jira/browse/STRATOS-645
On Tue, Apr 29, 2014 at 11:32 PM, Nirmal Fernando <ni...@gmail.com>wrote:
> And I don't understand how you eliminate threshold values!
>
>
> On Tue, Apr 29, 2014 at 10:40 PM, Nirmal Fernando <ni...@gmail.com>wrote:
>
>> hmm... do we have a discussion on what we are planning to do?
>>
>>
>> On Tue, Apr 29, 2014 at 10:36 PM, Lahiru Sandaruwan <la...@wso2.com>wrote:
>>
>>> Sent from my mobile.
>>>
>>> On Apr 29, 2014 10:29 PM, "Nirmal Fernando" <ni...@gmail.com>
>>> wrote:
>>> >
>>> > Asiri could build on top of my changes, I suppose?
>>>
>>> We can eliminate these factors and threshold limits completely then.
>>>
>>> >
>>> >
>>> > On Tue, Apr 29, 2014 at 10:15 PM, Lahiru Sandaruwan <la...@wso2.com>
>>> wrote:
>>> >>
>>> >>
>>> >>
>>> >>
>>> >> On Tue, Apr 29, 2014 at 9:52 PM, Nirmal Fernando <
>>> nirmal070125@gmail.com> wrote:
>>> >>>
>>> >>> Lahiru, this should be ok right?
>>> >>
>>> >>
>>> >> Yes. But for 4.1.0, we will be counting the required number of
>>> instances with proposed Gsoc project by Asiri.
>>> >>>
>>> >>>
>>> >>>
>>> >>> On Tue, Apr 29, 2014 at 7:21 PM, Nirmal Fernando <
>>> nirmal070125@gmail.com> wrote:
>>> >>>>
>>> >>>> 4.1.0
>>> >>>>
>>> >>>>
>>> >>>> On Tue, Apr 29, 2014 at 12:18 PM, Lahiru Sandaruwan <
>>> lahirus@wso2.com> wrote:
>>> >>>>>
>>> >>>>> Hi Nirmal,
>>> >>>>>
>>> >>>>> Which release do you plan to add this feature?
>>> >>>>>
>>> >>>>> Thanks.
>>> >>>>>
>>> >>>>>
>>> >>>>> On Tue, Apr 29, 2014 at 6:08 AM, Nirmal Fernando <
>>> nirmal070125@gmail.com> wrote:
>>> >>>>>>
>>> >>>>>> Hi All,
>>> >>>>>>
>>> >>>>>> Current auto-scaler takes only the 'average' threshold value from
>>> a user's auto-scaling policy. Then inside the scaling related drools rules
>>> it calculates an upper bound and a lower bound by multiplying the average
>>> threshold value by two non-configurable constants.
>>> >>>>>>
>>> >>>>>> scaleUp : Boolean() from ((rifReset && (rifPredictedValue >
>>> rifAverageLimit * 0.8)) || (mcReset && (mcPredictedValue > mcAverageLimit *
>>> 0.8)) || (laReset && (laPredictedValue > laAverageLimit * 0.8)))
>>> >>>>>> scaleDown : Boolean() from ((rifReset &&
>>> (rifPredictedValue < rifAverageLimit * 0.1)) && (mcReset &&
>>> (mcPredictedValue < mcAverageLimit * 0.1)) && (laReset && (laPredictedValue
>>> < laAverageLimit * 0.1)))
>>> >>>>>>
>>> >>>>>> IMO this is a limitation and we could make these constants
>>> configurable via auto-scaling policy.
>>> >>>>>>
>>> >>>>>> So, I propose following format to the auto-scaling policy:
>>> >>>>>>
>>> >>>>>> {
>>> >>>>>> "id": "autoscale-policy-1",
>>> >>>>>> "loadThresholds": {
>>> >>>>>> "requestsInFlight": {
>>> >>>>>> "upperLimit": 30,
>>> >>>>>> "lowerLimit": 5
>>> >>>>>> },
>>> >>>>>> "memoryConsumption": {
>>> >>>>>> "upperLimit": 80,
>>> >>>>>> "lowerLimit": 50
>>> >>>>>> },
>>> >>>>>> "loadAverage": {
>>> >>>>>> "upperLimit": 100,
>>> >>>>>> "lowerLimit": 20
>>> >>>>>> }
>>> >>>>>> }
>>> >>>>>> }
>>> >>>>>>
>>> >>>>>> Then, we can modify the rule to consider user-defined threshold
>>> values when taking the scaling decision.
>>> >>>>>>
>>> >>>>>> Let me know your thoughts.
>>> >>>>>>
>>> >>>>>> --
>>> >>>>>> Best Regards,
>>> >>>>>> Nirmal
>>> >>>>>>
>>> >>>>>> Nirmal Fernando.
>>> >>>>>> PPMC Member & Committer of Apache Stratos,
>>> >>>>>> Senior Software Engineer, WSO2 Inc.
>>> >>>>>>
>>> >>>>>> Blog: http://nirmalfdo.blogspot.com/
>>> >>>>>
>>> >>>>>
>>> >>>>>
>>> >>>>>
>>> >>>>> --
>>> >>>>> --
>>> >>>>> Lahiru Sandaruwan
>>> >>>>> Committer and PPMC member, Apache Stratos(incubating),
>>> >>>>> Senior Software Engineer,
>>> >>>>> WSO2 Inc., http://wso2.com
>>> >>>>> lean.enterprise.middleware
>>> >>>>>
>>> >>>>> email: lahirus@wso2.com cell: (+94) 773 325 954
>>> >>>>> blog: http://lahiruwrites.blogspot.com/
>>> >>>>> twitter: http://twitter.com/lahirus
>>> >>>>> linked-in: http://lk.linkedin.com/pub/lahiru-sandaruwan/16/153/146
>>> >>>>>
>>> >>>>
>>> >>>>
>>> >>>>
>>> >>>> --
>>> >>>> Best Regards,
>>> >>>> Nirmal
>>> >>>>
>>> >>>> Nirmal Fernando.
>>> >>>> PPMC Member & Committer of Apache Stratos,
>>> >>>> Senior Software Engineer, WSO2 Inc.
>>> >>>>
>>> >>>> Blog: http://nirmalfdo.blogspot.com/
>>> >>>
>>> >>>
>>> >>>
>>> >>>
>>> >>> --
>>> >>> Best Regards,
>>> >>> Nirmal
>>> >>>
>>> >>> Nirmal Fernando.
>>> >>> PPMC Member & Committer of Apache Stratos,
>>> >>> Senior Software Engineer, WSO2 Inc.
>>> >>>
>>> >>> Blog: http://nirmalfdo.blogspot.com/
>>> >>
>>> >>
>>> >>
>>> >>
>>> >> --
>>> >> --
>>> >> Lahiru Sandaruwan
>>> >> Committer and PPMC member, Apache Stratos(incubating),
>>> >> Senior Software Engineer,
>>> >> WSO2 Inc., http://wso2.com
>>> >> lean.enterprise.middleware
>>> >>
>>> >> email: lahirus@wso2.com cell: (+94) 773 325 954
>>> >> blog: http://lahiruwrites.blogspot.com/
>>> >> twitter: http://twitter.com/lahirus
>>> >> linked-in: http://lk.linkedin.com/pub/lahiru-sandaruwan/16/153/146
>>> >>
>>> >
>>> >
>>> >
>>> > --
>>> > Best Regards,
>>> > Nirmal
>>> >
>>> > Nirmal Fernando.
>>> > PPMC Member & Committer of Apache Stratos,
>>> > Senior Software Engineer, WSO2 Inc.
>>> >
>>> > Blog: http://nirmalfdo.blogspot.com/
>>>
>>>
>>
>>
>> --
>> Best Regards,
>> Nirmal
>>
>> Nirmal Fernando.
>> PPMC Member & Committer of Apache Stratos,
>> Senior Software Engineer, WSO2 Inc.
>>
>> Blog: http://nirmalfdo.blogspot.com/
>>
>
>
>
> --
> Best Regards,
> Nirmal
>
> Nirmal Fernando.
> PPMC Member & Committer of Apache Stratos,
> Senior Software Engineer, WSO2 Inc.
>
> Blog: http://nirmalfdo.blogspot.com/
>
--
Best Regards,
Nirmal
Nirmal Fernando.
PPMC Member & Committer of Apache Stratos,
Senior Software Engineer, WSO2 Inc.
Blog: http://nirmalfdo.blogspot.com/
Re: [Autoscaling] Allowing users to configure an upper and a lower
limit of threshold values
Posted by Nirmal Fernando <ni...@gmail.com>.
And I don't understand how you eliminate threshold values!
On Tue, Apr 29, 2014 at 10:40 PM, Nirmal Fernando <ni...@gmail.com>wrote:
> hmm... do we have a discussion on what we are planning to do?
>
>
> On Tue, Apr 29, 2014 at 10:36 PM, Lahiru Sandaruwan <la...@wso2.com>wrote:
>
>> Sent from my mobile.
>>
>> On Apr 29, 2014 10:29 PM, "Nirmal Fernando" <ni...@gmail.com>
>> wrote:
>> >
>> > Asiri could build on top of my changes, I suppose?
>>
>> We can eliminate these factors and threshold limits completely then.
>>
>> >
>> >
>> > On Tue, Apr 29, 2014 at 10:15 PM, Lahiru Sandaruwan <la...@wso2.com>
>> wrote:
>> >>
>> >>
>> >>
>> >>
>> >> On Tue, Apr 29, 2014 at 9:52 PM, Nirmal Fernando <
>> nirmal070125@gmail.com> wrote:
>> >>>
>> >>> Lahiru, this should be ok right?
>> >>
>> >>
>> >> Yes. But for 4.1.0, we will be counting the required number of
>> instances with proposed Gsoc project by Asiri.
>> >>>
>> >>>
>> >>>
>> >>> On Tue, Apr 29, 2014 at 7:21 PM, Nirmal Fernando <
>> nirmal070125@gmail.com> wrote:
>> >>>>
>> >>>> 4.1.0
>> >>>>
>> >>>>
>> >>>> On Tue, Apr 29, 2014 at 12:18 PM, Lahiru Sandaruwan <
>> lahirus@wso2.com> wrote:
>> >>>>>
>> >>>>> Hi Nirmal,
>> >>>>>
>> >>>>> Which release do you plan to add this feature?
>> >>>>>
>> >>>>> Thanks.
>> >>>>>
>> >>>>>
>> >>>>> On Tue, Apr 29, 2014 at 6:08 AM, Nirmal Fernando <
>> nirmal070125@gmail.com> wrote:
>> >>>>>>
>> >>>>>> Hi All,
>> >>>>>>
>> >>>>>> Current auto-scaler takes only the 'average' threshold value from
>> a user's auto-scaling policy. Then inside the scaling related drools rules
>> it calculates an upper bound and a lower bound by multiplying the average
>> threshold value by two non-configurable constants.
>> >>>>>>
>> >>>>>> scaleUp : Boolean() from ((rifReset && (rifPredictedValue >
>> rifAverageLimit * 0.8)) || (mcReset && (mcPredictedValue > mcAverageLimit *
>> 0.8)) || (laReset && (laPredictedValue > laAverageLimit * 0.8)))
>> >>>>>> scaleDown : Boolean() from ((rifReset &&
>> (rifPredictedValue < rifAverageLimit * 0.1)) && (mcReset &&
>> (mcPredictedValue < mcAverageLimit * 0.1)) && (laReset && (laPredictedValue
>> < laAverageLimit * 0.1)))
>> >>>>>>
>> >>>>>> IMO this is a limitation and we could make these constants
>> configurable via auto-scaling policy.
>> >>>>>>
>> >>>>>> So, I propose following format to the auto-scaling policy:
>> >>>>>>
>> >>>>>> {
>> >>>>>> "id": "autoscale-policy-1",
>> >>>>>> "loadThresholds": {
>> >>>>>> "requestsInFlight": {
>> >>>>>> "upperLimit": 30,
>> >>>>>> "lowerLimit": 5
>> >>>>>> },
>> >>>>>> "memoryConsumption": {
>> >>>>>> "upperLimit": 80,
>> >>>>>> "lowerLimit": 50
>> >>>>>> },
>> >>>>>> "loadAverage": {
>> >>>>>> "upperLimit": 100,
>> >>>>>> "lowerLimit": 20
>> >>>>>> }
>> >>>>>> }
>> >>>>>> }
>> >>>>>>
>> >>>>>> Then, we can modify the rule to consider user-defined threshold
>> values when taking the scaling decision.
>> >>>>>>
>> >>>>>> Let me know your thoughts.
>> >>>>>>
>> >>>>>> --
>> >>>>>> Best Regards,
>> >>>>>> Nirmal
>> >>>>>>
>> >>>>>> Nirmal Fernando.
>> >>>>>> PPMC Member & Committer of Apache Stratos,
>> >>>>>> Senior Software Engineer, WSO2 Inc.
>> >>>>>>
>> >>>>>> Blog: http://nirmalfdo.blogspot.com/
>> >>>>>
>> >>>>>
>> >>>>>
>> >>>>>
>> >>>>> --
>> >>>>> --
>> >>>>> Lahiru Sandaruwan
>> >>>>> Committer and PPMC member, Apache Stratos(incubating),
>> >>>>> Senior Software Engineer,
>> >>>>> WSO2 Inc., http://wso2.com
>> >>>>> lean.enterprise.middleware
>> >>>>>
>> >>>>> email: lahirus@wso2.com cell: (+94) 773 325 954
>> >>>>> blog: http://lahiruwrites.blogspot.com/
>> >>>>> twitter: http://twitter.com/lahirus
>> >>>>> linked-in: http://lk.linkedin.com/pub/lahiru-sandaruwan/16/153/146
>> >>>>>
>> >>>>
>> >>>>
>> >>>>
>> >>>> --
>> >>>> Best Regards,
>> >>>> Nirmal
>> >>>>
>> >>>> Nirmal Fernando.
>> >>>> PPMC Member & Committer of Apache Stratos,
>> >>>> Senior Software Engineer, WSO2 Inc.
>> >>>>
>> >>>> Blog: http://nirmalfdo.blogspot.com/
>> >>>
>> >>>
>> >>>
>> >>>
>> >>> --
>> >>> Best Regards,
>> >>> Nirmal
>> >>>
>> >>> Nirmal Fernando.
>> >>> PPMC Member & Committer of Apache Stratos,
>> >>> Senior Software Engineer, WSO2 Inc.
>> >>>
>> >>> Blog: http://nirmalfdo.blogspot.com/
>> >>
>> >>
>> >>
>> >>
>> >> --
>> >> --
>> >> Lahiru Sandaruwan
>> >> Committer and PPMC member, Apache Stratos(incubating),
>> >> Senior Software Engineer,
>> >> WSO2 Inc., http://wso2.com
>> >> lean.enterprise.middleware
>> >>
>> >> email: lahirus@wso2.com cell: (+94) 773 325 954
>> >> blog: http://lahiruwrites.blogspot.com/
>> >> twitter: http://twitter.com/lahirus
>> >> linked-in: http://lk.linkedin.com/pub/lahiru-sandaruwan/16/153/146
>> >>
>> >
>> >
>> >
>> > --
>> > Best Regards,
>> > Nirmal
>> >
>> > Nirmal Fernando.
>> > PPMC Member & Committer of Apache Stratos,
>> > Senior Software Engineer, WSO2 Inc.
>> >
>> > Blog: http://nirmalfdo.blogspot.com/
>>
>>
>
>
> --
> Best Regards,
> Nirmal
>
> Nirmal Fernando.
> PPMC Member & Committer of Apache Stratos,
> Senior Software Engineer, WSO2 Inc.
>
> Blog: http://nirmalfdo.blogspot.com/
>
--
Best Regards,
Nirmal
Nirmal Fernando.
PPMC Member & Committer of Apache Stratos,
Senior Software Engineer, WSO2 Inc.
Blog: http://nirmalfdo.blogspot.com/
Re: [Autoscaling] Allowing users to configure an upper and a lower
limit of threshold values
Posted by Nirmal Fernando <ni...@gmail.com>.
hmm... do we have a discussion on what we are planning to do?
On Tue, Apr 29, 2014 at 10:36 PM, Lahiru Sandaruwan <la...@wso2.com>wrote:
> Sent from my mobile.
>
> On Apr 29, 2014 10:29 PM, "Nirmal Fernando" <ni...@gmail.com>
> wrote:
> >
> > Asiri could build on top of my changes, I suppose?
>
> We can eliminate these factors and threshold limits completely then.
>
> >
> >
> > On Tue, Apr 29, 2014 at 10:15 PM, Lahiru Sandaruwan <la...@wso2.com>
> wrote:
> >>
> >>
> >>
> >>
> >> On Tue, Apr 29, 2014 at 9:52 PM, Nirmal Fernando <
> nirmal070125@gmail.com> wrote:
> >>>
> >>> Lahiru, this should be ok right?
> >>
> >>
> >> Yes. But for 4.1.0, we will be counting the required number of
> instances with proposed Gsoc project by Asiri.
> >>>
> >>>
> >>>
> >>> On Tue, Apr 29, 2014 at 7:21 PM, Nirmal Fernando <
> nirmal070125@gmail.com> wrote:
> >>>>
> >>>> 4.1.0
> >>>>
> >>>>
> >>>> On Tue, Apr 29, 2014 at 12:18 PM, Lahiru Sandaruwan <la...@wso2.com>
> wrote:
> >>>>>
> >>>>> Hi Nirmal,
> >>>>>
> >>>>> Which release do you plan to add this feature?
> >>>>>
> >>>>> Thanks.
> >>>>>
> >>>>>
> >>>>> On Tue, Apr 29, 2014 at 6:08 AM, Nirmal Fernando <
> nirmal070125@gmail.com> wrote:
> >>>>>>
> >>>>>> Hi All,
> >>>>>>
> >>>>>> Current auto-scaler takes only the 'average' threshold value from a
> user's auto-scaling policy. Then inside the scaling related drools rules it
> calculates an upper bound and a lower bound by multiplying the average
> threshold value by two non-configurable constants.
> >>>>>>
> >>>>>> scaleUp : Boolean() from ((rifReset && (rifPredictedValue >
> rifAverageLimit * 0.8)) || (mcReset && (mcPredictedValue > mcAverageLimit *
> 0.8)) || (laReset && (laPredictedValue > laAverageLimit * 0.8)))
> >>>>>> scaleDown : Boolean() from ((rifReset && (rifPredictedValue
> < rifAverageLimit * 0.1)) && (mcReset && (mcPredictedValue < mcAverageLimit
> * 0.1)) && (laReset && (laPredictedValue < laAverageLimit * 0.1)))
> >>>>>>
> >>>>>> IMO this is a limitation and we could make these constants
> configurable via auto-scaling policy.
> >>>>>>
> >>>>>> So, I propose following format to the auto-scaling policy:
> >>>>>>
> >>>>>> {
> >>>>>> "id": "autoscale-policy-1",
> >>>>>> "loadThresholds": {
> >>>>>> "requestsInFlight": {
> >>>>>> "upperLimit": 30,
> >>>>>> "lowerLimit": 5
> >>>>>> },
> >>>>>> "memoryConsumption": {
> >>>>>> "upperLimit": 80,
> >>>>>> "lowerLimit": 50
> >>>>>> },
> >>>>>> "loadAverage": {
> >>>>>> "upperLimit": 100,
> >>>>>> "lowerLimit": 20
> >>>>>> }
> >>>>>> }
> >>>>>> }
> >>>>>>
> >>>>>> Then, we can modify the rule to consider user-defined threshold
> values when taking the scaling decision.
> >>>>>>
> >>>>>> Let me know your thoughts.
> >>>>>>
> >>>>>> --
> >>>>>> Best Regards,
> >>>>>> Nirmal
> >>>>>>
> >>>>>> Nirmal Fernando.
> >>>>>> PPMC Member & Committer of Apache Stratos,
> >>>>>> Senior Software Engineer, WSO2 Inc.
> >>>>>>
> >>>>>> Blog: http://nirmalfdo.blogspot.com/
> >>>>>
> >>>>>
> >>>>>
> >>>>>
> >>>>> --
> >>>>> --
> >>>>> Lahiru Sandaruwan
> >>>>> Committer and PPMC member, Apache Stratos(incubating),
> >>>>> Senior Software Engineer,
> >>>>> WSO2 Inc., http://wso2.com
> >>>>> lean.enterprise.middleware
> >>>>>
> >>>>> email: lahirus@wso2.com cell: (+94) 773 325 954
> >>>>> blog: http://lahiruwrites.blogspot.com/
> >>>>> twitter: http://twitter.com/lahirus
> >>>>> linked-in: http://lk.linkedin.com/pub/lahiru-sandaruwan/16/153/146
> >>>>>
> >>>>
> >>>>
> >>>>
> >>>> --
> >>>> Best Regards,
> >>>> Nirmal
> >>>>
> >>>> Nirmal Fernando.
> >>>> PPMC Member & Committer of Apache Stratos,
> >>>> Senior Software Engineer, WSO2 Inc.
> >>>>
> >>>> Blog: http://nirmalfdo.blogspot.com/
> >>>
> >>>
> >>>
> >>>
> >>> --
> >>> Best Regards,
> >>> Nirmal
> >>>
> >>> Nirmal Fernando.
> >>> PPMC Member & Committer of Apache Stratos,
> >>> Senior Software Engineer, WSO2 Inc.
> >>>
> >>> Blog: http://nirmalfdo.blogspot.com/
> >>
> >>
> >>
> >>
> >> --
> >> --
> >> Lahiru Sandaruwan
> >> Committer and PPMC member, Apache Stratos(incubating),
> >> Senior Software Engineer,
> >> WSO2 Inc., http://wso2.com
> >> lean.enterprise.middleware
> >>
> >> email: lahirus@wso2.com cell: (+94) 773 325 954
> >> blog: http://lahiruwrites.blogspot.com/
> >> twitter: http://twitter.com/lahirus
> >> linked-in: http://lk.linkedin.com/pub/lahiru-sandaruwan/16/153/146
> >>
> >
> >
> >
> > --
> > Best Regards,
> > Nirmal
> >
> > Nirmal Fernando.
> > PPMC Member & Committer of Apache Stratos,
> > Senior Software Engineer, WSO2 Inc.
> >
> > Blog: http://nirmalfdo.blogspot.com/
>
>
--
Best Regards,
Nirmal
Nirmal Fernando.
PPMC Member & Committer of Apache Stratos,
Senior Software Engineer, WSO2 Inc.
Blog: http://nirmalfdo.blogspot.com/
Re: [Autoscaling] Allowing users to configure an upper and a lower
limit of threshold values
Posted by Lahiru Sandaruwan <la...@wso2.com>.
Sent from my mobile.
On Apr 29, 2014 10:29 PM, "Nirmal Fernando" <ni...@gmail.com> wrote:
>
> Asiri could build on top of my changes, I suppose?
We can eliminate these factors and threshold limits completely then.
>
>
> On Tue, Apr 29, 2014 at 10:15 PM, Lahiru Sandaruwan <la...@wso2.com>
wrote:
>>
>>
>>
>>
>> On Tue, Apr 29, 2014 at 9:52 PM, Nirmal Fernando <ni...@gmail.com>
wrote:
>>>
>>> Lahiru, this should be ok right?
>>
>>
>> Yes. But for 4.1.0, we will be counting the required number of instances
with proposed Gsoc project by Asiri.
>>>
>>>
>>>
>>> On Tue, Apr 29, 2014 at 7:21 PM, Nirmal Fernando <ni...@gmail.com>
wrote:
>>>>
>>>> 4.1.0
>>>>
>>>>
>>>> On Tue, Apr 29, 2014 at 12:18 PM, Lahiru Sandaruwan <la...@wso2.com>
wrote:
>>>>>
>>>>> Hi Nirmal,
>>>>>
>>>>> Which release do you plan to add this feature?
>>>>>
>>>>> Thanks.
>>>>>
>>>>>
>>>>> On Tue, Apr 29, 2014 at 6:08 AM, Nirmal Fernando <
nirmal070125@gmail.com> wrote:
>>>>>>
>>>>>> Hi All,
>>>>>>
>>>>>> Current auto-scaler takes only the 'average' threshold value from a
user's auto-scaling policy. Then inside the scaling related drools rules it
calculates an upper bound and a lower bound by multiplying the average
threshold value by two non-configurable constants.
>>>>>>
>>>>>> scaleUp : Boolean() from ((rifReset && (rifPredictedValue >
rifAverageLimit * 0.8)) || (mcReset && (mcPredictedValue > mcAverageLimit *
0.8)) || (laReset && (laPredictedValue > laAverageLimit * 0.8)))
>>>>>> scaleDown : Boolean() from ((rifReset && (rifPredictedValue
< rifAverageLimit * 0.1)) && (mcReset && (mcPredictedValue < mcAverageLimit
* 0.1)) && (laReset && (laPredictedValue < laAverageLimit * 0.1)))
>>>>>>
>>>>>> IMO this is a limitation and we could make these constants
configurable via auto-scaling policy.
>>>>>>
>>>>>> So, I propose following format to the auto-scaling policy:
>>>>>>
>>>>>> {
>>>>>> "id": "autoscale-policy-1",
>>>>>> "loadThresholds": {
>>>>>> "requestsInFlight": {
>>>>>> "upperLimit": 30,
>>>>>> "lowerLimit": 5
>>>>>> },
>>>>>> "memoryConsumption": {
>>>>>> "upperLimit": 80,
>>>>>> "lowerLimit": 50
>>>>>> },
>>>>>> "loadAverage": {
>>>>>> "upperLimit": 100,
>>>>>> "lowerLimit": 20
>>>>>> }
>>>>>> }
>>>>>> }
>>>>>>
>>>>>> Then, we can modify the rule to consider user-defined threshold
values when taking the scaling decision.
>>>>>>
>>>>>> Let me know your thoughts.
>>>>>>
>>>>>> --
>>>>>> Best Regards,
>>>>>> Nirmal
>>>>>>
>>>>>> Nirmal Fernando.
>>>>>> PPMC Member & Committer of Apache Stratos,
>>>>>> Senior Software Engineer, WSO2 Inc.
>>>>>>
>>>>>> Blog: http://nirmalfdo.blogspot.com/
>>>>>
>>>>>
>>>>>
>>>>>
>>>>> --
>>>>> --
>>>>> Lahiru Sandaruwan
>>>>> Committer and PPMC member, Apache Stratos(incubating),
>>>>> Senior Software Engineer,
>>>>> WSO2 Inc., http://wso2.com
>>>>> lean.enterprise.middleware
>>>>>
>>>>> email: lahirus@wso2.com cell: (+94) 773 325 954
>>>>> blog: http://lahiruwrites.blogspot.com/
>>>>> twitter: http://twitter.com/lahirus
>>>>> linked-in: http://lk.linkedin.com/pub/lahiru-sandaruwan/16/153/146
>>>>>
>>>>
>>>>
>>>>
>>>> --
>>>> Best Regards,
>>>> Nirmal
>>>>
>>>> Nirmal Fernando.
>>>> PPMC Member & Committer of Apache Stratos,
>>>> Senior Software Engineer, WSO2 Inc.
>>>>
>>>> Blog: http://nirmalfdo.blogspot.com/
>>>
>>>
>>>
>>>
>>> --
>>> Best Regards,
>>> Nirmal
>>>
>>> Nirmal Fernando.
>>> PPMC Member & Committer of Apache Stratos,
>>> Senior Software Engineer, WSO2 Inc.
>>>
>>> Blog: http://nirmalfdo.blogspot.com/
>>
>>
>>
>>
>> --
>> --
>> Lahiru Sandaruwan
>> Committer and PPMC member, Apache Stratos(incubating),
>> Senior Software Engineer,
>> WSO2 Inc., http://wso2.com
>> lean.enterprise.middleware
>>
>> email: lahirus@wso2.com cell: (+94) 773 325 954
>> blog: http://lahiruwrites.blogspot.com/
>> twitter: http://twitter.com/lahirus
>> linked-in: http://lk.linkedin.com/pub/lahiru-sandaruwan/16/153/146
>>
>
>
>
> --
> Best Regards,
> Nirmal
>
> Nirmal Fernando.
> PPMC Member & Committer of Apache Stratos,
> Senior Software Engineer, WSO2 Inc.
>
> Blog: http://nirmalfdo.blogspot.com/
Re: [Autoscaling] Allowing users to configure an upper and a lower
limit of threshold values
Posted by Nirmal Fernando <ni...@gmail.com>.
Asiri could build on top of my changes, I suppose?
On Tue, Apr 29, 2014 at 10:15 PM, Lahiru Sandaruwan <la...@wso2.com>wrote:
>
>
>
> On Tue, Apr 29, 2014 at 9:52 PM, Nirmal Fernando <ni...@gmail.com>wrote:
>
>> Lahiru, this should be ok right?
>>
>
> Yes. But for 4.1.0, we will be counting the required number of instances
> with proposed Gsoc project by Asiri.
>
>>
>>
>> On Tue, Apr 29, 2014 at 7:21 PM, Nirmal Fernando <ni...@gmail.com>wrote:
>>
>>> 4.1.0
>>>
>>>
>>> On Tue, Apr 29, 2014 at 12:18 PM, Lahiru Sandaruwan <la...@wso2.com>wrote:
>>>
>>>> Hi Nirmal,
>>>>
>>>> Which release do you plan to add this feature?
>>>>
>>>> Thanks.
>>>>
>>>>
>>>> On Tue, Apr 29, 2014 at 6:08 AM, Nirmal Fernando <
>>>> nirmal070125@gmail.com> wrote:
>>>>
>>>>> Hi All,
>>>>>
>>>>> Current auto-scaler takes only the 'average' threshold value from a
>>>>> user's auto-scaling policy. Then inside the scaling related drools rules it
>>>>> calculates an upper bound and a lower bound by multiplying the average
>>>>> threshold value by two non-configurable constants.
>>>>>
>>>>> scaleUp : Boolean() from ((rifReset && (rifPredictedValue >
>>>>> rifAverageLimit * *0.8*)) || (mcReset && (mcPredictedValue >
>>>>> mcAverageLimit * 0.8)) || (laReset && (laPredictedValue > laAverageLimit *
>>>>> 0.8)))
>>>>> scaleDown : Boolean() from ((rifReset && (rifPredictedValue <
>>>>> rifAverageLimit ** 0.1*)) && (mcReset && (mcPredictedValue <
>>>>> mcAverageLimit * 0.1)) && (laReset && (laPredictedValue < laAverageLimit *
>>>>> 0.1)))
>>>>>
>>>>> IMO this is a limitation and we could make these constants
>>>>> configurable via auto-scaling policy.
>>>>>
>>>>> So, I propose following format to the auto-scaling policy:
>>>>>
>>>>> {
>>>>> "id": "autoscale-policy-1",
>>>>> "loadThresholds": {
>>>>> "requestsInFlight": {
>>>>> "upperLimit": 30,
>>>>> "lowerLimit": 5
>>>>> },
>>>>> "memoryConsumption": {
>>>>> "upperLimit": 80,
>>>>> "lowerLimit": 50
>>>>> },
>>>>> "loadAverage": {
>>>>> "upperLimit": 100,
>>>>> "lowerLimit": 20
>>>>> }
>>>>> }
>>>>> }
>>>>>
>>>>> Then, we can modify the rule to consider user-defined threshold values
>>>>> when taking the scaling decision.
>>>>>
>>>>> Let me know your thoughts.
>>>>>
>>>>> --
>>>>> Best Regards,
>>>>> Nirmal
>>>>>
>>>>> Nirmal Fernando.
>>>>> PPMC Member & Committer of Apache Stratos,
>>>>> Senior Software Engineer, WSO2 Inc.
>>>>>
>>>>> Blog: http://nirmalfdo.blogspot.com/
>>>>>
>>>>
>>>>
>>>>
>>>> --
>>>> --
>>>> Lahiru Sandaruwan
>>>> Committer and PPMC member, Apache Stratos(incubating),
>>>> Senior Software Engineer,
>>>> WSO2 Inc., http://wso2.com
>>>> lean.enterprise.middleware
>>>>
>>>> email: lahirus@wso2.com cell: (+94) 773 325 954
>>>> blog: http://lahiruwrites.blogspot.com/
>>>> twitter: http://twitter.com/lahirus
>>>> linked-in: http://lk.linkedin.com/pub/lahiru-sandaruwan/16/153/146
>>>>
>>>>
>>>
>>>
>>> --
>>> Best Regards,
>>> Nirmal
>>>
>>> Nirmal Fernando.
>>> PPMC Member & Committer of Apache Stratos,
>>> Senior Software Engineer, WSO2 Inc.
>>>
>>> Blog: http://nirmalfdo.blogspot.com/
>>>
>>
>>
>>
>> --
>> Best Regards,
>> Nirmal
>>
>> Nirmal Fernando.
>> PPMC Member & Committer of Apache Stratos,
>> Senior Software Engineer, WSO2 Inc.
>>
>> Blog: http://nirmalfdo.blogspot.com/
>>
>
>
>
> --
> --
> Lahiru Sandaruwan
> Committer and PPMC member, Apache Stratos(incubating),
> Senior Software Engineer,
> WSO2 Inc., http://wso2.com
> lean.enterprise.middleware
>
> email: lahirus@wso2.com cell: (+94) 773 325 954
> blog: http://lahiruwrites.blogspot.com/
> twitter: http://twitter.com/lahirus
> linked-in: http://lk.linkedin.com/pub/lahiru-sandaruwan/16/153/146
>
>
--
Best Regards,
Nirmal
Nirmal Fernando.
PPMC Member & Committer of Apache Stratos,
Senior Software Engineer, WSO2 Inc.
Blog: http://nirmalfdo.blogspot.com/
Re: [Autoscaling] Allowing users to configure an upper and a lower
limit of threshold values
Posted by Lahiru Sandaruwan <la...@wso2.com>.
On Tue, Apr 29, 2014 at 9:52 PM, Nirmal Fernando <ni...@gmail.com>wrote:
> Lahiru, this should be ok right?
>
Yes. But for 4.1.0, we will be counting the required number of instances
with proposed Gsoc project by Asiri.
>
>
> On Tue, Apr 29, 2014 at 7:21 PM, Nirmal Fernando <ni...@gmail.com>wrote:
>
>> 4.1.0
>>
>>
>> On Tue, Apr 29, 2014 at 12:18 PM, Lahiru Sandaruwan <la...@wso2.com>wrote:
>>
>>> Hi Nirmal,
>>>
>>> Which release do you plan to add this feature?
>>>
>>> Thanks.
>>>
>>>
>>> On Tue, Apr 29, 2014 at 6:08 AM, Nirmal Fernando <nirmal070125@gmail.com
>>> > wrote:
>>>
>>>> Hi All,
>>>>
>>>> Current auto-scaler takes only the 'average' threshold value from a
>>>> user's auto-scaling policy. Then inside the scaling related drools rules it
>>>> calculates an upper bound and a lower bound by multiplying the average
>>>> threshold value by two non-configurable constants.
>>>>
>>>> scaleUp : Boolean() from ((rifReset && (rifPredictedValue >
>>>> rifAverageLimit * *0.8*)) || (mcReset && (mcPredictedValue >
>>>> mcAverageLimit * 0.8)) || (laReset && (laPredictedValue > laAverageLimit *
>>>> 0.8)))
>>>> scaleDown : Boolean() from ((rifReset && (rifPredictedValue <
>>>> rifAverageLimit ** 0.1*)) && (mcReset && (mcPredictedValue <
>>>> mcAverageLimit * 0.1)) && (laReset && (laPredictedValue < laAverageLimit *
>>>> 0.1)))
>>>>
>>>> IMO this is a limitation and we could make these constants configurable
>>>> via auto-scaling policy.
>>>>
>>>> So, I propose following format to the auto-scaling policy:
>>>>
>>>> {
>>>> "id": "autoscale-policy-1",
>>>> "loadThresholds": {
>>>> "requestsInFlight": {
>>>> "upperLimit": 30,
>>>> "lowerLimit": 5
>>>> },
>>>> "memoryConsumption": {
>>>> "upperLimit": 80,
>>>> "lowerLimit": 50
>>>> },
>>>> "loadAverage": {
>>>> "upperLimit": 100,
>>>> "lowerLimit": 20
>>>> }
>>>> }
>>>> }
>>>>
>>>> Then, we can modify the rule to consider user-defined threshold values
>>>> when taking the scaling decision.
>>>>
>>>> Let me know your thoughts.
>>>>
>>>> --
>>>> Best Regards,
>>>> Nirmal
>>>>
>>>> Nirmal Fernando.
>>>> PPMC Member & Committer of Apache Stratos,
>>>> Senior Software Engineer, WSO2 Inc.
>>>>
>>>> Blog: http://nirmalfdo.blogspot.com/
>>>>
>>>
>>>
>>>
>>> --
>>> --
>>> Lahiru Sandaruwan
>>> Committer and PPMC member, Apache Stratos(incubating),
>>> Senior Software Engineer,
>>> WSO2 Inc., http://wso2.com
>>> lean.enterprise.middleware
>>>
>>> email: lahirus@wso2.com cell: (+94) 773 325 954
>>> blog: http://lahiruwrites.blogspot.com/
>>> twitter: http://twitter.com/lahirus
>>> linked-in: http://lk.linkedin.com/pub/lahiru-sandaruwan/16/153/146
>>>
>>>
>>
>>
>> --
>> Best Regards,
>> Nirmal
>>
>> Nirmal Fernando.
>> PPMC Member & Committer of Apache Stratos,
>> Senior Software Engineer, WSO2 Inc.
>>
>> Blog: http://nirmalfdo.blogspot.com/
>>
>
>
>
> --
> Best Regards,
> Nirmal
>
> Nirmal Fernando.
> PPMC Member & Committer of Apache Stratos,
> Senior Software Engineer, WSO2 Inc.
>
> Blog: http://nirmalfdo.blogspot.com/
>
--
--
Lahiru Sandaruwan
Committer and PPMC member, Apache Stratos(incubating),
Senior Software Engineer,
WSO2 Inc., http://wso2.com
lean.enterprise.middleware
email: lahirus@wso2.com cell: (+94) 773 325 954
blog: http://lahiruwrites.blogspot.com/
twitter: http://twitter.com/lahirus
linked-in: http://lk.linkedin.com/pub/lahiru-sandaruwan/16/153/146
Re: [Autoscaling] Allowing users to configure an upper and a lower
limit of threshold values
Posted by Nirmal Fernando <ni...@gmail.com>.
Lahiru, this should be ok right?
On Tue, Apr 29, 2014 at 7:21 PM, Nirmal Fernando <ni...@gmail.com>wrote:
> 4.1.0
>
>
> On Tue, Apr 29, 2014 at 12:18 PM, Lahiru Sandaruwan <la...@wso2.com>wrote:
>
>> Hi Nirmal,
>>
>> Which release do you plan to add this feature?
>>
>> Thanks.
>>
>>
>> On Tue, Apr 29, 2014 at 6:08 AM, Nirmal Fernando <ni...@gmail.com>wrote:
>>
>>> Hi All,
>>>
>>> Current auto-scaler takes only the 'average' threshold value from a
>>> user's auto-scaling policy. Then inside the scaling related drools rules it
>>> calculates an upper bound and a lower bound by multiplying the average
>>> threshold value by two non-configurable constants.
>>>
>>> scaleUp : Boolean() from ((rifReset && (rifPredictedValue >
>>> rifAverageLimit * *0.8*)) || (mcReset && (mcPredictedValue >
>>> mcAverageLimit * 0.8)) || (laReset && (laPredictedValue > laAverageLimit *
>>> 0.8)))
>>> scaleDown : Boolean() from ((rifReset && (rifPredictedValue <
>>> rifAverageLimit ** 0.1*)) && (mcReset && (mcPredictedValue <
>>> mcAverageLimit * 0.1)) && (laReset && (laPredictedValue < laAverageLimit *
>>> 0.1)))
>>>
>>> IMO this is a limitation and we could make these constants configurable
>>> via auto-scaling policy.
>>>
>>> So, I propose following format to the auto-scaling policy:
>>>
>>> {
>>> "id": "autoscale-policy-1",
>>> "loadThresholds": {
>>> "requestsInFlight": {
>>> "upperLimit": 30,
>>> "lowerLimit": 5
>>> },
>>> "memoryConsumption": {
>>> "upperLimit": 80,
>>> "lowerLimit": 50
>>> },
>>> "loadAverage": {
>>> "upperLimit": 100,
>>> "lowerLimit": 20
>>> }
>>> }
>>> }
>>>
>>> Then, we can modify the rule to consider user-defined threshold values
>>> when taking the scaling decision.
>>>
>>> Let me know your thoughts.
>>>
>>> --
>>> Best Regards,
>>> Nirmal
>>>
>>> Nirmal Fernando.
>>> PPMC Member & Committer of Apache Stratos,
>>> Senior Software Engineer, WSO2 Inc.
>>>
>>> Blog: http://nirmalfdo.blogspot.com/
>>>
>>
>>
>>
>> --
>> --
>> Lahiru Sandaruwan
>> Committer and PPMC member, Apache Stratos(incubating),
>> Senior Software Engineer,
>> WSO2 Inc., http://wso2.com
>> lean.enterprise.middleware
>>
>> email: lahirus@wso2.com cell: (+94) 773 325 954
>> blog: http://lahiruwrites.blogspot.com/
>> twitter: http://twitter.com/lahirus
>> linked-in: http://lk.linkedin.com/pub/lahiru-sandaruwan/16/153/146
>>
>>
>
>
> --
> Best Regards,
> Nirmal
>
> Nirmal Fernando.
> PPMC Member & Committer of Apache Stratos,
> Senior Software Engineer, WSO2 Inc.
>
> Blog: http://nirmalfdo.blogspot.com/
>
--
Best Regards,
Nirmal
Nirmal Fernando.
PPMC Member & Committer of Apache Stratos,
Senior Software Engineer, WSO2 Inc.
Blog: http://nirmalfdo.blogspot.com/
Re: [Autoscaling] Allowing users to configure an upper and a lower
limit of threshold values
Posted by Nirmal Fernando <ni...@gmail.com>.
4.1.0
On Tue, Apr 29, 2014 at 12:18 PM, Lahiru Sandaruwan <la...@wso2.com>wrote:
> Hi Nirmal,
>
> Which release do you plan to add this feature?
>
> Thanks.
>
>
> On Tue, Apr 29, 2014 at 6:08 AM, Nirmal Fernando <ni...@gmail.com>wrote:
>
>> Hi All,
>>
>> Current auto-scaler takes only the 'average' threshold value from a
>> user's auto-scaling policy. Then inside the scaling related drools rules it
>> calculates an upper bound and a lower bound by multiplying the average
>> threshold value by two non-configurable constants.
>>
>> scaleUp : Boolean() from ((rifReset && (rifPredictedValue >
>> rifAverageLimit * *0.8*)) || (mcReset && (mcPredictedValue >
>> mcAverageLimit * 0.8)) || (laReset && (laPredictedValue > laAverageLimit *
>> 0.8)))
>> scaleDown : Boolean() from ((rifReset && (rifPredictedValue <
>> rifAverageLimit ** 0.1*)) && (mcReset && (mcPredictedValue <
>> mcAverageLimit * 0.1)) && (laReset && (laPredictedValue < laAverageLimit *
>> 0.1)))
>>
>> IMO this is a limitation and we could make these constants configurable
>> via auto-scaling policy.
>>
>> So, I propose following format to the auto-scaling policy:
>>
>> {
>> "id": "autoscale-policy-1",
>> "loadThresholds": {
>> "requestsInFlight": {
>> "upperLimit": 30,
>> "lowerLimit": 5
>> },
>> "memoryConsumption": {
>> "upperLimit": 80,
>> "lowerLimit": 50
>> },
>> "loadAverage": {
>> "upperLimit": 100,
>> "lowerLimit": 20
>> }
>> }
>> }
>>
>> Then, we can modify the rule to consider user-defined threshold values
>> when taking the scaling decision.
>>
>> Let me know your thoughts.
>>
>> --
>> Best Regards,
>> Nirmal
>>
>> Nirmal Fernando.
>> PPMC Member & Committer of Apache Stratos,
>> Senior Software Engineer, WSO2 Inc.
>>
>> Blog: http://nirmalfdo.blogspot.com/
>>
>
>
>
> --
> --
> Lahiru Sandaruwan
> Committer and PPMC member, Apache Stratos(incubating),
> Senior Software Engineer,
> WSO2 Inc., http://wso2.com
> lean.enterprise.middleware
>
> email: lahirus@wso2.com cell: (+94) 773 325 954
> blog: http://lahiruwrites.blogspot.com/
> twitter: http://twitter.com/lahirus
> linked-in: http://lk.linkedin.com/pub/lahiru-sandaruwan/16/153/146
>
>
--
Best Regards,
Nirmal
Nirmal Fernando.
PPMC Member & Committer of Apache Stratos,
Senior Software Engineer, WSO2 Inc.
Blog: http://nirmalfdo.blogspot.com/
Re: [Autoscaling] Allowing users to configure an upper and a lower
limit of threshold values
Posted by Lahiru Sandaruwan <la...@wso2.com>.
Hi Nirmal,
Which release do you plan to add this feature?
Thanks.
On Tue, Apr 29, 2014 at 6:08 AM, Nirmal Fernando <ni...@gmail.com>wrote:
> Hi All,
>
> Current auto-scaler takes only the 'average' threshold value from a user's
> auto-scaling policy. Then inside the scaling related drools rules it
> calculates an upper bound and a lower bound by multiplying the average
> threshold value by two non-configurable constants.
>
> scaleUp : Boolean() from ((rifReset && (rifPredictedValue >
> rifAverageLimit * *0.8*)) || (mcReset && (mcPredictedValue >
> mcAverageLimit * 0.8)) || (laReset && (laPredictedValue > laAverageLimit *
> 0.8)))
> scaleDown : Boolean() from ((rifReset && (rifPredictedValue <
> rifAverageLimit ** 0.1*)) && (mcReset && (mcPredictedValue <
> mcAverageLimit * 0.1)) && (laReset && (laPredictedValue < laAverageLimit *
> 0.1)))
>
> IMO this is a limitation and we could make these constants configurable
> via auto-scaling policy.
>
> So, I propose following format to the auto-scaling policy:
>
> {
> "id": "autoscale-policy-1",
> "loadThresholds": {
> "requestsInFlight": {
> "upperLimit": 30,
> "lowerLimit": 5
> },
> "memoryConsumption": {
> "upperLimit": 80,
> "lowerLimit": 50
> },
> "loadAverage": {
> "upperLimit": 100,
> "lowerLimit": 20
> }
> }
> }
>
> Then, we can modify the rule to consider user-defined threshold values
> when taking the scaling decision.
>
> Let me know your thoughts.
>
> --
> Best Regards,
> Nirmal
>
> Nirmal Fernando.
> PPMC Member & Committer of Apache Stratos,
> Senior Software Engineer, WSO2 Inc.
>
> Blog: http://nirmalfdo.blogspot.com/
>
--
--
Lahiru Sandaruwan
Committer and PPMC member, Apache Stratos(incubating),
Senior Software Engineer,
WSO2 Inc., http://wso2.com
lean.enterprise.middleware
email: lahirus@wso2.com cell: (+94) 773 325 954
blog: http://lahiruwrites.blogspot.com/
twitter: http://twitter.com/lahirus
linked-in: http://lk.linkedin.com/pub/lahiru-sandaruwan/16/153/146