diff --git a/README.md b/README.md
index 2cce4f8..d725c4a 100644
--- a/README.md
+++ b/README.md
@@ -123,6 +123,7 @@ resource "local_file" "metaflow_config" {
| [metadata\_service\_container\_image](#input\_metadata\_service\_container\_image) | Container image for metadata service | `string` | `""` | no |
| [metadata\_service\_enable\_api\_basic\_auth](#input\_metadata\_service\_enable\_api\_basic\_auth) | Enable basic auth for API Gateway? (requires key export) | `bool` | `true` | no |
| [metadata\_service\_enable\_api\_gateway](#input\_metadata\_service\_enable\_api\_gateway) | Enable API Gateway for public metadata service endpoint | `bool` | `true` | no |
+| [metadata\_service\_ephemeral\_storage](#input\_metadata\_service\_ephemeral\_storage) | The Gb amount of disk storage to set for the ECS task [21-200] | `number` | `21` | no |
| [resource\_prefix](#input\_resource\_prefix) | string prefix for all resources | `string` | `"metaflow"` | no |
| [resource\_suffix](#input\_resource\_suffix) | string suffix for all resources | `string` | `""` | no |
| [subnet1\_id](#input\_subnet1\_id) | First subnet used for availability zone redundancy | `string` | n/a | yes |
diff --git a/main.tf b/main.tf
index 1a0cf31..88a6df9 100644
--- a/main.tf
+++ b/main.tf
@@ -23,24 +23,25 @@ module "metaflow-metadata-service" {
resource_prefix = local.resource_prefix
resource_suffix = local.resource_suffix
- access_list_cidr_blocks = var.access_list_cidr_blocks
- database_name = module.metaflow-datastore.database_name
- database_password = module.metaflow-datastore.database_password
- database_username = module.metaflow-datastore.database_username
- db_migrate_lambda_zip_file = var.db_migrate_lambda_zip_file
- datastore_s3_bucket_kms_key_arn = module.metaflow-datastore.datastore_s3_bucket_kms_key_arn
- enable_api_basic_auth = var.metadata_service_enable_api_basic_auth
- enable_api_gateway = var.metadata_service_enable_api_gateway
- fargate_execution_role_arn = module.metaflow-computation.ecs_execution_role_arn
- iam_partition = var.iam_partition
- metadata_service_container_image = local.metadata_service_container_image
- metaflow_vpc_id = var.vpc_id
- rds_master_instance_endpoint = module.metaflow-datastore.rds_master_instance_endpoint
- s3_bucket_arn = module.metaflow-datastore.s3_bucket_arn
- subnet1_id = var.subnet1_id
- subnet2_id = var.subnet2_id
- vpc_cidr_blocks = var.vpc_cidr_blocks
- with_public_ip = var.with_public_ip
+ access_list_cidr_blocks = var.access_list_cidr_blocks
+ database_name = module.metaflow-datastore.database_name
+ database_password = module.metaflow-datastore.database_password
+ database_username = module.metaflow-datastore.database_username
+ db_migrate_lambda_zip_file = var.db_migrate_lambda_zip_file
+ datastore_s3_bucket_kms_key_arn = module.metaflow-datastore.datastore_s3_bucket_kms_key_arn
+ enable_api_basic_auth = var.metadata_service_enable_api_basic_auth
+ enable_api_gateway = var.metadata_service_enable_api_gateway
+ fargate_execution_role_arn = module.metaflow-computation.ecs_execution_role_arn
+ iam_partition = var.iam_partition
+ metadata_service_container_image = local.metadata_service_container_image
+ metadata_service_ephemeral_storage = var.metadata_service_ephemeral_storage
+ metaflow_vpc_id = var.vpc_id
+ rds_master_instance_endpoint = module.metaflow-datastore.rds_master_instance_endpoint
+ s3_bucket_arn = module.metaflow-datastore.s3_bucket_arn
+ subnet1_id = var.subnet1_id
+ subnet2_id = var.subnet2_id
+ vpc_cidr_blocks = var.vpc_cidr_blocks
+ with_public_ip = var.with_public_ip
standard_tags = var.tags
}
diff --git a/modules/metadata-service/README.md b/modules/metadata-service/README.md
index cbed1ef..d9a8021 100644
--- a/modules/metadata-service/README.md
+++ b/modules/metadata-service/README.md
@@ -29,6 +29,7 @@ If the `access_list_cidr_blocks` variable is set, only traffic originating from
| [metadata\_service\_container\_image](#input\_metadata\_service\_container\_image) | Container image for metadata service | `string` | `""` | no |
| [metadata\_service\_cpu](#input\_metadata\_service\_cpu) | ECS task CPU unit for metadata service | `number` | `512` | no |
| [metadata\_service\_memory](#input\_metadata\_service\_memory) | ECS task memory in MiB for metadata service | `number` | `1024` | no |
+| [metadata\_service\_ephemeral\_storage](#input\_metadata\_service\_ephemeral\_storage) | Disk space for disk ECS task [21-200] | `number` | `21` | no |
| [metaflow\_vpc\_id](#input\_metaflow\_vpc\_id) | ID of the Metaflow VPC this SageMaker notebook instance is to be deployed in | `string` | n/a | yes |
| [rds\_master\_instance\_endpoint](#input\_rds\_master\_instance\_endpoint) | The database connection endpoint in address:port format | `string` | n/a | yes |
| [resource\_prefix](#input\_resource\_prefix) | Prefix given to all AWS resources to differentiate between applications | `string` | n/a | yes |
@@ -52,4 +53,4 @@ If the `access_list_cidr_blocks` variable is set, only traffic originating from
| [metadata\_svc\_ecs\_task\_role\_arn](#output\_metadata\_svc\_ecs\_task\_role\_arn) | This role is passed to AWS ECS' task definition as the `task_role`. This allows the running of the Metaflow Metadata Service to have the proper permissions to speak to other AWS resources. |
| [migration\_function\_arn](#output\_migration\_function\_arn) | ARN of DB Migration Function |
| [network\_load\_balancer\_dns\_name](#output\_network\_load\_balancer\_dns\_name) | The DNS addressable name for the Network Load Balancer that accepts requests and forwards them to our Fargate MetaData service instance(s) |
-
+
\ No newline at end of file
diff --git a/modules/metadata-service/ecs.tf b/modules/metadata-service/ecs.tf
index 1abd89d..bbb495f 100644
--- a/modules/metadata-service/ecs.tf
+++ b/modules/metadata-service/ecs.tf
@@ -56,6 +56,9 @@ EOF
execution_role_arn = var.fargate_execution_role_arn
cpu = var.metadata_service_cpu
memory = var.metadata_service_memory
+ ephemeral_storage {
+ size_in_gib = var.metadata_service_ephemeral_storage
+ }
tags = merge(
var.standard_tags,
diff --git a/modules/metadata-service/variables.tf b/modules/metadata-service/variables.tf
index b38f99c..a4e0117 100644
--- a/modules/metadata-service/variables.tf
+++ b/modules/metadata-service/variables.tf
@@ -78,6 +78,12 @@ variable "metadata_service_memory" {
description = "ECS task memory in MiB for metadata service"
}
+variable "metadata_service_ephemeral_storage" {
+ type = number
+ default = 21
+ description = "The Gb amount of disk storage to set for the ECS task [21-200]"
+}
+
variable "metaflow_vpc_id" {
type = string
description = "ID of the Metaflow VPC this SageMaker notebook instance is to be deployed in"
diff --git a/variables.tf b/variables.tf
index d05c5a6..f1cdeca 100644
--- a/variables.tf
+++ b/variables.tf
@@ -108,6 +108,12 @@ variable "metadata_service_container_image" {
description = "Container image for metadata service"
}
+variable "metadata_service_ephemeral_storage" {
+ type = number
+ default = 21
+ description = "The Gb amount of disk storage to set for the ECS task [21-200]"
+}
+
variable "metadata_service_enable_api_basic_auth" {
type = bool
default = true