Skip to main content
Version: 2.4.7

Deploy Resoto to Amazon Web Services

We provide a CDK construct to simplify the deployment of Resoto to AWS.

tip

The Resoto web installer is the easiest way to get a production-grade setup, whereas the CDK construct is a bit more involved but gives you more control over the setup and does not require you to send us your cloud credentials.

Prerequisites

Deploying Resoto

  1. Run the following commands in the terminal:

    $ git clone git@github.com:someengineering/resoto-cdk.git
    $ cd resoto-cdk
    $ npm ci
  2. Then, deploy Resoto with the following command:

    $ npm run cdk deploy -- --parameters ResotoTag=2.4.7
    note

    If this is your first CDK deployment, you will need to bootstrap your AWS account. You can do so with the following command:

    $ npm run cdk bootstrap
    info

    It is possible to override the default CloudFormation parameter values:

    $ npm run cdk deploy -- --parameters ResotoTag=2.4.7 --parameters MngInstanceType=t3.large
    ParameterDescriptionDefault Value
    ResotoTagThe Resoto image tag to use
    MngMaxSizeThe maximum number of instances in the k8s managed node group3
    MngMinSizeThe minimum number of instances in the k8s managed node group1
    MngDesiredSizeThe desired number of instances in the k8s managed node group1
    MngInstanceTypeThe instance type of the k8s managed node groupt3.large
  3. Confirm the deployment. This will trigger CDK to create an EKS cluster and install the Resoto Helm chart.

    info

    The deployment will take approximately 30 minutes. You can follow the progress in the terminal.

    Once deployment is complete, you will see output similar to the following:

    Outputs:
    ResotoEKS.ResotoEKSConfigCommandXXXX = aws eks update-kubeconfig ...
    ResotoEKS.ResotoPskSecret = kubectl get secrets ...
    ResotoEKS.ResotoUI = https://a3xxxxxx.us-east-1.elb.amazonaws.com:8900

    Stack ARN:
    arn:aws:cloudformation:us-east-1:115717706081:stack/ResotoEKS/e1b9e6a0-d5f6-11eb-8498-0a374cd00e27e
  4. The value of ResotoEKS.ResotoEKSConfigCommandXXXX in Outputs is a command to configure kubectl to connect to the EKS cluster. Copy the command and paste it into your terminal.

Removing the Resoto Deployment

To remove the Resoto deployment and all associated resources, run the following command in the terminal:

$ cdk destroy
danger

Removing the Resoto stack will also delete all data stored in the Resoto database.