- fix sg: need remote access to test server - Give the load generator a name - Update loadtest hcl filename in readme - Add terraform init - Disable access to the server machine by default
1.7 KiB
Terraform Consul Load Testing
Packer will output AMI IDs when it completes - save these AMI IDs as Terraform will require them later.
The generated ami will have common tag Environment = "consul-load-test"
.
==> Builds finished. The artifacts of successful builds are:
--> amazon-ebs: AMIs were created:
us-east-1: ami-19601070
Consul AMI:
Within the consul-ami/
directory
- Retrieve your Datadog API key, set this as an environment variable, ex:
export DD_API_KEY=$YOURDDAPIKEYHERE
- Set the AWS_DEFAULT_REGION for Packer, ex:
export AWS_DEFAULT_REGION=us-east-1
- Set up AWS credentials, ex:
export AWS_ACCESS_KEY_ID=#YOURAWSKEYID & export AWS_SECRET_ACCESS_KEY=YOURAWSKEY
- Run
packer build consul.pkr.hcl
.
For additional customization you can add tags within the scripts/datadog.yaml
file. An example of a tag could be "consul_version" : "consulent_175"
. These tags are searchable through the datadog dashboard. Another form of customization is changing the datacenter tag within scripts/telemetry.json
, however it is defaulted to us-east-1
.
Load Test AMI
Within the loadtest-ami/
directory
- Set the AWS_DEFAULT_REGION for Packer, ex:
export AWS_DEFAULT_REGION=us-east-1
- Run the command
packer build loadtest.pkr.hcl
The script that k6 runs is found within scripts/loadtest.js
. This script can be updated to send requests to more Consul endpoints. For additional information on k6 please check out their guides.