EFS (Elastic File System)

EFS (Elastic File System)

Overview

EFS (Elastic File System) provides scalable, shared file storage for your application. Tapitalee automatically provisions Amazon EFS file systems in your AWS account, offering fully managed NFS (Network File System) storage that can be mounted simultaneously by multiple containers and instances.

Purpose and Benefits

  • Shared Storage: Multiple containers can read and write to the same file system simultaneously
  • Scalability: Automatically scales from gigabytes to petabytes without provisioning
  • High Availability: Built across multiple Availability Zones for durability
  • Performance: Low-latency access with multiple performance modes
  • POSIX Compliance: Standard file system interface compatible with most applications
  • Integration: Automatic mounting in your application containers

CLI Usage

Create EFS File System

tapit  create efs name=name [variable=EFS_MOUNT_POINT] [mount_point=/efs]

Required Parameters

  • name: File system name (alphanumeric, used for identification)

Optional Parameters

  • variable: Environment variable name for mount path (default: EFS_MOUNT_POINT)
  • mount_point: Container mount path where EFS will be available (default: /efs)

List and Show EFS File Systems

# List all addons (including EFS)
tapit list addons

# Show specific EFS details
tapit show addon name=filesystem_name

Delete EFS File System

tapit delete addon name=filesystem_name

Warning: This permanently deletes the file system and all data. Ensure you have backups before deletion.

Environment Variables

When you create an EFS file system, Tapitalee automatically injects mount information as environment variables:

  • EFS_MOUNT_POINT (or custom variable name): Path where EFS is mounted in containers

Container Integration

Automatic Mounting

Tapitalee automatically mounts EFS file systems in your containers at the specified mount point. No additional configuration is required in your application code.

eg. If your mount point was /efs then you can access files at /efs/*

Security Considerations

  • Access Control: Only your Tapitalee application containers can access by default
  • Encryption: Data encryption at rest and in transit

Performance

The filesystem is created with these AWS-specific options:

  • performance_mode: ‘generalPurpose’ (Default mode, lowest latency per operation)
  • throughput_mode: ’elastic’ (automatically scales to meet your application’s needs)