tyk-ansible-performance-testing
tyk-ansible-performance-testing copied to clipboard
Ansible playbook to run performance tests for the Tyk Gateway, as well as Kong Gateway, and Apollo Server
Performance Testing Tyk with Ansible
Requirements
Getting Started
-
Clone repo and navigate to the repo directory.
-
Run initalization script to initialize environment
sh scripts/init.sh. -
Create 5 different servers to conduct the testing:
- Upstream: expose port 8000 (ex. c5.2xlarge)
- Load Generator (ex. c5.2xlarge)
- Tyk: expose port 8080 (ex. c5.2xlarge)
- Kong: expose port 8000 (ex. c5.2xlarge)
- Apollo: expose port 4000 (ex. c5.2xlarge)
-
Modify
hosts.ymlfile to update ssh variables to your server(s). You can learn more about the hosts file here. -
Run
sudo ansible-playbook playbook.yml -t install -t standup -t testto run performance tests.sudois used to allow ansible to create the performance testing results files on your local machine. -
View output of performance tests under
./benchmarks/. -
Run
ansible-playbook playbook.yml -t cleanupto cleanup files and turn off services on the machines.
Documentation
Please check the /docs folder for more information about the repo.
- Tests: Explains the different REST and GraphQL tests available.
- Analysis: Explains how to use the
analyze.rscript to generate comparison graphs and csv based on the tests ran. - AWS: Explains how to use the
aws.playbook.ymlto standup the resources necessary to run the tests in AWS. - GCP: Explains how to use the
gcp.playbook.ymlto standup the resources necessary to run the tests in GCP. - Azure: Explains how to use the
azure.playbook.ymlto standup the resources necessary to run the tests in Azure. - Variables: Explains the different variables used in this repo.