The auto-scaling app uses monitoring data to decide when to scale a service up/down.
It is treated as an application rather than yet another service because it offers only a GUI front-end; it is not modelled as a service that other services can build upon.
#How to
Ensure that the CORD config is installed and then run:
python xos_auto_scaling_app.py
This command will start the autoscaling application and start REST server on 9991 port.
- name: cpu_source interval: 600 meters: - "cpu" sinks: - cpu_sink
To:
- name: cpu_source interval: 60 meters: - "cpu" sinks: - cpu_sink
3b) Also ensure the publisher in "cpu_sink" contains the following URL "udp://"IP of Ceilometer PUB-SUB":5004" as shown below.
- name: cpu_sink transformers: - name: "rate_of_change" parameters: target: name: "cpu_util" unit: "%" type: "gauge" scale: "100.0 / (10**9 * (resource_metadata.cpu_number or 1))" publishers: - notifier://
To:
- name: cpu_sink transformers: - name: "rate_of_change" parameters: target: name: "cpu_util" unit: "%" type: "gauge" scale: "100.0 / (10**9 * (resource_metadata.cpu_number or 1))" publishers: - notifier:// - udp://10.11.10.1:5004
To run this sample you need to have nodejs >= 4.0
installed on your local system. You can get it here
xos-apps/auto-scale/gui/env/default
and change it to:module.exports = { host: 'http://<your.cord.installation.ip>:9991' }
xos-apps/auto-scale/gui
run npm start