Terraform Module Docs¶
Requirements¶
| Name | Version |
|---|---|
| terraform | >= 1.5 |
| aws | >= 5.38 |
| tls | >= 4.0.5 |
Providers¶
| Name | Version |
|---|---|
| aws | >= 5.38 |
| tls | >= 4.0.5 |
Modules¶
No modules.
Resources¶
Inputs¶
| Name | Description | Type | Default | Required |
|---|---|---|---|---|
| eks_cluster_access_cidr | List of the CIDR Ranges you want to grant public access to the EKS Cluster. | list(string) |
n/a | yes |
| name | Unreal Cloud DDC Workload Name | string |
"unreal-cloud-ddc" |
no |
| nvme_managed_node_desired_size | Desired number of nvme managed node group instances | number |
2 |
no |
| nvme_managed_node_instance_type | Nvme managed node group instance type | string |
"i3en.xlarge" |
no |
| nvme_managed_node_max_size | Max number of nvme managed node group instances | number |
2 |
no |
| peer_cidr_blocks | The peered cidr blocks you want your vpc to communicate with if you have a multi region ddc. | list(string) |
[] |
no |
| private_subnets | Private subnets you want scylla and the worker nodes to be installed into. | list(string) |
[] |
no |
| scylla_ami_name | Name of the Scylla AMI to be used to get the AMI ID | string |
"ScyllaDB 6.0.1" |
no |
| scylla_architecture | The chip architecture to use when finding the scylla image. Valid | string |
"x86_64" |
no |
| scylla_db_storage | Size of gp3 ebs volumes attached to Scylla DBs | number |
100 |
no |
| scylla_db_throughput | Throughput of gp3 ebs volumes attached to Scylla DBs | number |
200 |
no |
| scylla_dns | The local private dns name that you want Scylla to be queryable on. | string |
null |
no |
| scylla_instance_type | The type and size of the Scylla instance. | string |
"i4i.2xlarge" |
no |
| scylla_private_subnets | The subnets you want Scylla to be installed into. Can repeat subnet ids to install into the same subnet/az. This will also determine how many Scylla instances are deployed. | list(string) |
[] |
no |
| system_managed_node_desired_size | Desired number of monitoring managed node group instances. | number |
1 |
no |
| system_managed_node_instance_type | Monitoring managed node group instance type. | string |
"m5.large" |
no |
| system_managed_node_max_size | Max number of monitoring managed node group instances. | number |
2 |
no |
| vpc_id | String for VPC ID | string |
n/a | yes |
| worker_managed_node_desired_size | Desired number of worker managed node group instances. | number |
1 |
no |
| worker_managed_node_instance_type | Worker managed node group instance type. | string |
"c5.xlarge" |
no |
| worker_managed_node_max_size | Max number of worker managed node group instances. | number |
1 |
no |
Outputs¶
| Name | Description |
|---|---|
| cluster_arn | n/a |
| cluster_certificate_authority_data | n/a |
| cluster_endpoint | n/a |
| cluster_name | n/a |
| oidc_provider_arn | n/a |
| oidc_provider_identity | n/a |
| s3_bucket_id | n/a |
Requirements¶
| Name | Version |
|---|---|
| terraform | >= 1.10.3 |
| aws | >=5.73.0 |
| tls | >= 4.0.6 |
Providers¶
| Name | Version |
|---|---|
| aws | 5.91.0 |
| tls | 4.0.6 |
Modules¶
No modules.
Resources¶
Inputs¶
| Name | Description | Type | Default | Required |
|---|---|---|---|---|
| eks_cluster_cloudwatch_log_group_prefix | Prefix to be used for the EKS cluster CloudWatch log group. | string |
"/aws/eks/unreal-cloud-ddc/cluster" |
no |
| eks_cluster_logging_types | List of EKS cluster log types to be enabled. | list(string) |
[ |
no |
| eks_cluster_private_access | Allows private access of the EKS Control Plane from subnets attached to EKS Cluster | bool |
true |
no |
| eks_cluster_public_access | Allows public access of EKS Control Plane should be used with | bool |
false |
no |
| eks_cluster_public_endpoint_access_cidr | List of the CIDR Ranges you want to grant public access to the EKS Cluster's public endpoint. | list(string) |
null |
no |
| eks_node_group_subnets | A list of subnets ids you want the EKS nodes to be installed into. Private subnets are strongly recommended. | list(string) |
[] |
no |
| kubernetes_version | Kubernetes version to be used by the EKS cluster. | string |
"1.31" |
no |
| name | Unreal Cloud DDC Workload Name | string |
"unreal-cloud-ddc" |
no |
| nvme_managed_node_desired_size | Desired number of nvme managed node group instances | number |
2 |
no |
| nvme_managed_node_instance_type | Nvme managed node group instance type | string |
"i3en.large" |
no |
| nvme_managed_node_max_size | Max number of nvme managed node group instances | number |
2 |
no |
| nvme_managed_node_min_size | Min number of nvme managed node group instances | number |
1 |
no |
| nvme_node_group_label | Label applied to nvme node group. These will need to be matched in values for taints and tolerations for the worker pod definition. | map(string) |
{ |
no |
| scylla_ami_name | Name of the Scylla AMI to be used to get the AMI ID | string |
"ScyllaDB 6.0.1" |
no |
| scylla_architecture | The chip architecture to use when finding the scylla image. Valid | string |
"x86_64" |
no |
| scylla_db_storage | Size of gp3 ebs volumes attached to Scylla DBs | number |
100 |
no |
| scylla_db_throughput | Throughput of gp3 ebs volumes attached to Scylla DBs | number |
200 |
no |
| scylla_instance_type | The type and size of the Scylla instance. | string |
"i4i.2xlarge" |
no |
| scylla_subnets | A list of subnet IDs where Scylla will be deployed. Private subnets are strongly recommended. | list(string) |
[] |
no |
| system_managed_node_desired_size | Desired number of system managed node group instances. | number |
1 |
no |
| system_managed_node_instance_type | Monitoring managed node group instance type. | string |
"m5.large" |
no |
| system_managed_node_max_size | Max number of system managed node group instances. | number |
2 |
no |
| system_managed_node_min_size | Min number of system managed node group instances. | number |
1 |
no |
| system_node_group_label | Label applied to system node group | map(string) |
{ |
no |
| vpc_id | String for VPC ID | string |
n/a | yes |
| worker_managed_node_desired_size | Desired number of worker managed node group instances. | number |
1 |
no |
| worker_managed_node_instance_type | Worker managed node group instance type. | string |
"c5.large" |
no |
| worker_managed_node_max_size | Max number of worker managed node group instances. | number |
1 |
no |
| worker_managed_node_min_size | Min number of worker managed node group instances. | number |
0 |
no |
| worker_node_group_label | Label applied to worker node group. These will need to be matched in values for taints and tolerations for the worker pod definition. | map(string) |
{ |
no |
Outputs¶
| Name | Description |
|---|---|
| cluster_arn | ARN of the EKS Cluster |
| cluster_certificate_authority_data | Public key for the EKS Cluster |
| cluster_endpoint | EKS Cluster Endpoint |
| cluster_name | Name of the EKS Cluster |
| nvme_node_group_label | Label for the NVME node group |
| oidc_provider_arn | OIDC provider for the EKS Cluster |
| peer_security_group_id | ID of the Peer Security Group |
| s3_bucket_id | Bucket to be used for the Unreal Cloud DDC assets |
| scylla_ips | IPs of the Scylla EC2 instances |
| system_node_group_label | Label for the System node group |
| worker_node_group_label | Label for the Worker node group |