Automated Cloud Advisor

Automated Cloud Advisor

  • Docs
  • GitHub

›Getting Started

Getting Started

  • Getting Started
  • Prerequisites

Build Infrastructure

  • Schedule Trusted Advisor Refresh
  • Index Events To DynamoDB
  • Stream Index To ElasticSearch

Build Dashboard

  • Kibana

Prerequisites

AWS

The installation assumes that the following AWS resources have been created/set-up and can be referenced in the us-east-1 region:

  • AWS account
  • AWS CLI
  • IAM credentials
  • S3 bucket
  • VPC
    • Subnets
    • SG
  • Trusted Advisor

Review Trusted Advisor for more customization.

Permission

Credentials

You should have valid credentials to interact with the AWS CLI. This tool will allow you to use the --profile argument.

Cloudformation

Automated Cloud Advisor is provided as a set of Cloudformation templates, the deployment of which leading to the provisioning of the various required resources.

The deployment of the templates requires the caller to have enough IAM access rights for the creation of the following resources:

3: 'AWS::IAM::ManagedPolicy'
3: 'AWS::IAM::Role'
3: 'AWS::Lambda::Function'
2: 'AWS::Events::Rule'
2: 'AWS::Lambda::Permission'
1: 'AWS::Lambda::EventSourceMapping'
1: 'AWS::DynamoDB::Table'
1: 'AWS::Elasticsearch::Domain'

Security

S3

Your S3 bucket will be used as a reference for the lambda source code and should have the proper version enabled/ACL/Bucket Policy attached.

VPC

As a prerequisite, the deployment of the Kibana dashboard requires the existence VPC with subnets and security groups.

Cost

Infrastructure configurations can be overwritten to tweak costs. Average estimation provided below will vary on your resources.

Lambda - Less than $1 per month

AverageRefreshIndexStream
Memory128mb128mb128mb
Execution1000ms500ms50ms
Concurrency11004

DynamoDB - Less than $1 per month.

  • Read/Write - BillingMode is set to PAY_PER_REQUEST
AverageReadWrite
Consume04
AverageStream
Batch1,100 bytes

ElasticSearch - Less than $1,000 per month.

CusterMasterNodes
Typer5.large.elasticsearchr5.large.elasticsearch
Instance32
EBS
typegp2
IOPS0
GB20

Installation

Quick Setup

You can either run this script or manually set up the infrastructure in the next few steps. The script assumes that jq (a json parsing library) is installed on your system and that you have valid credentials that can be used to create AWS resources through CloudFormation.

# Download installer with npm -g
npm i -g automated-cloud-advisor
# Execute Binary
automated-cloud-advisor

You will be prompted theses questions:

alt-text

Now you can build the Kibana dashboard by clicking here.

Manual Setup

# Clone the repo
git clone git@github.com:disneystreaming/automated-cloud-advisor.git
# Change directory to the repo
cd automated-cloud-advisor

Go to the next page ->

← Getting StartedSchedule Trusted Advisor Refresh →
  • AWS
  • Permission
    • Credentials
    • Cloudformation
  • Security
    • S3
    • VPC
  • Cost
  • Installation
    • Quick Setup
    • Manual Setup
Automated Cloud Advisor
Docs
Getting StartedTrusted AdvisorDynamoDBElastic SearchKibana
Community
Disney StreamingTwitter
More
GitHubStar
Follow @disneystreaming
Disney Streaming Open Source
Copyright © 2020 Disney Streaming Services