Cloud Foundry autoscaling functionalities and applications pushing/scaling

495 views
Skip to first unread message

Daniele Santoro

unread,
Apr 23, 2015, 5:35:10 PM4/23/15
to bosh-...@cloudfoundry.org
Hi all,
we have a Cloud Foundry environment installed on top of OpenStack and we would like to clarify some aspects regarding applications:
1) When a new application is pushed or scaled, the new instance is positioned to a DEA that is selected by the CC. Is there a way to place an application on a particular DEA? Is it possible to move an application from a DEA to another one?
2) Applications can be scaled up/down horizontally or vertically through CLI, but can CF also scale this applications (through API calls) based on some parameters (e.g., CPU/RAM usage thresholds)?


Regarding instead the underline IaaS infrastructure, bosh permits to deploy all the VMs needed by CF to run. Bosh also provide a way to deploy changes in an incremental way.
3) If we want to change the number instances of a component (e.g., increase/reduce the number of runners/DEAs), do we need to modify the manifest and use bosh cli (via bosh deploy) or can we use some bosh APIs (maybe without modifying the deployment manifest)?
4) In addition we would like to know if there is a mechanism to increase/decrease the number of VMs dedicated to CF automatically (e.g., add a new runner where the other are full of apps). In particular we are wondering if configuring the size of the resource inside a particular resource pool in the deployment manifest permits to auto scale such resource automatically. For example:
"resource_pools:
name: runner_z1
size: 10"

Thank you


signature.asc

James Bayer

unread,
Apr 23, 2015, 5:42:36 PM4/23/15
to bosh-users
inline

On Thu, Apr 23, 2015 at 2:35 PM, Daniele Santoro <daniele...@create-net.org> wrote:
Hi all,
we have a Cloud Foundry environment installed on top of OpenStack and we would like to clarify some aspects regarding applications:
        1) When a new application is pushed or scaled, the new instance is positioned to a DEA that is selected by the CC. Is there a way to place an application on a particular DEA? Is it possible to move an application from a DEA to another one?

no placement options are currently available unless you contort the "stack" functionality of a DEA. in the future placement pools will be used for this purpose. you can see onsi's recent note on placement constraints in diego. the initial way this would probably work would be inherited from an administrator configured space assignment to a placement pool vs a developer controller the placement with metadata about a particular application. see also the older doc: https://docs.google.com/a/pivotal.io/document/d/1GNjQwGBh0BvfAYpX0LTUYn6h4oLz7v4P9pNy0xHZtMw/edit#
 
        2) Applications can be scaled up/down horizontally or vertically through CLI, but can CF also scale this applications (through API calls) based on some parameters (e.g., CPU/RAM usage thresholds)?

OSS cf does not have this functionality, but does expose the APIs to scale up and down to external services that do this. several of the commercial cloud foundry distributions offer features that do this.
 


Regarding instead the underline IaaS infrastructure, bosh permits to deploy all the VMs needed by CF to run. Bosh also provide a way to deploy changes in an incremental way.
        3) If we want to change the number instances of a component (e.g., increase/reduce the number of runners/DEAs), do we need to modify the manifest and use bosh cli (via bosh deploy) or can we use some bosh APIs (maybe without modifying the deployment manifest)?

the cli is the only supported mechanism by bosh. the rest API is considered private.
 
        4) In addition we would like to know if there is a mechanism to increase/decrease the number of VMs dedicated to CF automatically (e.g., add a new runner where the other are full of apps). In particular we are wondering if configuring the size of the resource inside a particular resource pool in the deployment manifest permits to auto scale such resource automatically. For example:
"resource_pools:
 name: runner_z1
  size: 10"


there is an OSS project by ntt and yudai called bosh-scaler that can use policy to do scaling with bosh: https://github.com/nttlabs/bosh-scaler
 
Thank you


To unsubscribe from this group and stop receiving emails from it, send an email to bosh-users+...@cloudfoundry.org.



--
Thank you,

James Bayer
Reply all
Reply to author
Forward
0 new messages