[efs] section - Amazon ParallelCluster
Services or capabilities described in Amazon Web Services documentation might vary by Region. To see the differences applicable to the China Regions, see Getting Started with Amazon Web Services in China (PDF).

[efs] section

Defines the configuration settings for the Amazon EFS that's mounted on the head and compute nodes. For more information, see CreateFileSystem in the Amazon EFS API Reference.

To learn how to include Amazon EFS file systems in your cluster definition, see [cluster] section / efs_settings.

To use an existing Amazon EFS file system for long-term permanent storage that's independent of the cluster life cycle, specify efs_fs_id.

If you don't specify efs_fs_id, Amazon ParallelCluster creates the Amazon EFS file system from the [efs] settings when it creates the cluster and deletes the file system and data when the cluster is deleted.

For more information, see Best practices: moving a cluster to a new Amazon ParallelCluster minor or patch version.

The format is [efs efs-name]. efs-name must start with a letter, contain no more than 30 characters, and only contain letters, numbers, hyphens (-), and underscores (_).

[efs customfs] shared_dir = efs encrypted = false performance_mode = generalPurpose

efs_fs_id

(Optional) Defines the Amazon EFS file system ID for an existing file system.

Specifying this option voids all other Amazon EFS options except for shared_dir.

If you set this option, it only supports the following types of file systems:

  • File systems that don't have a mount target in the stack's Availability Zone.

  • File systems that have an existing mount target in the stack's Availability Zone with both inbound and outbound NFS traffic allowed from 0.0.0.0/0.

The sanity check for validating efs_fs_id requires the IAM role to have the following permissions:

  • elasticfilesystem:DescribeMountTargets

  • elasticfilesystem:DescribeMountTargetSecurityGroups

  • ec2:DescribeSubnets

  • ec2:DescribeSecurityGroups

  • ec2:DescribeNetworkInterfaceAttribute

To avoid errors, you must add these permissions to your IAM role, or set sanity_check = false.

Important

When you set a mount target with inbound and outbound NFS traffic allowed from 0.0.0.0/0, it exposes the file system to NFS mounting requests from anywhere in the mount target's Availability Zone. Amazon doesn't recommend creating a mount target in the stack's Availability Zone. Instead, let Amazon handle this step. If you want to have a mount target in the stack's Availability Zone, consider using a custom security group by providing a vpc_security_group_id option under the [vpc] section. Then, add that security group to the mount target and turn off sanity_check to create the cluster.

There is no default value.

efs_fs_id = fs-12345

Update policy: If this setting is changed, the update is not allowed.

efs_kms_key_id

(Optional) Identifies the Amazon Key Management Service (Amazon KMS) customer managed key to be used to protect the encrypted file system. If this is set, the encrypted setting must be set to true. This corresponds to the KmsKeyId parameter in the Amazon EFS API Reference.

There is no default value.

efs_kms_key_id = 1234abcd-12ab-34cd-56ef-1234567890ab

Update policy: If this setting is changed, the update is not allowed.

encrypted

(Optional) Indicates whether the file system is encrypted. This corresponds to the Encrypted parameter in the Amazon EFS API Reference.

The default value is false.

encrypted = true

Update policy: If this setting is changed, the update is not allowed.

performance_mode

(Optional) Defines the performance mode of the file system. This corresponds to the PerformanceMode parameter in the Amazon EFS API Reference.

Valid options are the following values:

  • generalPurpose

  • maxIO

Both values are case sensitive.

We recommend the generalPurpose performance mode for most file systems.

File systems that use the maxIO performance mode can scale to higher levels of aggregate throughput and operations per second. However, there's a trade-off of slightly higher latencies for most file operations.

After the file system is created, this parameter can't be changed.

The default value is generalPurpose.

performance_mode = generalPurpose

Update policy: If this setting is changed, the update is not allowed.

provisioned_throughput

(Optional) Defines the provisioned throughput of the file system, measured in MiB/s. This corresponds to the ProvisionedThroughputInMibps parameter in the Amazon EFS API Reference.

If you use this parameter, you must set throughput_mode to provisioned.

The quota on throughput is 1024 MiB/s. To request a quota increase, contact Amazon Web Services Support.

The minimum value is 0.0 MiB/s.

provisioned_throughput = 1024

Update policy: This setting can be changed during an update.

shared_dir

(Required) Defines the Amazon EFS mount point on the head and compute nodes.

This parameter is required. The Amazon EFS section is used only if shared_dir is specified.

Don't use NONE or /NONE as the shared directory.

The following example mounts Amazon EFS at /efs.

shared_dir = efs

Update policy: If this setting is changed, the update is not allowed.

throughput_mode

(Optional) Defines the throughput mode of the file system. This corresponds to the ThroughputMode parameter in the Amazon EFS API Reference.

Valid options are the following values:

  • bursting

  • provisioned

The default value is bursting.

throughput_mode = provisioned

Update policy: This setting can be changed during an update.