• Skip to main content

Uly.me

cloud engineer

  • Home
  • About
  • Archives

EFS CloudFormation

June 9, 2019

Here’s a simple EFS CloudFormation template with a one mount target.

{
	"AWSTemplateFormatVersion": "2010-09-09",
	"Description": "EFS example setup",
	"Parameters": {
		"VPC": {
			"Description": "VPC ID",
			"Type": "AWS::EC2::VPC::Id"
		},
		"Subnet": {			
			"Description": "Subnet ID",
			"Type": "AWS::EC2::Subnet::Id"
		},
		"EC2SecurityGroup": {
			"Description": "Security Group for EC2 instance",
			"Type": "AWS::EC2::SecurityGroup::Id"
		}	
	},
	"Resources": {
		"EFSFileSystem": {
			"Type" : "AWS::EFS::FileSystem",
			"Properties" : {
				"FileSystemTags" : [
					{"Key" : "Name", "Value" : {"Ref": "AWS::StackName"}}
				]
			}
		},
		"EFSMountTarget": {
			"Type": "AWS::EFS::MountTarget",
			"Properties": {
				"FileSystemId": {"Ref": "EFSFileSystem"},
				"SubnetId": { "Ref": "Subnet" },
				"SecurityGroups": [{"Ref": "EFSSecurityGroup"}]        
			}
		},
		"EFSSecurityGroup": {
			"Type": "AWS::EC2::SecurityGroup",
			"Properties": {
				"GroupDescription": "Allowing access to EFS",
				"VpcId": {"Ref": "VPC"},
				"SecurityGroupIngress": [{
					"IpProtocol": "tcp",
					"FromPort": 2049,
					"ToPort": 2049,
					"SourceSecurityGroupId": {"Ref": "EC2SecurityGroup"}
				}]
			}
		}				
	}
}

{ "AWSTemplateFormatVersion": "2010-09-09", "Description": "EFS example setup", "Parameters": { "VPC": { "Description": "VPC ID", "Type": "AWS::EC2::VPC::Id" }, "Subnet": { "Description": "Subnet ID", "Type": "AWS::EC2::Subnet::Id" }, "EC2SecurityGroup": { "Description": "Security Group for EC2 instance", "Type": "AWS::EC2::SecurityGroup::Id" } }, "Resources": { "EFSFileSystem": { "Type" : "AWS::EFS::FileSystem", "Properties" : { "FileSystemTags" : [ {"Key" : "Name", "Value" : {"Ref": "AWS::StackName"}} ] } }, "EFSMountTarget": { "Type": "AWS::EFS::MountTarget", "Properties": { "FileSystemId": {"Ref": "EFSFileSystem"}, "SubnetId": { "Ref": "Subnet" }, "SecurityGroups": [{"Ref": "EFSSecurityGroup"}] } }, "EFSSecurityGroup": { "Type": "AWS::EC2::SecurityGroup", "Properties": { "GroupDescription": "Allowing access to EFS", "VpcId": {"Ref": "VPC"}, "SecurityGroupIngress": [{ "IpProtocol": "tcp", "FromPort": 2049, "ToPort": 2049, "SourceSecurityGroupId": {"Ref": "EC2SecurityGroup"} }] } } } }

Filed Under: Cloud Tagged With: aws, cloudformation, efs, mount target, template

Search This Website

Subscribe Via Email

  • Home
  • About
  • Archives

Copyright © 2023