1.5 KiB
1.5 KiB
Kubernetes Namespace Module
Purpose: Create Kubernetes namespace with resource quotas and limit ranges Status: ✅ Complete
Usage
module "namespace" {
source = "../../modules/kubernetes/namespace"
name = "my-app"
labels = {
app = "my-app"
env = "production"
managed = "terraform"
}
annotations = {
description = "Namespace for my-app"
}
resource_quota = {
"requests.cpu" = "4"
"requests.memory" = "8Gi"
"limits.cpu" = "8"
"limits.memory" = "16Gi"
}
limit_range = {
default = {
"cpu" = "500m"
"memory" = "1Gi"
}
default_request = {
"cpu" = "100m"
"memory" = "128Mi"
}
max = {
"cpu" = "2"
"memory" = "4Gi"
}
min = {
"cpu" = "50m"
"memory" = "64Mi"
}
max_limit_request_ratio = {
"cpu" = "4"
}
}
}
Inputs
| Name | Description | Type | Default | Required |
|---|---|---|---|---|
| name | Namespace name | string | - | yes |
| labels | Labels to apply | map(string) | {} | no |
| annotations | Annotations to apply | map(string) | {} | no |
| resource_quota | Resource quota limits | map(string) | {} | no |
| limit_range | Limit range configuration | object | {} | no |
Outputs
| Name | Description |
|---|---|
| namespace_name | Namespace name |
| namespace_id | Namespace UID |
| resource_quota_id | Resource quota ID (if created) |
Status: ✅ Complete - Ready for use