- Terraform scripts for creating and deleting a test environment;
- Ansible scripts for configuring, updating, starting servers;
- In-house Python scripts for dynamic scaling, depending on the load.
Thanks to the Terraform and Ansible scripts, all operations ranging from creating instances to starting servers are performed with only six commands:
#launch the required instances in the AWS console ansible-playbook deploy-config.yml #update servers versions ansible-playbook start-application.yml #start our app on these servers ansible-playbook update-test-scenario.yml --ask-vault-pass #update the JMeter test scenario if it was changed infrastructure-aws-cluster/jmeter_clients:~# terraform apply #create JMeter servers for creating the load playbook start-jmeter-server-cluster.yml #start the JMeter cluster ansible-playbook start-stress-test.yml #start the test