Skip to main content

Deployment Setup

About

Welcome to the deployment section, the third of four stages in the deployment of Private RainMaker. 🚀
This section provides a step-by-step guide to deploy Private RainMaker using AWS CloudFormation with the SAM model. We will start off with some deployment setup by explaining how to construct S3 deployment URLs and learn how to create CloudFormation stacks.

reminder
  • Before proceeding to this deployment section, please make sure that you have completed all Pre-deployment steps.
  • All AWS cases should be resolved correctly before proceeding to this section.

Derive S3 URLs​

In this section, we will derive the required deployment URLs for various ESP-Rainmaker components that would be needed later when deploying ESP-RainMaker Components.

tip

It is advisable to note this down in a word document so that you can easily derive, copy, and paste these URLs in the AWS console during stack creation.


S3 URL Template​

The link below is a template for constructing S3 URLs used by all RainMaker components. There are 5 tags within the link that needs to be configured to suit your specific deployment:

https://esp-rainmaker-sam-deployments-<MASKED_ACCOUNT_ID>-<REGION>.s3.<REGION>.<DOMAIN>/<VERSION>/packages/<PACKAGE_NAME>.yml
  1. <MASKED_ACCOUNT_ID>
  2. <REGION>
  3. <DOMAIN>
  4. <VERSION>
  5. <PACKAGE_NAME>

Configure S3 URL​

As there are differences in tags for deploying Private RainMaker in Global and China region, please select the relevant tab in which you are deploying RainMaker in. Let's proceed to derive the respective S3 URLs.

  1. Replace <MASKED_ACCOUNT_ID> with 192622e2680f.

    https://esp-rainmaker-sam-deployments-192622e2680f-<REGION>.s3.<REGION>.<DOMAIN>/<VERSION>/packages/<PACKAGE_NAME>.yml
  2. Choose the Rainmaker backend version and region you want to use. Replace <REGION> and <VERSION> in the deployment links with your selections.

    Available regions and compatible versions

    You can find the available regions here and checkout our available backend versions that is compatible with corresponding RainMaker components here.

  3. Replace <DOMAIN> with amazonaws.com.

  4. Replace <PACKAGE_NAME> with the appropriate package name:

    a. ESP-Rainmaker-Base esprainmakersambase_package.yml
    b. ESP-Rainmaker-Core esprainmakersamcore_package.yml
    c. ESP-Nested-AddOns espnestedaddons_package.yml
    d. ESP-TimeSeries esptsdata_package.yml
    e. ESP-Rainmaker-Skills deploy-3p-integration-all-regions-add-ons_package.yml

    Example URLs based of the respective package names are as shown below:

    https://esp-rainmaker-sam-deployments-192622e2680f-.s3..amazonaws.com//packages/esprainmakersambase_package.yml
    https://esp-rainmaker-sam-deployments-192622e2680f-<region>.s3.<region>.amazonaws.com/<version>/packages/esprainmakersamcore_package.yml
    https://esp-rainmaker-sam-deployments-192622e2680f-<region>.s3.<region>.amazonaws.com/<version>/packages/espnestedaddons_package.yml
    https://esp-rainmaker-sam-deployments-192622e2680f-<region>.s3.<region>.amazonaws.com/<version>/packages/esptsdata_package.yml
    https://esp-rainmaker-sam-deployments-192622e2680f-<region>.s3.<region>.amazonaws.com/<version>/packages/deploy-3p-integration-all-regions-add-ons_package.yml
    info

    You would need to replace the <REGION> and <VERSION>.

    tip

    Package for ESP-Rainmaker-Base and ESP-RainMaker-Core are both mandatory packages that needs to be derived, the rest are dependant on the type of services that you would require for your application.


Generic Steps to create a CloudFormation Stack​

about

In this sub-section, we will layout out the common steps to create a CloudFormation stack. This will be a common reference when deploying the different stacks as seen in the later section.


  1. Go to AWS Management Console
    • In Services, search for CloudFormation and click on CloudFormation.

SAR22


  1. Create a Stack

    • Click on Create stack in the CloudFormation service.

    SAR23

    • Alternative Step: If you are on the stacks page, click on Create stack and select With new resources (standard).

    Options for creating stack


  1. Select Template
    • Select the option Choose an existing template.
    • Paste the specific S3 URL for the stack you are creating in the field Amazon S3 URL by referencing the section above and click on Next.
    • For Screenshots and link, refer the specific stack sections.

  1. Configure Stack
    • Enter the stack name.
    • Fill in the required parameters.
    • Click Next.
    • For Screenshots, stack name and parameter descriptions, refer the specific stack sections.

  1. Add Tags

    • Enter the version tag as shown below:

      • Key: Version
      • Value: <VERSION> (replace <VERSION> with your selected version)
    • Click on Add new tag button, leave the rest as default, and click Next.

    CFVERSION


  1. Review and Create

    • Check the following options:

      • I acknowledge that AWS CloudFormation might create IAM resources.
      • I acknowledge that AWS CloudFormation might create IAM resources with custom names.
      • I acknowledge that AWS CloudFormation might require the following capability: CAPABILITY_AUTO_EXPAND.
    • Click on Create stack as shown below.

    SAR26


  1. Review and Submit

    • Review the stack details and click on Submit.

    SAMCFCOMPLETE


  1. Wait for Completion
    • Wait for the stack to be created. For Screenshot and completion time, refer the specific stack sections.
note

Now that you know how to create a CloudFormation stack, let's proceed with deploying the stacks for the RainMaker backend and add-on services.

On this page