SmartScale is a complete system for running distributed workflow applications, using HyperFlow engine and Amazon Web Services platform in urgent computing.
I consists of two major parts:
- SmartScale application
- deployment mechanisms and configuration
Application responsible for the autoscaling mechanisms. Uses metrics collected and pushed by HyperFlow Monitoring Plugin describing current state of the running application to come up with the scaling decisions.
It uses AWS API (Java SDK) to configure and instruct the AWS Auto Scaling mechanisms.
All necessary components have been mapped to Docker container images, available on DockerHub:
Docker Compose is used for choreography of the services (HyperFlow + Redis + RabbitMQ, SmartScale).
During deployment, ready-made initialising scripts are used to configure the AWS objects during their creation. The scripts need to be adjusted to the user and application's needs.