Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Unable to mount EFS on EC2 instance; 'connection timed out' error

I am unable to mount EFS to an EC2 instance. It fails with a 'connection timed out' error.

Steps used:

  1. Connected to Amazon EC2 instance using SSH

  2. created EFS

  3. Using DNS name in EFS trying to mount EFS on to the instance(using default security group)

    sudo mount fs-0a9a08a3.efs.us-west-2.amazonaws.com:/ /usr/local/mousetrap/remote

How can I resolve this?

like image 873
Deepthi Avatar asked Apr 10 '18 21:04

Deepthi


2 Answers

This guide is for mounting EFS to Ubuntu 18:

  1. Make sure the EFS is in the same Security Group as your EC2.
  2. In that Security Group, allow ingress, type NFS, TCP port 2049, and source public or internal IP.
  3. Run sudo apt-get install nfs-common
  4. Run sudo mount -t nfs4 -o nfsvers=4.1,rsize=1048576,wsize=1048576,hard,timeo=600,retrans=2,noresvport <your-efs-id>.efs.<zone>.amazonaws.com:/ /efs
  5. Run df -h to see if your EFS is mounted properly.
  6. Run sudo vim /etc/fstab and add the following: <your-efs-id>.efs.<zone>.amazonaws.com:/ /efs nfs4 nfsvers=4.1,rsize=1048576,wsize=1048576,hard,timeo=600,retrans=2 0 0. This is to make sure it's automount after reboot.
like image 32
Amirul Avatar answered Sep 17 '22 16:09

Amirul


In order to attach EFS to EC2 instance you need to make sure that the required packages are available. Follow the steps below to get the required packages installed and mounting EFS.

sudo yum install -y amazon-efs-utils
# For centos:-
sudo yum install -y nfs-utils
# For Ubuntu:- 
sudo apt-get install nfs-common


sudo mkdir efs
sudo mount -t efs fs-2c222222:/ efs

# For encrypted EFS:
sudo mount -t efs -o tls fs-2c222222:/ efs
fs-2c222222:/ /home/ec2-user/mongodb efs defaults,_netdev 0 0 

Also make sure that EC2 instance have proper roles to get the EFS attached, security group with required privileges

like image 81
Phani Dadi Avatar answered Sep 20 '22 16:09

Phani Dadi