New System Creation

The master template used in the setting up docs are an excellent way of learning to use Datomic.

When creating your first production setup it's recommended that you create the compute and storage stacks separately to aid in upgrading and access control.

It's recommended to create the storage and compute stacks separately as described below.

Prerequisites

You must have completed the steps in the setting up section up to "Create Stack". Namely you must have:

Storage Creation

The storage system must be setup first.

Stack Creation

Template selection

The template to be used depends on your needs, but it is highly recommended to use the most current version.

  • Go to the Release History.
  • Click the file icon of the Storage version you'd like.
    • This copies the template URL to your clipboard in most modern browsers.
  • Return to the AWS "Select Template" screen and paste the template URL under Specify an Amazon S3 Template URL.
  • Click "Next"

"Specify Details" Screen

Fill in the template's parameter values as specified below.

Note: Stack Name and Application Name cannot be changed later. See planning your system for guidance.

Stack Name
Choose a name for your system. Use only lowercase letters, numbers, and hyphens. ASCII characters only. Your system name gets concatenated in various contexts and so should be kept short, e.g. fewer than 24 characters.
Reuse existing storage
Set this to "False".

This CloudFormation Template creates a VPC in which to run Datomic Cloud. Configure the settings for the VPC in the VPC Configuration section. See the AWS VPC Guide for details on specifying the CIDR blocks. Unless you know you need to change the CIDR block settings, you should accept the default configuration.

VPC CIDR block
The CIDR block to assign to the VPC. Accept the defaults.
First, Second, and Third CIDR Blocks.
Datomic will configure three subnets in the VPC. These three CIDR Blocks must be subsets of the VPC CIDR Block, and they must not overlap with each other. Accept the defaults.

Click the Next button.

  • "Options" Screen
    1. Leave the default settings
    2. Click the Next button.
  • "Review" Screen
    1. Under "Capabilities", click the checkbox stating "I acknowledge that AWS CloudFormation might create IAM resources with custom names." You may need to scroll down.

      storage-iam.png

    2. Click the checkbox stating "I acknowledge that AWS CloudFormation might require the following capability: CAPABILITY_AUTO_EXPAND"
    3. Click "Create" to launch the stack.
  • Verify System

    Your Datomic system will have a Cloudwatch dashboard named datomic-\((System)-\)(Region). Open the CloudWatch dashboards and refresh the window until your dashboard appears. This can take several minutes.

    If your dashboard does not appear after 25 minutes, check for a possible CloudFormation failure.

    Once your dashboard is visible, click on it and find the "Alerts, Events" widget. If this shows zero Alerts and nonzero Events, your system is ready to go.

    In the event of failure, check the troubleshooting page.

Compute Creation

Template selection

The template to be used depends on your needs, but it is highly recommended to use the most current version.

  • Go to the Release History.
  • Click the file icon of either "Solo" or "Production", depending on what your needs are.
    • This copies the template URL to your clipboard in most modern browsers.
  • Return to the AWS "Select Template" screen and paste the template URL under Specify an Amazon S3 Template URL.
  • Click "Next"

"Specify Details" Screen

Fill in the template's parameter values as specified below.

Stack Name
Choose a name for your system. Use only lowercase letters, numbers, and hyphens. ASCII characters only. Your system name gets concatenated in various contexts and so should be kept short, e.g. fewer than 24 characters.
System Name
The "System Name" is the same as the Storage Stack "Stack Name" that was created earlier.
Start Basion?
Set this to "Yes" so that the template will start a bastion for developer internet access. You will need to authorize access to the bastion instance in a later step.
AWS EC2 Key Pair
The key pair to assign to compute nodes. Select a key pair for ssh access to nodes and the bastion host.
Application Name
Leave this blank to create an application with the same name as the system.
Environment Map
Ion environment map. Set to {:env :dev} for now.
Preload Database
All compute group instances will load this database when they start.
Existing IAM managed policy for instance
Utilize an existing IAM managed policy for this compute instance.
  • "Options" Screen
    1. Leave the default settings
    2. Click the Next button.
  • "Review" Screen

    Review your settings to make sure that they are correct. "Enable Bastion" and "KeyName" are of particular importance.

    1. Under "Capabilities", click the checkbox stating "I acknowledge that AWS CloudFormation might create IAM resources with custom names." You may need to scroll down.

      compute-iam.png

    2. Click the checkbox stating "I acknowledge that AWS CloudFormation might require the following capability: CAPABILITY_AUTO_EXPAND"
    3. Click "Create" to launch the stack.
  • Verify System

    Your Datomic system will have a Cloudwatch dashboard named datomic-\((System)-\)(Region). Open the CloudWatch dashboards and refresh the window until your dashboard appears. This can take several minutes.

    If your dashboard does not appear after 25 minutes, check for a possible CloudFormation failure.

    Once your dashboard is visible, click on it and find the "Alerts, Events" widget. If this shows zero Alerts and nonzero Events, your system is ready to go.

    In the event of failure, check the troubleshooting page.

  • Bastion

    In order to access the Compute Stack from a remote location, you will need to setup Bastion and authorize a group if necessary.