This is needed for first the usage only.
- Configure AWS CLI if not done already
- Install terraform (https://developer.hashicorp.com/terraform/downloads?product_intent=terraform)
- Run
terraform initin repository root directory - Install golang
- Run
git submodule updatein repository root directory to fetch scylla terraform provider - Run
go buildin terraform-provider-scylladbcloud submodule directory to build it - Run
./create-tf-rc-file.shin repository root directory, adjustlocal_scylla_provider_directorypath inside the script first! (TODO: automate this) - Get API auth token for your account from Scylla Cloud support team.
- Run
terraform apply -auto-approvein repository root directory - Do benchmarking
- Run
terraform destroy -auto-approvewhen you're done with the instances and table
Benchmarking is not fully automated yet. You'd need to adjust some things but in general ./bench.sh can run on:
- DynamoDB
- Alternator
- Scylla CQL
- Run
terraform output -json loader_public_ipsanytime to get loader IPs - Use
ssh -v -o "StrictHostKeyChecking no" -i ./private_key ubuntu@{IP}to login into any instance - In case something fails during
applyyou can safely retry it to continue and reconcile the state - Create variables files named for instance
defaults.tfvarswith following content:dynamo_testing = false scylla_cloud_token = "YOUR_TOKEN_HERE"and use terraform commands with -var-file="defaults.tfvars" to avoid typing them every time.