# Terraform: ipam-core/netbox ## Requirements | Name | Version | |------|---------| | [terraform](#requirement\_terraform) | ~> 1.10 | | [aws](#requirement\_aws) | ~> 5.24 | ## Providers | Name | Version | |------|---------| | [aws](#provider\_aws) | 5.99.0 | ## Modules | Name | Source | Version | |------|--------|---------| | [app](#module\_app) | terraform-aws-modules/ecs/aws//modules/service | ~> 5.2 | | [ci\_iam\_role](#module\_ci\_iam\_role) | ./modules/ci | n/a | | [db](#module\_db) | terraform-aws-modules/rds/aws | ~> 6.2 | | [db\_password](#module\_db\_password) | terraform-aws-modules/secrets-manager/aws | ~> 1.1 | | [ecs\_cluster\_1](#module\_ecs\_cluster\_1) | terraform-aws-modules/ecs/aws//modules/cluster | ~> 5.2 | | [lb](#module\_lb) | terraform-aws-modules/alb/aws | ~> 9.0 | | [secret\_key](#module\_secret\_key) | terraform-aws-modules/secrets-manager/aws | ~> 1.1 | | [vpc](#module\_vpc) | terraform-aws-modules/vpc/aws | ~> 5.1 | ## Resources | Name | Type | |------|------| | [aws_autoscaling_group.netbox_asg](https://registry.terraform.io/providers/hashicorp/aws/latest/docs/resources/autoscaling_group) | resource | | [aws_backup_plan.this](https://registry.terraform.io/providers/hashicorp/aws/latest/docs/resources/backup_plan) | resource | | [aws_backup_selection.netbox](https://registry.terraform.io/providers/hashicorp/aws/latest/docs/resources/backup_selection) | resource | | [aws_backup_vault.this](https://registry.terraform.io/providers/hashicorp/aws/latest/docs/resources/backup_vault) | resource | | [aws_elasticache_cluster.redis](https://registry.terraform.io/providers/hashicorp/aws/latest/docs/resources/elasticache_cluster) | resource | | [aws_launch_configuration.netbox](https://registry.terraform.io/providers/hashicorp/aws/latest/docs/resources/launch_configuration) | resource | | [aws_lb.netbox_nlb](https://registry.terraform.io/providers/hashicorp/aws/latest/docs/resources/lb) | resource | | [aws_lb_listener.netbox_listener](https://registry.terraform.io/providers/hashicorp/aws/latest/docs/resources/lb_listener) | resource | | [aws_lb_listener.netbox_listener_80](https://registry.terraform.io/providers/hashicorp/aws/latest/docs/resources/lb_listener) | resource | | [aws_lb_target_group.netbox_tg_443](https://registry.terraform.io/providers/hashicorp/aws/latest/docs/resources/lb_target_group) | resource | | [aws_lb_target_group.netbox_tg_80](https://registry.terraform.io/providers/hashicorp/aws/latest/docs/resources/lb_target_group) | resource | | [aws_lb_target_group_attachment.netbox_tg_attachment_443](https://registry.terraform.io/providers/hashicorp/aws/latest/docs/resources/lb_target_group_attachment) | resource | | [aws_lb_target_group_attachment.netbox_tg_attachment_80](https://registry.terraform.io/providers/hashicorp/aws/latest/docs/resources/lb_target_group_attachment) | resource | | [aws_security_group.alb](https://registry.terraform.io/providers/hashicorp/aws/latest/docs/resources/security_group) | resource | | [aws_security_group.netbox_nlb](https://registry.terraform.io/providers/hashicorp/aws/latest/docs/resources/security_group) | resource | | [aws_security_group.rds](https://registry.terraform.io/providers/hashicorp/aws/latest/docs/resources/security_group) | resource | | [aws_security_group.redis](https://registry.terraform.io/providers/hashicorp/aws/latest/docs/resources/security_group) | resource | | [aws_vpc_endpoint_service.netbox](https://registry.terraform.io/providers/hashicorp/aws/latest/docs/resources/vpc_endpoint_service) | resource | | [aws_vpc_security_group_egress_rule.alb_egress_all](https://registry.terraform.io/providers/hashicorp/aws/latest/docs/resources/vpc_security_group_egress_rule) | resource | | [aws_vpc_security_group_egress_rule.netbox_nlb_egress](https://registry.terraform.io/providers/hashicorp/aws/latest/docs/resources/vpc_security_group_egress_rule) | resource | | [aws_vpc_security_group_egress_rule.rds_egress_all](https://registry.terraform.io/providers/hashicorp/aws/latest/docs/resources/vpc_security_group_egress_rule) | resource | | [aws_vpc_security_group_egress_rule.redis_egress_all](https://registry.terraform.io/providers/hashicorp/aws/latest/docs/resources/vpc_security_group_egress_rule) | resource | | [aws_vpc_security_group_ingress_rule.alb_ingress_443](https://registry.terraform.io/providers/hashicorp/aws/latest/docs/resources/vpc_security_group_ingress_rule) | resource | | [aws_vpc_security_group_ingress_rule.alb_ingress_80](https://registry.terraform.io/providers/hashicorp/aws/latest/docs/resources/vpc_security_group_ingress_rule) | resource | | [aws_vpc_security_group_ingress_rule.netbox_nlb_ingress](https://registry.terraform.io/providers/hashicorp/aws/latest/docs/resources/vpc_security_group_ingress_rule) | resource | | [aws_vpc_security_group_ingress_rule.netbox_nlb_ingress_http](https://registry.terraform.io/providers/hashicorp/aws/latest/docs/resources/vpc_security_group_ingress_rule) | resource | | [aws_vpc_security_group_ingress_rule.rds_ingress_5432](https://registry.terraform.io/providers/hashicorp/aws/latest/docs/resources/vpc_security_group_ingress_rule) | resource | | [aws_vpc_security_group_ingress_rule.redis_ingress_6379](https://registry.terraform.io/providers/hashicorp/aws/latest/docs/resources/vpc_security_group_ingress_rule) | resource | | [aws_iam_role.backup](https://registry.terraform.io/providers/hashicorp/aws/latest/docs/data-sources/iam_role) | data source | | [aws_kms_key.aws_backup](https://registry.terraform.io/providers/hashicorp/aws/latest/docs/data-sources/kms_key) | data source | | [aws_secretsmanager_secret.okta_openidconnect](https://registry.terraform.io/providers/hashicorp/aws/latest/docs/data-sources/secretsmanager_secret) | data source | | [aws_secretsmanager_secret_version.db_password](https://registry.terraform.io/providers/hashicorp/aws/latest/docs/data-sources/secretsmanager_secret_version) | data source | | [aws_secretsmanager_secret_version.okta_openidconnect](https://registry.terraform.io/providers/hashicorp/aws/latest/docs/data-sources/secretsmanager_secret_version) | data source | | [aws_ssm_parameter.ecs_optimized_ami](https://registry.terraform.io/providers/hashicorp/aws/latest/docs/data-sources/ssm_parameter) | data source | ## Inputs | Name | Description | Type | Default | Required | |------|-------------|------|---------|:--------:| | [alb\_ssl\_policy](#input\_alb\_ssl\_policy) | The SSL policy for ALB | `string` | `"ELBSecurityPolicy-2016-08"` | no | | [asg\_instance\_type](#input\_asg\_instance\_type) | Instance type for ECS | `string` | `"t3.micro"` | no | | [availability\_zones](#input\_availability\_zones) | The availability zones to use | `list(string)` |
[| no | | [backup\_vault\_name](#input\_backup\_vault\_name) | Name of the AWS Backup vault. | `string` | `"netbox"` | no | | [certificate\_arn](#input\_certificate\_arn) | The ARN of the SSL certificate | `string` | `"arn:aws:acm:us-east-1:442426861809:certificate/f19241b9-6514-4af4-b934-f6411e88502f"` | no | | [database\_subnets](#input\_database\_subnets) | Database subnets CIDR blocks | `list(string)` |
"us-east-1a",
"us-east-1b"
]
[| no | | [db\_allocated\_storage](#input\_db\_allocated\_storage) | Allocated storage for RDS (in GB) | `string` | `20` | no | | [db\_engine](#input\_db\_engine) | Datbase Engine | `string` | `"postgres"` | no | | [db\_family](#input\_db\_family) | Datbase Family | `string` | `"postgres16"` | no | | [db\_instance\_class](#input\_db\_instance\_class) | Instance class for RDS | `string` | `"db.t4g.micro"` | no | | [db\_name](#input\_db\_name) | Database name | `string` | `"netbox"` | no | | [db\_storage\_type](#input\_db\_storage\_type) | Storage type for RDS | `string` | `"gp3"` | no | | [db\_username](#input\_db\_username) | Database username | `string` | `"netbox"` | no | | [ecs\_cluster\_name](#input\_ecs\_cluster\_name) | Name of the ECS cluster | `string` | `"netbox-cluster"` | no | | [elasticache\_subnets](#input\_elasticache\_subnets) | Elasticache subnets CIDR blocks | `list(string)` |
"10.254.0.192/27",
"10.254.0.224/27"
]
[| no | | [nat\_gateway\_enabled](#input\_nat\_gateway\_enabled) | Enable NAT gateway | `bool` | `true` | no | | [netbox](#input\_netbox) | The name used for various resources | `string` | `"netbox"` | no | | [netbox\_version](#input\_netbox\_version) | The version of NetBox to use | `string` | `"v4.0-2.9.1"` | no | | [private\_subnets](#input\_private\_subnets) | Private subnets CIDR blocks | `list(string)` |
"10.254.0.128/27",
"10.254.0.160/27"
]
[| no | | [public\_subnets](#input\_public\_subnets) | Public subnets CIDR blocks | `list(string)` |
"10.254.0.0/27",
"10.254.0.32/27"
]
[| no | | [redis\_engine](#input\_redis\_engine) | Redis Engine | `string` | `"redis"` | no | | [redis\_node\_type](#input\_redis\_node\_type) | Node type for Redis | `string` | `"cache.t4g.micro"` | no | | [redis\_parameter\_group\_name](#input\_redis\_parameter\_group\_name) | Parameter group name for Redis | `string` | `"default.redis7"` | no | | [vpc\_cidr](#input\_vpc\_cidr) | The CIDR block for the VPC | `string` | `"10.254.0.0/24"` | no | ## Outputs No outputs.
"10.254.0.64/27",
"10.254.0.96/27"
]