10

我无法将 EFS 挂载到 EC2 实例。它因“连接超时”错误而失败。

使用的步骤:

  1. 使用 SSH 连接到 Amazon EC2 实例

  2. 创建 EFS

  3. 在 EFS 中使用 DNS 名称尝试将 EFS 挂载到实例(使用默认安全组)

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

我该如何解决这个问题?

4

3 回答 3

15

本指南用于将 EFS 安装到 Ubuntu 18:

  1. 确保 EFS 与您的 EC2 位于同一安全组中。
  2. 在该安全组中,允许ingress、键入NFS、TCP 端口2049和源公共或内部 IP。
  3. sudo apt-get install nfs-common
  4. 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. 运行df -h以查看您的 EFS 是否正确安装。
  6. 运行sudo vim /etc/fstab并添加以下内容:<your-efs-id>.efs.<zone>.amazonaws.com:/ /efs nfs4 nfsvers=4.1,rsize=1048576,wsize=1048576,hard,timeo=600,retrans=2 0 0. 这是为了确保它在重新启动后自动挂载。
于 2019-03-20T17:02:21.353 回答
8

为了将 EFS 附加到 EC2 实例,您需要确保所需的包可用。按照以下步骤安装所需的软件包并挂载 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 

还要确保 EC2 实例具有适当的角色来获取附加的 EFS、具有所需权限的安全组

于 2018-06-06T16:33:18.087 回答
0

超时可能有几个原因。请检查以下内容:

  • ec2 和网络接口上允许安全组和端口!检查端口 2049 (nmap -Pn -p 2049)
  • 如果允许ICMP,你也可以尝试ping ip地址
  • 为了使用 DNS 主机名,它必须在 VPC 中被允许。但要排除故障,请尝试 IP

如果网络的东西不工作,检查你的所有组件是否到位。

  • 例如,您的所有组件都在同一个子网中
于 2020-06-03T06:58:40.570 回答