Skip to content

cloudfoundry/app-autoscaler-release

Folders and files

NameName
Last commit message
Last commit date
Feb 14, 2025
Mar 31, 2025
Apr 8, 2025
Nov 15, 2023
Nov 29, 2024
Apr 7, 2025
Jan 23, 2025
Dec 3, 2024
Mar 31, 2025
Mar 17, 2025
Mar 13, 2025
Apr 8, 2025
Mar 31, 2025
Apr 7, 2025
Mar 10, 2025
Apr 8, 2025
Jul 24, 2024
Oct 28, 2024
Apr 7, 2025
Feb 14, 2025
Feb 20, 2025
Sep 4, 2024
Nov 18, 2022
Apr 26, 2023
Oct 13, 2022
Mar 10, 2025
Nov 3, 2023
Mar 17, 2025
Nov 30, 2021
Apr 7, 2025
Nov 30, 2021
Jun 18, 2024
Mar 31, 2025
Mar 31, 2025
Feb 14, 2025

Repository files navigation

Application Autoscaler

The Application Autoscaler provides the capability to adjust the computation resources for Cloud Foundry applications through

  • dynamic scaling based on application performance metrics
  • dynamic scaling based on custom metrics
  • scheduled scaling based on time

Local Development

Prerequisites

Make Targets

Target Description
make generate-fakes generate mocks
make test run unit-tests against PostgreSQL
make clean && make test POSTGRES_TAG=x.y run unit-tests against specific PostgreSQL version
make test db_type=mysql run unit-tests against MySQL
make clean && make test db_type=mysql MYSQL_TAG=x.y run unit-tests against specific MySQL version
make integration run integration-tests against PostgreSQL
make clean && make integration POSTGRES_TAG=x.y run integration-tests against specific PostgreSQL version
make integration db_type=mysql run integration-tests against MySQL
make clean && make integration db_type=mysql MYSQL_TAG=x.y run integration-tests against specific MySQL version
make acceptance-tests run acceptance-tests, see AutoScaler UAT guide for details
make lint check code style
OPTS=--fix RUBOCOP_OPTS=-A make lint check code style and apply auto-fixes
make build compile project
make deploy-autoscaler deploy Application Autoscaler and register the service broker in CF
make clean remove build artifacts

Use Application Autoscaler Service

Refer to user guide for the details of how to use the Auto-Scaler service, including policy definition, supported metrics, public API specification and command line tool.

Monitor Microservices

The app-autoscaler provides a number of health endpoints that are available externally that can be used to check the state of each component. Each health endpoint is protected with basic auth (apart from the api server), the usernames are listed in the table below, but the passwords are available in credhub.

Component Health URL Username Password Key
eventgenerator https://autoscaler-eventgenerator.((system_domain))/health eventgenerator /autoscaler_eventgenerator_health_password
metricsforwarder https://autoscaler-metricsforwarder.((system_domain))/health metricsforwarder /autoscaler_metricsforwarder_health_password
scalingengine https://autoscaler-scalingengine.((system_domain))/health scalingengine /autoscaler_scalingengine_health_password
operator https://autoscaler-operator.((system_domain))/health operator /autoscaler_operator_health_password
scheduler https://autoscaler-scheduler.((system_domain))/health scheduler /autoscaler_scheduler_health_password

These endpoints can be disabled by using the ops file example/operations/disable-basicauth-on-health-endpoints.yml

License

This project is released under version 2.0 of the Apache License.