This module provides a working example of how to configure the network that the Exocompute EKS cluster will run on. While there are many networking designs this module takes the example of the EKS cluster running on 2 private subnets. Internet access is provided via a NAT gateway to a public subnet, which the module also defines. It is also important to note that this module tags the subnets and any other resources so that the EKS cluster will consume and use them. The minimum network ports have been opened in the NACLs and Security Groups for the Exocompute cluster to function, either privately or publicity.
There are a few services you'll need in order to get this project off the ground:
- Terraform v1.5.6 or greater
- Install the AWS CLI - Needed for Terraform to authenticate with AWS
module "polaris-aws-cloud-native-exocompute-networking" {
source = "rubrikinc/polaris-cloud-native-exocompute-networking/aws"
aws_exocompute_subnet_public_cidr = "172.21.0.0/24"
aws_exocompute_subnet_1_cidr = "172.21.1.0/24"
aws_exocompute_subnet_2_cidr = "172.21.2.0/24"
aws_exocompute_vpc_cidr = "172.21.0.0/16"
aws_profile = var.aws_profile
rsc_exocompute_region = var.exocompute_region
}
Name | Version |
---|---|
terraform | >=1.5.6 |
aws | ~>5.26.0 |
Name | Version |
---|---|
aws | ~>5.26.0 |
No modules.
Name | Description | Type | Default | Required |
---|---|---|---|---|
aws_eks_cluster_name | EKS cluster name. | string |
"Rubrik-Exocompute-Customer-Managed" |
no |
aws_exocompute_igw_name | Name for the Internet Gateway that Exocompute will use in the AWS account and region. | string |
"Rubrik Exocompute Internet Gateway" |
no |
aws_exocompute_nat_eip_name | Name for the Elastic IP that Exocompute will use in the AWS account and region. | string |
"Rubrik Exocompute NAT EIP" |
no |
aws_exocompute_nat_gateway_name | Name for the NAT Gateway that Exocompute will use in the AWS account and region. | string |
"Rubrik Exocompute NAT Gateway" |
no |
aws_exocompute_private_route_table_name | Name for the private route table that Exocompute will use in the AWS account and region. | string |
"Rubrik Exocompute Private Route Table" |
no |
aws_exocompute_public_route_table_name | Name for the public route table that Exocompute will use in the AWS account and region. | string |
"Rubrik Exocompute Public Route Table" |
no |
aws_exocompute_security_group_control_plane_name | Name for the security group that Exocompute will use for the EKS control plane in the AWS account and region. | string |
"Exocompute-eks-control-plane-customer-managed" |
no |
aws_exocompute_security_group_worker_node_name | Name for the security group that Exocompute will use for the EKS nodes in the AWS account and region. | string |
"Exocompute-eks-worker-node-customer-managed" |
no |
aws_exocompute_subnet_1_cidr | Subnet 1 CIDR for the AWS account hosting Exocompute. | string |
n/a | yes |
aws_exocompute_subnet_2_cidr | Subnet 2 CIDR for the AWS account hosting Exocompute. | string |
n/a | yes |
aws_exocompute_subnet_private_1_name | Name for the first private subnet that Exocompute will use in the AWS account and region. | string |
"Rubrik Exocompute Subnet 1" |
no |
aws_exocompute_subnet_private_2_name | Name for the second private subnet that Exocompute will use in the AWS account and region. | string |
"Rubrik Exocompute Subnet 2" |
no |
aws_exocompute_subnet_public_cidr | Public subnet CIDR for the AWS account hosting Exocompute. | string |
n/a | yes |
aws_exocompute_subnet_public_name | Name for the public subnet that Exocompute will use in the AWS account and region. | string |
"Rubrik Exocompute Public Subnet" |
no |
aws_exocompute_vpc_cidr | VPC CIDR for the AWS account hosting Exocompute. | string |
n/a | yes |
aws_exocompute_vpc_endpoint_autoscaling_name | Autoscaling VPC endpoint name for the AWS account hosting Exocompute. | string |
"Rubrik Exocompute VPC Autoscaling Endpoint" |
no |
aws_exocompute_vpc_endpoint_ec2_name | EC2 VPC endpoint name for the AWS account hosting Exocompute. | string |
"Rubrik Exocompute VPC EC2 Endpoint" |
no |
aws_exocompute_vpc_endpoint_ecr_api_name | ECR API VPC endpoint name for the AWS account hosting Exocompute. | string |
"Rubrik Exocompute VPC ECR API Endpoint" |
no |
aws_exocompute_vpc_endpoint_ecr_dkr_name | ECR DKR VPC endpoint name for the AWS account hosting Exocompute. | string |
"Rubrik Exocompute VPC ECR DKR Endpoint" |
no |
aws_exocompute_vpc_endpoint_eks_name | EKS VPC endpoint name for the AWS account hosting Exocompute. | string |
"Rubrik Exocompute VPC EKS Endpoint" |
no |
aws_exocompute_vpc_endpoint_s3_name | S3 VPC endpoint name for the AWS account hosting Exocompute. | string |
"Rubrik Exocompute VPC S3 Endpoint" |
no |
aws_exocompute_vpc_name | VPC name for the AWS account hosting Exocompute. | string |
"Rubrik Exocompute VPC" |
no |
aws_profile | AWS profile name. | string |
n/a | yes |
rsc_exocompute_region | AWS region for the Exocompute cluster. | string |
n/a | yes |
Name | Description |
---|---|
aws_security_group_control-plane_id | n/a |
aws_security_group_worker-node_id | n/a |
rsc_exocompute_subnet_1_id | n/a |
rsc_exocompute_subnet_2_id | n/a |