The Amazon Elastic Kubernetes Service (EKS) is the AWS service an abstracted infrastructure requirement for deploying, managing, and scaling DIGIT on AWS.
Prerequisites
AWS account with the IAM permissions listed on the EKS module documentation
AWS CLI configured
AWS IAM Authenticator
kubectl
Set up and initialize your Terraform workspace
‌Clone the following repository:
...
In here, you will find three modules used to provision a EKS cluster, RDS, and Storage.
Kubernetes module:
VPC Resources:
VPC
Subnets
Internet Gateway
Route Table
EKS Cluster Resources:
IAM Role to allow EKS service to manage other AWS services
EC2 Security Group to allow networking traffic with EKS cluster
EKS Cluster
EKS Worker Nodes Resources:
IAM role allowing Kubernetes actions to access other AWS services
EC2 Security Group to allow networking traffic
Data source to fetch latest EKS worker AMI
AutoScaling Launch Configuration to configure worker instances
AutoScaling Group to launch worker instances
Database Module:
Configuration in this directory creates set of RDS resources including DB instance, DB subnet group and DB parameter group.
Storage Module:
Configuration in this directory creates EBS volume and attach it together.
Set up an environment
Here, you will find five files used to provision a VPC, security groups, iam users, storages, EKS cluster, s3 bucket. The final product should be similar to this:
...