-
Notifications
You must be signed in to change notification settings - Fork 9
AWS Benchmarking
Theodor Amariucai edited this page Dec 6, 2021
·
18 revisions
-
Create an AWS account, then go to
My security credentials->Access keys (access key ID and secret access key)->Create New Access Key. Take note of your Access Key ID and Secret Access Key. - Fetch the deployment branch of STeLLAR, containing the binary as well as other useful configuration files.
git clone --single-branch --branch deployment https://github.com/ease-lab/STeLLAR.git
- Perform some basic update operations, as well as install useful tools (tmux).
cd STeLLAR/scripts && bash setup.sh
cd aws && bash setup.sh # Note: here please use your AWS Access Key created at step 1
-
Add permissions for the Lambda functions: IAM console -> Roles -> Create Role -> Lambda -> Select policies
AWSLambdaFullAccess,AWSLambdaBasicExecutionRole(for logging),AWSLambdaRole(for triggering other lambdas in a producer-consumer chain scenario) andAmazonS3FullAccess(for inter-function storage transfers using S3) -> Enter name exactly asLambdaProducerConsumer. Take note of this role ARN (e.g.,arn:aws:iam::12-DIGIT-NUMBER:role/LambdaProducerConsumer). Replace the value of constantlambdaExecutionRoleinsetup/deployment/connection/amazon/deploy.gowith this role ARN. Replace constantUserARNNumberinsrc/setup/deployment/container.gowith the 12-DIGIT-NUMBER of this role ARN. -
Permissions for the client: IAM console -> Users -> Create User. Attach
AWSLambda_FullAccessandAmazonS3FullAccessto this user, and then create and attach another policy, e.g., namedAPIGatewayFull, which hasAPI Gateway Full access All resources. -
Local client authentication: IAM console -> Users -> Summary -> Security credentials -> Create access key. Make sure to keep creating keys until there are no forward slashes in them. Take note of your Access key ID (e.g.,
AKIAU4EZSQEM3S42BXY5) and Secret access key (e.g.,vAbqZTA3MpxctAi4zvS5QW4Qvvhpkg53lALgDUDV). Configure your local AWS CLI by runningaws configure, use your Access Key ID and Secret access key. The default region name used in the client isus-west-1.
To further enable function deployments via container images:
- Create a private Amazon ECR repository with the name
vhive-bench. - IAM console -> Users. Select your user created in step 2 and attach the
AmazonEC2ContainerRegistryFullAccesspermission policy to it.
We have provided ready-made configurations that helped us generate our published results, but you can easily design your own experiments.
sudo ./main -o latency-samples -g endpoints -c experiments/data-transfer/inline/aws/quick-warm-IAT10s.json
sudo ./main -o latency-samples -g endpoints -c experiments/data-transfer/storage/