Provides an Elastic File System (EFS) mount target.

~> NOTE: As per the current documentation the limit is 1 mount target per Availability Zone for a single EFS file system.

Example Usage

resource "aws_efs_mount_target" "alpha" {
  file_system_id = "${}"
  subnet_id = "${}"

resource "aws_vpc" "foo" {
  cidr_block = ""

resource "aws_subnet" "alpha" {
  vpc_id = "${}"
  availability_zone = "us-west-2a"
  cidr_block = ""

Argument Reference

The following arguments are supported:

  • file_system_id - (Required) The ID of the file system for which the mount target is intended.
  • subnet_id - (Required) The ID of the subnet to add the mount target in.
  • ip_address - (Optional) The address (within the address range of the specified subnet) at which the file system may be mounted via the mount target.
  • security_groups - (Optional) A list of up to 5 VPC security group IDs (that must be for the same VPC as subnet specified) in effect for the mount target.

Attributes Reference

~> Note: The dns_name attribute is only useful if the mount target is in a VPC that has support for DNS hostnames enabled. See Using DNS with Your VPC and VPC resource in Terraform for more information.

The following attributes are exported:

  • id - The ID of the mount target.
  • dns_name - The DNS name for the given subnet/AZ per documented convention.
  • network_interface_id - The ID of the network interface that Amazon EFS created when it created the mount target.


The EFS mount targets can be imported using the id, e.g.

$ terraform import aws_efs_mount_target.alpha fsmt-52a643fb