AWS Infrastructure Automation​

AWS Infrastructure Automation​

RapidCloud provides end-to-end AWS infrastructure automation, workflows, and code templates for popular use cases and workloads, including web and mobile applications, data migrations, analytics and business intelligence.
Use RapidCloud's AWS Architecture Modeling Tool to quickly model and visualize use-case specific architecture, from data and analytics workloads to web and mobile solutions, provide application metadata and configuration, share environments with application and DevOps engineers, implement business logic and a single button click AWS infrastructure automation.

AWS Account Prerequisites

RapidCloud creates multiple resources in AWS during its deployment stages, to deploy those resources the following prerequisites should be either provided by the customer, or created by the deployment engineer

IAM USER

The user creating the AWS resources would require the administrator IAM policy attached, it is highly recommended to follow AWS best practices for providing administrative access:

1. DO NOT use the ROOT account
2. Create an administrator role and allow users to Assume role, do not assign individual users with Direct admin access
3. Protect the accounts with MFA

SSH KEY

Several RapidCloud resources may require ssh access, a public SSH key should be provided before deploying resources.
To generate a key use the following:
ssh-keygen -t rsa -f /path/to/save/the-key

You may also generate a key using the AWS console:
  • navigate to EC2 -> Key Pairs, and click the Create Key Pair button
  • once you downloaded the .pem file, use ssh-keygen -y -f your_key.pem > your_key.pub to generate a public key


The RapidCloud Administrator would need both private and public key files.

VPC

Many AWS resources deployed by RapidCloud must run in a VPC. We recommend a VPC with the following:

  • 2 public subnets (these subnets should have internet access, directly or via an ingress VPC) a /25 ip range in each (see note below)
  • 2 private subnets with at least a /25 ip range in each

Important: Add "Tier" tag to above subnets. `Tier`=`public` and `Tier`=`private` accordingly. RapidCloud uses this tagging convention to identify subnets.

Network Access

RapidCloud would need access to the following: - Data sources (database servers, data warehouse tools, etc) - RapidCloud resources inside the VPC

RapidCloud Console

RapidCloud console is a feature rich web interface to manage all RapidCloud resources (create, list, change, delete).

Start console
kc [--port port] [--no-browser]
examples:
kc
kc --no-browser
kc --port 5001 --no-browser

If you installed RapidCloud on an Amazon Linux EC2 instance, then use following command to start the console. This will ensure console backend runs in the backround and won;t be terminated when you exit your SSH session.

nohup kc --no-browser &>./logs/rapidcloud.log &

Access at http://127.0.0.1:5000 on localhost or http://{your ip address}:5000 if running on EC2 instance, in which case you can control access permissions via EC2 Security Group Inbound Rules
Environments
Select your environment from the Environment drop-down at the top right. RapidCloud environment is an equivalent of a specific workload or application, with its own security guards and AWS resources. You can create as many environments as you need, based on various areas of your business. Single RapidCloud instance can control environments hosted in different VPCs and AWS Accounts, as long as your RapidCloud has access to those resources.

Architecture Modeling Tool
Check out Architecture Modeling tool, a quick and convenient way to visualize your target architecture..

RapidCloud Metadata
Metadata is at the core of RapidCloud functionality. Metadata describes your application specifics and drives infrastructure automation. Collect your application metadata via RapidCloud CLI or Console. For example Data Ingestion -> Semi-Structured Data, to add CSV or JSON files to the ingestion phase of your use case or Compute -> Lambda Functions to add a Lambda Function to your application.

Current Environment State
You can see your architecture shape up via Current State, as you're adding more metadata or Deployment -> AWS Resources to show list of your AWS resources.

Deployment
Once you're happy with all the metadata, you can generate Terraform modules via Deploy -> Terraform Actions -> Init or review Terraform deployment plan via Deploy -> Terraform Actions -> Plan. And then deploy your entire environment infrastructure with a single click of a button viaDeploy -> Terraform Actions -> Apply.

Incremental Changes
RapidCloud is incremental by nature. This means that once you deploy your environment, you can make incremental changes (add, change, remove metadata) and only deploy those changes with a single click, without affecting the rest of the environment.
Go ahead, click through various options on the left to get a feel for the type of use cases supported by RapidCloud (more coming soon). The only options to be careful with are Deploy and Destroy. Everything else is used by RapidCloud to maintain and show metadata and doesn't modify your AWS resources.
Click on the "i" icon next to each page header to get more information for that specific RapidCloud feature.
Start with the RapidCloud Free Tier today to utilize architecture best practices, full AWS infrastructure automation, orchestration, workflows and ready to use code templates that eliminate uncertainty and tedious foundational work.