Introduction and Planning
In this section of the Guide, we will cover the following topics:
- Resources and Knowledge-Base
- Architecture/Network Diagram
- AWS Billable Services
1. Resources and Knowledge-Base
The iForm App is a complex solution, and it requires some AWS-related knowledge before starting the deployment. You should be familiar with such AWS services as Route53, EC2, RDS, CertificateManager, Elastic File System, Application Load Balancer. Also, you should have a good understanding of concepts such as Encryption at REST and In-Transit as well as using Security Groups and know what in-bound and out-bound internet traffic is. Also, you should be comfortable using Terraform and other CLI tools and commands using BASH or a similar shell.
This Installation Guide is intended for Linux OS. However, you can use either Linux or Mac OS to deploy the iForm from your local machine.
Please note, the iForm can run on a wide range of Linux OS and hardware. Howerver, this version of iForm is based on Amazon Linux 2. As a starting point, we also provide some recommendations on which EC2 and RDS instances to choose to measure your load and be able to scale your solution on-demand.
2. Architecture/Network Diagram
Using the Deployment Solution that comes with iForm App, you will be deploying an architecture displayed below.
3. AWS Billable Services
iForm Version 1.2 GA comes as open-source software. We don’t charge you for the software license. However, you will be charged by the AWS for Service Usage.
Below you can find the list of ALL AWS resources that this iForm Deployment Solution will create for you:
- aws_alb_listener.http
- aws_db_instance.main
- aws_db_subnet_group.private-subnet
- aws_efs_file_system.datalake
- aws_efs_mount_target.efs-mount-2-datalake
- aws_efs_mount_target.efs-mount-datalake
- aws_eip.nat
- aws_iam_instance_profile.default
- aws_iam_policy.cwagent
- aws_iam_role.assumerole
- aws_iam_role_policy_attachment.appserver-policy-role-attachment
- aws_instance.app
- aws_instance.bastion
- aws_internet_gateway.prod-igw
- aws_key_pair.ssh-key-region-key-pair
- aws_key_pair.ssh-public-key-region-key-pair
- aws_kms_key.this
- aws_lb.iform
- aws_lb_listener.https
- aws_lb_target_group.iform
- aws_lb_target_group_attachment.iform
- aws_nat_gateway.nat
- aws_route_table.prod-private-crt
- aws_route_table.prod-public-crt
- aws_route_table_association.prod-crta-private-2-subnet
- aws_route_table_association.prod-crta-private-subnet
- aws_route_table_association.prod-crta-public-2-subnet
- aws_route_table_association.prod-crta-public-subnet
- aws_security_group.appserver
- aws_security_group.bastion
- aws_security_group.datalake
- aws_security_group.loadbalancer
- aws_security_group.postgres
- aws_security_group.ses
- aws_subnet.prod-subnet-private
- aws_subnet.prod-subnet-private-2
- aws_subnet.prod-subnet-private-3
- aws_subnet.prod-subnet-public
- aws_subnet.prod-subnet-public-2
- aws_vpc.prod-vpc
- aws_vpc_endpoint.ses
You will incur charges for the resources this Solution uses. The primary billable AWS Services are:
- EC2 for Application Server
- EC2 for Bastion Server
- RDS for Database Server
- Route53 Service
- Amazon VPC
- Amazon Simple Email Service
- Amazon Elastic File System
- Amazon Application Load Balancer
- Amazon Elastic IP Address
- Amazon NET Gateway
- VPC SES Endpoint
You will also incur charges for data transition and backups, such as RDS and EBS Snapshots, EFS backups, etc.
Please follow the links below to project your expenditure before deployment
Disclaimer: Estimating costs is difficult because AWS bills by resource usage and your AWS Services usage may differ. We will NOT be liable to you or any third party for any charges or changes or discontinuance of the Service or any part of the Service.
For the most accurate way to see previous costs to predict your future costs enable:
Here is a list of optional services. These services are not required. However, we recommend using them to operate your iForm more securely.
- EC2 for Bastion Server