This project walks you through the following scenario:
- Starting off with 3 ScyllaDB nodes
- Spike in the number of requests
- Add 3 additional ScyllaDB nodes to handle requests
- Request volume goes down
- Remove 3 nodes
-
Clone the repository
git clone https://github.com/scylladb/1m-ops-demo.git cd 1m-ops-demo/tablets/scaling
-
Set your variables in
variables.tf
-
Set up EC2 instances on AWS (takes 4+ minutes)
terraform init terraform plan terraform apply
-
Start Python server
Install requirements in a new environment, and start the server:
virtualenv env source env/bin/activate pip install -r requirements.txt python app.py
Output:
* Serving Flask app 'app' * Debug mode: off WARNING: This is a development server. Do not use it in a production deployment. Use a production WSGI server instead. * Running on all addresses (0.0.0.0) * Running on http://127.0.0.1:5000 * Running on http://192.168.0.47:5000
-
Open the DEMO UI
http://127.0.0.1:5000