ScyllaDB University Live | Free Virtual Training Event
Learn more
ScyllaDB Documentation Logo Documentation
  • Server
  • Cloud
  • Tools
    • ScyllaDB Manager
    • ScyllaDB Monitoring Stack
    • ScyllaDB Operator
  • Drivers
    • CQL Drivers
    • DynamoDB Drivers
  • Resources
    • ScyllaDB University
    • Community Forum
    • Tutorials
Download
ScyllaDB Docs ScyllaDB DEMOs Get started with ScyllaDB Enterprise on AWS

Get started with ScyllaDB Enterprise on AWS¶

Follow along this video to get started:

Or use the instructions outlined below to set up AWS EC2 instances and ScyllaDB Enterprise and run 1 million ops/sec workload.

Prerequisites¶

  • AWS account and CLI credentials (more information on acquiring the credentials here and here, for OKTA you can use gimme-aws-creds)

  • Terraform installed on your machine (installation instructions here)

AWS permissions¶

Make sure that you have sufficient AWS permissions to create the following items:

  • VPC

  • Subnets

  • Security groups

  • EC2 instances

Configure Terraform and set up infrastructure¶

  1. Clone the repository:

    git clone https://github.com/scylladb/1m-ops-demo.git
    cd 1m-ops-demo/scylladb-enterprise/
    
  2. Set the required items in variables.tf:

    # Set the following variables (mandatory)
    #
    
    # AWS credentials file
    
    variable "path_to_aws_cred_file" {
    description = "AWS credentials location"
    type        = string
    default     = "/home/user/.aws/credentials"
    }
    
    # AWS credentials file
    variable "aws_creds_profile" {
    description = "AWS credentials profile"
    type        = string
    default     = "DeveloperAccessRole"
    }
    
    # SSH private key for EC2 instance access
    variable "ssh_private_key" {
    description = "SSH private key location for EC2 instance access"
    type        = string
    default     = "/home/user/Documents/key.pem"
    }
    
    variable "aws_key_pair_name" {
    description = "Key pair name in AWS"
    type        = string
    default     = "key-pair"
    }
    
    variable "aws_region" {
    description = "AWS region"
    type        = string
    default     = "us-east-2"
    }
    
    # Make sure the AMIs are available in your chosen region
    # Amazon Machine Image (AMI) ID
    variable "monitoring_ami_id" {
    description = "AMI ID for the EC2 instance"
    type        = string
    default     = "ami-068cf3d51efeb20d6"
    }
    
    # Scylla (AMI) ID
    variable "scylla_ami_id" {
    description = "AMI ID for the ScyllaDB EC2 instance"
    type        = string
    default     = "ami-0a4e6d1a9b982b961"
    }
    
    # Scylla (AMI) ID for Loader instance
    variable "loader_ami_id" {
    description = "AMI ID for the EC2 loader instance"
    type        = string
    default     = "ami-027fdd99203b5e063"
    }
    
  3. Run Terraform:

    terraform init
    terraform plan
    terraform apply
    
    Do you want to perform these actions?
    Terraform will perform the actions described above.
    Only 'yes' will be accepted to approve.
    
    Enter a value: yes
    
    [...]
    
    Apply complete! Resources: 20 added, 0 changed, 0 destroyed.
    
    Outputs:
    
    monitoring_url = "http://<ip-address>:3000"
    scylla_ips = "10.0.0.74,10.0.0.73,10.0.0.145"
    scylla_public_ips = "18.222.111.226,18.222.163.223,3.145.73.47"
    

Setting up the infrastructure takes 4+ minutes. Once Terraform is finished, go to the ScyllaDB Monitoring page (Terraform outputs the URL).

After finishing the demo, destroy the infrastructure:

terraform destroy

Was this page helpful?

PREVIOUS
Get started with ScyllaDB Cloud
  • Create an issue
  • Edit this page

On this page

  • Get started with ScyllaDB Enterprise on AWS
    • Prerequisites
      • AWS permissions
    • Configure Terraform and set up infrastructure
ScyllaDB DEMOs
  • DEMO UI
  • Getting started with Cloud
  • Getting started with Enterprise
  • Blogpost - Set Up Your Own 1M OPS Benchmark
  • GitHub repository
Docs Tutorials University Contact Us About Us
© 2025, ScyllaDB. All rights reserved. | Terms of Service | Privacy Policy | ScyllaDB, and ScyllaDB Cloud, are registered trademarks of ScyllaDB, Inc.
Last updated on 05 May 2025.
Powered by Sphinx 7.4.7 & ScyllaDB Theme 1.8.6