Skip to content

Latest commit

 

History

History
55 lines (45 loc) · 6.02 KB

File metadata and controls

55 lines (45 loc) · 6.02 KB

Terraform AWS New Relic ECS Fargate PHP Daemon Module

This module creates an ECS Service running the New Relic PHP Daemon as a container. This is recommended for PHP applications running on Fargate. See:

https://docs.newrelic.com/docs/apm/agents/php-agent/advanced-installation/docker-other-container-environments-install-php-agent/

Inputs

Name Description Type Default Required
container_host_port The external port that the container can be connected to. number 31339 no
container_image The image used to start the container. string "newrelic/php-daemon:10.11.0" no
container_name The name of the container in the task definition. string "new-relic" no
container_port The port that the container is listening on. number 31339 no
ecs_cluster_name The name of the ECS cluster to run the task in. string n/a yes
ecs_desired_count The number of instances of the task definition to place and keep running. number 1 no
ecs_security_groups A list of security group IDs to associate with the task. list(string) [] no
ecs_service_name The name of the ECS service. Defaults to task_definition_name. string null no
ecs_subnets A list of subnet IDs to launch the task in. list(string) n/a yes
enable_ecs_cluster If enabled, will create an ECS Cluster with the given name. bool false no
enable_ecs_service_discovery Enable service discovery for the ECS service. bool false no
enable_execute_command Enable execute command for the task. bool true no
enable_security_group Create and attach a default security group for the ECS service. bool true no
security_group_egress_rules A list of egress rules to apply to the security group. list(any)
[
{
"cidr_blocks": [
"0.0.0.0/0"
],
"description": "Allow all outbound traffic.",
"port": 0,
"protocol": "-1"
}
]
no
security_group_ingress_rules A list of ingress rules to apply to the security group. list(any)
[
{
"cidr_blocks": [
"10.0.0.0/8"
],
"description": "Allow NR Daemon traffic from VPC.",
"port": 31339,
"protocol": "tcp"
}
]
no
security_group_name The name of the security group. string null no
security_group_vpc The VPC ID. If not provided, the first subnets VPC will be used. string null no
service_discovery_name The service discovery name to use. string "php-daemon" no
service_discovery_namespace_id The ID of the namespace to use for service discovery. string null no
service_discovery_private_dns_namespace_name The name of the private DNS namespace to create. Required if enable_ecs_service_discovery is enabled and service_discovery_namespace_id is not provided. string null no
service_discovery_private_dns_namespace_vpc The VPC ID to associate with the private DNS namespace. If not provided, the VPC of the first subnet in the list of subnets will be used. string null no
tags Tags to add to the created resources. map(any) {} no
task_definition_cpu The number of cpu units used by the task. number 256 no
task_definition_memory The amount of memory (in MiB) used by the task. number 512 no
task_definition_name The name of the task definition. string n/a yes

Outputs

No outputs.

Providers

Name Version
aws >= 4.36

Resources

  • resource.aws_ecs_service.main (modules/fargate_php_daemon/main.tf#56)
  • resource.aws_service_discovery_private_dns_namespace.main (modules/fargate_php_daemon/main.tf#106)
  • resource.aws_service_discovery_service.main (modules/fargate_php_daemon/main.tf#115)
  • data source.aws_subnet.first (modules/fargate_php_daemon/main.tf#11)