efs-backup

cloudposse/efs-backup/aws

Terraform Module HCL AWS

Terraform module designed to easily backup EFS filesystems to S3 using DataPipeline

Install
module "efs-backup" {
source = "cloudposse/efs-backup/aws"
version = "0.9.0"
}
⭐ Source on GitHub 📦 Registry page
README

[![README Header][readme_header_img]][readme_header_link] [![Cloud Posse][logo]](https://cpco.io/homepage) terraform-aws-efs-backup ![Build Status](https://travis-ci.org/cloudposse/terraform-aws-efs-backup) ![Latest Release](https://github.com/cloudposse/terraform-aws-efs-backup/releases/latest) ![Slack Community](https://slack.cloudposse.com) Terraform module designed to easily backup EFS filesystems to S3 using DataPipeline. The workflow is simple: Periodically launch resource (EC2 instance) based on schedule Execute the shell command defined in the activity on the instance Sync data from Production EFS to S3 Bucket by using aws-cli The execution log of the activity is stored in S3 Publish the success or failure of the activity to an SNS topic Automatically rotate the backups using S3 li

Inputs (16)
NameTypeDescriptionDefault
namestringThe Name of the application or solution (e.g. `bastion` or `portal`) required
efs_mount_target_idstringEFS Mount Target ID (e.g. `fsmt-279bfc62`) required
namespacestringNamespace (e.g. `cp` or `cloudposse`) required
ssh_key_pairstring`SSH` key that will be deployed on DataPipeline's instance required
stagestringStage (e.g. `prod`, `dev`, `staging`) required
vpc_idstringVPC ID""
use_ip_addressstringIf set to `true`, will use IP address instead of DNS name to connect to the `EFS"false"
tagsmapAdditional tags (e.g. `map('BusinessUnit`,`XYZ`){}
datapipeline_security_groupstringOptionally specify a security group to use for the datapipeline instances""
noncurrent_version_expiration_daysstringS3 object versions expiration period (days)"35"
subnet_idstringOptionally specify the subnet to use""
regionstring(Optional) AWS Region. If not specified, will be derived from 'aws_region' data ""
modify_security_groupstring Should the module modify the `EFS` security group"false"
datapipeline_configmapDataPipeline configuration options{ "email": "", "instance_type": "t2.
delimiterstringDelimiter to be used between `name`, `namespace`, `stage`, etc."-"
attributeslistAdditional attributes (e.g. `efs-backup`)[]
Outputs (5)
datapipeline_ids — Datapipeline ids
security_group_id — Security group id
sns_topic_arn — Backup notification SNS topic ARN
logs_bucket_name — Logs bucket name
backups_bucket_name — Backups bucket name
Resources (7)
aws_cloudformation_stackaws_iam_instance_profileaws_iam_roleaws_iam_role_policy_attachmentaws_s3_bucketaws_security_groupaws_security_group_rule
Details
FrameworkTerraform Module
LanguageHCL
Version0.9.0
Cloud AWS
★ Stars43
Forks33
Total downloads7.1k
Inputs16
Outputs5
Resources7
LicenseApache-2.0
Namespacecloudposse
Updated