Skip to main content
Version: 3.6.5

Deploy Resoto to AWS with Cloud Development Kit

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

Directions

  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=3.6.5
    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=3.6.5 --parameters MngInstanceType=r5a.xlarge
    ParameterDescriptionDefault Value
    ResotoTagThe Resoto image tag to use3.6.5
    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 groupr5a.xlarge
  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
    info
    • The value of ResotoEKS.ResotoEKSConfigCommandXXXX in Outputs is a command to configure kubectl to connect to the EKS cluster.

      You can check that the connection is working by running the following command:

      $ kubectl get pods -A | grep resotocore
      ​resoto resoto-resotocore-xxx 1/1 Running 0 32m
    • The value of ResotoEKS.ResotoPskSecret in Outputs is a command to retrieve the Resoto PSK.

      $ kubectl get secrets resoto-psk -o jsonpath='{.data.psk}' | base64 -d
    • The value of ResotoEKS.ResotoUI in Outputs is the URL of the Resoto UI.

Contact Us

Have feedback or need help? Don’t be shy—we’d love to hear from you!

 

 

 

Some Engineering Inc.