AWS EFS file system with alerting.
Install Node.js and npm first!
npm i @cfn-modules/efs-file-system
By default, the EFS file system is only writable by the Linux root user.
---
AWSTemplateFormatVersion: '2010-09-09'
Description: 'cfn-modules example'
Resources:
FileSystem:
Type: 'AWS::CloudFormation::Stack'
Properties:
Parameters:
VpcModule: !GetAtt 'Vpc.Outputs.StackName' # required
ClientSgModule: !GetAtt 'ClientSg.Outputs.StackName' # required
AlertingModule: !GetAtt 'Alerting.Outputs.StackName' # optional
KmsKeyModule: !GetAtt 'Key.Outputs.StackName' # optional
PerformanceMode: generalPurpose # optional
NumberOfAvailabilityZones: !GetAtt 'Vpc.Outputs.NumberOfAvailabilityZones' # optional (must match with the value of the vpc module)
BackupRetentionPeriod: '30' # optional
BackupScheduleExpression: 'cron(0 5 ? * * *)' # optional
TemplateURL: './node_modules/@cfn-modules/efs-file-system/module.yml'
Name | Description | Default | Required? | Allowed values |
---|---|---|---|---|
VpcModule | Stack name of vpc module | yes | ||
ClientSgModule | Stack name of client-sg module where traffic is allowed from on port 2049 to the filesystem | no | ||
AlertingModule | Stack name of alerting module | no | ||
KmsKeyModule | Stack name of kms-key module | no | ||
PerformanceMode | The performance mode of the file system | generalPurpose | no | [generalPurpose, maxIO] |
NumberOfAvailabilityZones | How many availability zones should be used? Same as in the vpc module! | 3 | no> | [2-3] |
BackupRetentionPeriod | The number of days to keep backups of the EFS file system (set to 0 to disable) | 30 | no> | [0-35] |
BackupScheduleExpression | A CRON expression specifying when AWS Backup initiates a backup job | cron(0 5 ? * * *) | no> |