【问题标题】:How to mount the AWS EFS with EC2 on different availability zone?如何使用 EC2 在不同的可用区挂载 AWS EFS?
【发布时间】:2020-01-29 15:14:10
【问题描述】:

我正在尝试使用 EC2 挂载 EFS,我所做的是在私有子网上创建 EFS,在公共子网上创建 EC2。私有子网和公共子网位于不同的可用区域,例如 us-east-1 和 us-east-2。

如果将 EC2 和 EFS 都放在公共网络中,我可以连接它们。根据官方 AWS 文档,它说

“确保在同一个目录中有一个 Amazon EFS 挂载目标 可用区作为 Amazon EC2 实例”

我不想将 EFS 放在公共子网中

将 EFS 安装到 EC2 时,我收到以下错误消息:

sudo mount -t nfs4 -o nfsvers=4.1,rsize=1048576,wsize=1048576,hard,timeo=600,retrans=2,noresvport fs-b3XXXXXXXXXXXXXXXXX.amazonaws.com:/ /mnt/wordpress

mount.nfs4: Failed to resolve server fs-b3XXXXXXXXXXXXXXXXX.amazonaws.com: No address associated with hostname

VPC的dhcp和dns相关设置全部开启。

【问题讨论】:

  • 子网是否在不同的区域或可用区?您无需在公共子网上创建 EFS,但它确实需要位于同一区域(无需 VPC 对等互连或中转网关)
  • @kenlukas 它在同一个区域,但可用区不同,因为我选择一个区域用于私有子网,另一个用于同一 VPC 下的公共子网

标签: amazon-web-services amazon-ec2


【解决方案1】:

我不想将 EFS 放在公共子网中。

这很好。您不应该这样做,尽管这在技术上并不重要,因为 EFS 端点即使放置在公共子网中仍然是私有的。

但是,如果您在 VPC 中只有两个子网(一个公共子网,一个私有子网),那么它们几乎肯定应该位于同一个可用区中。跨 AZ 边界的流量按 GB 计费,这正是您永远不应尝试跨区域边界挂载 EFS 的原因。此错误似乎是在保护您免受自己的伤害。

如前所述,如果没有令人信服的理由,您可能不应该在一个 AZ 和另一个 AZ 中设置一个子网,因此修复它是一种解决方案。另一种解决方案是在正确的区域中简单地添加一个新的私有子网。 EFS 在区域内跨越子网边界没有问题,在这种情况下不收取带宽费用。

【讨论】:

    猜你喜欢
    • 2022-01-24
    • 2018-08-30
    • 2021-01-13
    • 2022-11-10
    • 2017-11-10
    • 2018-03-25
    • 2021-07-03
    • 2022-01-16
    • 1970-01-01
    相关资源
    最近更新 更多