Terraform AWS Cloud Infrastructure of RAPSQLBench.
-
Clone this repository:
git clone https://github.com/OpenSemanticWorld/rapsqlbench.git
-
Login to AWS via the CLI, e.g. using single sign-on (SSO):
aws configure sso
-
Change directory to
rapsqlbench/terraformand runterraform initto initialize the Terraform configuration:cd rapsqlbench/terraform; terraform init
-
Setup your own Terraform configuraton in variables.tf (!rsa pubkey for ssh).
-
Build the desired infrastructure using Terraform via main.tf, run
terraform apply
and confirm with
yesif plan is correct and fullfills your requirements. -
Important! Configure your
RAPSQLBenchsetup in config.yml before starting the benchmark. -
Perform
RAPSQLBenchusing Ansible via deploy.yml. The extra vars argument is required!ansible-playbook -i ./inventory/vm50k-eip.txt ../ansible/deploy.yml -e "@../ansible/config.yml"and confirm with
yesif prompted for ssh fingerprint. Deprecation warning of sync module is a known issue and can be ignored. Please also note that the calculated performance results at the end ofRAPSQLBenchare extracted from the postgres timings and may differ slightly from the results of the measurement file due to the low script overhead of the benchmark procedure. -
(Optional) To monitor the measurement files, connect to your remote vm via ssh and use
tailas soon asAnsiblereaches taskPerform benchmark. The hole measurement will be tracked inmeasurement.csvand gives a live overview of all metrics.tail -f -n +1 /tmp/benchmark/measurement/sp50kr2v1i2/measurement.csv
-
Destroy the infrastructure using Terraform via
main.tf, runterraform destroy
and confirm with
yesif you have all your results backed up.
Apache License 2.0
Andreas Räder (https://github.com/raederan)