AWS offers many services to store state / data. Some are persistent, others are not.

Client Security Group

Some data stores are integrated into the VPC, others are only accessible via the AWS API. For VPC integration, you have to create a Client Security Group stack. The stack is used as a parent stack for ElastiCache, Elasticsearch, and RDS. To communicate with the data store from a EC2 instance, you have to attach the Client Security Group to the EC2 instance. The Security Group does not have any rules, but it marks traffic. The marked traffic is then allowed to enter the data store.

Installation Guide

  1. This templates depends on one of our vpc-*azs.yaml templates. Launch Stack
  2. Launch Stack
  3. Click Next to proceed with the next step of the wizard.
  4. Specify a name and all parameters for the stack.
  5. Click Next to proceed with the next step of the wizard.
  6. Click Next to skip the Options step of the wizard.
  7. Check the I acknowledge that this template might cause AWS CloudFormation to create IAM resources. checkbox.
  8. Click Create to start the creation of the stack.
  9. Wait until the stack reaches the state CREATE_COMPLETE

Dependencies

  • vpc/vpc-*azs.yaml (required)

DynamoDB table

DynamoDB table with auto scaling for read and write capacity.

Installation Guide

  1. Launch Stack
  2. Click Next to proceed with the next step of the wizard.
  3. Specify a name and all parameters for the stack.
  4. Click Next to proceed with the next step of the wizard.
  5. Click Next to skip the Options step of the wizard.
  6. Check the I acknowledge that this template might cause AWS CloudFormation to create IAM resources. checkbox.
  7. Click Create to start the creation of the stack.
  8. Wait until the stack reaches the state CREATE_COMPLETE

Dependencies

  • operations/alert.yaml (recommended)

Limitations

  • No backup (see operations/backup-dynamodb-native.yaml)
  • Encryption at rest with AWS managed CMK (customer managed is not supported)

ElastiCache memcached

Cluster of memcached nodes.

Installation Guide

  1. This templates depends on one of our vpc-*azs.yaml templates. Launch Stack
  2. This templates depends on the client-sg.yaml template. Launch Stack
  3. Launch Stack
  4. Click Next to proceed with the next step of the wizard.
  5. Specify a name and all parameters for the stack.
  6. Click Next to proceed with the next step of the wizard.
  7. Click Next to skip the Options step of the wizard.
  8. Check the I acknowledge that this template might cause AWS CloudFormation to create IAM resources. checkbox.
  9. Click Create to start the creation of the stack.
  10. Wait until the stack reaches the state CREATE_COMPLETE

Dependencies

  • vpc/vpc-*azs.yaml (required)
  • state/client-sg.yaml (required)
  • vpc/zone-*.yaml
  • vpc/vpc-ssh-bastion.yaml
  • operations/alert.yaml (recommended)

Limitations

  • No backup
  • No data replication (use as a in-memory cache only)
  • No auto scaling

Elasticsearch

Cluster of Elasticsearch nodes.

Installation Guide

  1. Create Service-Linked Role for Elasticsearch: aws --region us-east-1 iam create-service-linked-role --aws-service-name es.amazonaws.com
  2. This templates depends on one of our vpc-*azs.yaml templates. Launch Stack
  3. This templates depends on the client-sg.yaml template. Launch Stack
  4. Launch Stack
  5. Click Next to proceed with the next step of the wizard.
  6. Specify a name and all parameters for the stack.
  7. Click Next to proceed with the next step of the wizard.
  8. Click Next to skip the Options step of the wizard.
  9. Check the I acknowledge that this template might cause AWS CloudFormation to create IAM resources. checkbox.
  10. Click Create to start the creation of the stack.
  11. Wait until the stack reaches the state CREATE_COMPLETE

Dependencies

  • vpc/vpc-*azs.yaml (required)
  • state/client-sg.yaml (required)
  • vpc/zone-*.yaml
  • vpc/vpc-ssh-bastion.yaml
  • operations/alert.yaml (recommended)

Limitations

  • No auto scaling

RDS Aurora

Two node Aurora cluster for HA.

Installation Guide

  1. This templates depends on one of our vpc-*azs.yaml templates. Launch Stack
  2. This templates depends on the client-sg.yaml template. Launch Stack
  3. Launch Stack
  4. Click Next to proceed with the next step of the wizard.
  5. Specify a name and all parameters for the stack.
  6. Click Next to proceed with the next step of the wizard.
  7. Click Next to skip the Options step of the wizard.
  8. Check the I acknowledge that this template might cause AWS CloudFormation to create IAM resources. checkbox.
  9. Click Create to start the creation of the stack.
  10. Wait until the stack reaches the state CREATE_COMPLETE

Dependencies

  • vpc/vpc-*azs.yaml (required)
  • state/client-sg.yaml (required)
  • vpc/zone-*.yaml
  • vpc/vpc-ssh-bastion.yaml
  • operations/alert.yaml (recommended)

Limitations

  • No auto scaling

RDS Postgres

Multi-AZ Postgres for HA.

Installation Guide

  1. This templates depends on one of our vpc-*azs.yaml templates. Launch Stack
  2. This templates depends on the client-sg.yaml template. Launch Stack
  3. Launch Stack
  4. Click Next to proceed with the next step of the wizard.
  5. Specify a name and all parameters for the stack.
  6. Click Next to proceed with the next step of the wizard.
  7. Click Next to skip the Options step of the wizard.
  8. Check the I acknowledge that this template might cause AWS CloudFormation to create IAM resources. checkbox.
  9. Click Create to start the creation of the stack.
  10. Wait until the stack reaches the state CREATE_COMPLETE

Dependencies

  • vpc/vpc-*azs.yaml (required)
  • state/client-sg.yaml (required)
  • vpc/zone-*.yaml
  • vpc/vpc-ssh-bastion.yaml
  • operations/alert.yaml (recommended)

Limitations

  • No auto scaling

S3

S3 bucket with optional public read access.

Installation Guide

  1. Launch Stack
  2. Click Next to proceed with the next step of the wizard.
  3. Specify a name and all parameters for the stack.
  4. Click Next to proceed with the next step of the wizard.
  5. Click Next to skip the Options step of the wizard.
  6. Check the I acknowledge that this template might cause AWS CloudFormation to create IAM resources. checkbox.
  7. Click Create to start the creation of the stack.
  8. Wait until the stack reaches the state CREATE_COMPLETE