On Wed, Nov 2, 2016 at 4:46 PM, Kasun De Silva <[email protected]> wrote:
> Hi Lakmal, > > This is on demand. we do not create an HPA kind for each application / >> service version that user creates. > > > This means we initially provide a settings level config to enable > autoscaling for an application rather than creating an HPA for each > application / service user creates. We only create HPA for apps / services > which are configured (enabled) autoscaling. > > But we might have to revisit and work on UX accordingly to provide server > less experience of AppCloud with subscription tiers and all. > > +1 > Thanks, > Kasun > > > On Wed, Nov 2, 2016 at 2:20 PM, Lakmal Warusawithana <[email protected]> > wrote: > >> >> >> On Wed, Nov 2, 2016 at 1:04 PM, Kasun De Silva <[email protected]> wrote: >> >>> Hi All, >>> >>> Past couple of days I was working on a POC for the $subject. >>> >>> Following is the current model that AppCloud use to create application / >>> services. Basically for each application / service AppCloud will create a >>> *Deployment >>> >> ReplicaSet >> Pod* in Kubernetes cluster. At this point each >>> ReplicaSet created has only one replica which is a Pod. This deployment >>> does not scale up or scale down under any circumstances. >>> >>> This effort is to bring up a new feature to autoscale the application / >>> service deployed in AppCloud according to certain metrics. >>> >>> Basically as usual AppCloud will create a *Deployment >> RS >> Pod* in >>> Kubernetes for each application / service created as in above scenario. >>> >>> With the new feature, user can set auto-scaling parameters in the >>> application settings level. We are using Kubernetes v1.3.4, and by default >>> it accepts following parameters for *Horizontal Pod Autoscaler* (HPA). >>> >>> 1. Minimum # of pods >>> 2. Maximum # of pods >>> 3. Target CPU Utilization >>> >>> >>> and the autoscaling logic will be following, >>> >>> TargetNumOfPods = ceil(sum(CurrentPodsCPUUtilization) >>> / TargetCPUUtilization) >>> >>> But target number of pods will be bounded by the values provided for the >>> MinPods and MaxPods values. >>> >>> MinPods <= TargetNumOfPods <= MaxPods >>> >>> When user set the auto scale parameters AppCloud will basically create a >>> Kubernetes HPA kind for the particular appllication / service version (This >>> is on demand. we do not create an HPA kind for each application / service >>> version that user creates.). So that HPA for that particular version will >>> take responsibility of scaling up, scaling down of pods according to the >>> given threshold. Following will be the model that we are using in >>> Kubernetes with the autoscaling feature in AppCloud. >>> >> >> I did not get this? Can't we set Minimum # of pods , Maximum # of pods >> and Target CPU Utilization per application ? >> >> >>> >>> Your thoughts and comments are welcome on this. >>> >>> Thanks, >>> Kasun >>> >>> -- >>> *Kasun de Silva* >>> Senior Software Engineer | Cloud TG >>> >>> WSO2 Inc <http://wso2.com>*. *|* E*mail : [email protected] | Mobile: +94 >>> 77 794 4260 >>> >>> >> >> >> -- >> Lakmal Warusawithana >> Director - Cloud Architecture; WSO2 Inc. >> Mobile : +94714289692 >> Blog : http://lakmalsview.blogspot.com/ >> >> > > > -- > *Kasun de Silva* > Senior Software Engineer | Cloud TG > > WSO2 Inc <http://wso2.com>*. *|* E*mail : [email protected] | Mobile: +94 > 77 794 4260 > > -- Lakmal Warusawithana Director - Cloud Architecture; WSO2 Inc. Mobile : +94714289692 Blog : http://lakmalsview.blogspot.com/
_______________________________________________ Architecture mailing list [email protected] https://mail.wso2.org/cgi-bin/mailman/listinfo/architecture
