Deploy Target and Collaboration Requirements
Deploy Target Base Requirements
For the base Deploy Target, with the assumption that AWS is the Cloud Service Provider, the following are required:
Network
- 1 Virtual Private Cloud (VPC)
- 3 private subnets
- 3 public subnets
- 3 network load balancers
Compute
- 3
xlarge
(non-burstable) EC2 instances for Control Plane Nodes - 6
2xlarge
(non-burstable) EC2 instances for Agent Nodes
Storage
- Roughly 700 GB of Block Storage (EBS)
- S3 buckets
- a statestore bucket
- an rKE2 bucket
- 3 log buckets
- a backup bucket
Database
- DynamoDB for Terraform state locking
Domain Name System (DNS)
- 1 private hosted zone for administrative elastic load balancing (ELB)
- Public DNS is typically handled externally and therefore isn't a requirement
Certs
- If a wildcard cert is acquired, only one cert is required. Otherwise, a cert will be required for each application's virtual service
Developer Collaboration Environment Requirements
For a Developer Collaboration Environment (DCE) which includes things like Gitlab, Jira, Confluence, and Mattermost, the following are needed in addition to the above:
Network
- 2 network load balancers
Compute
- 3
2xlarge
EC2 instances
Storage
- Roughly 15 S3 buckets
- 2 EFS file systems if Atlassian tools are being used (one for Jira and one for Confluence)
Database
- 7 RDS databases of type
db.t4g.medium
Application Licenses
- Licenses for each application being used like Jira, Confluence, etc.
- If using Jira and Confluence, miniOrange will also be needed after those apps are set up, which has its own license.