私有IP的EC2实例连接FSx OpenZFS超时,需补充哪些配置?
解决EC2私有IP挂载FSx OpenZFS超时问题
下面是排查和解决mount.nfs: Connection timed out错误的关键步骤:
检查安全组双向规则
- EC2实例安全组:需放行出站流量到FSx私有IP/子网,端口包括111(RPC)、2049(NFS),以及FSx动态端口范围1026-1048
- FSx挂载目标安全组:需放行入站流量来自EC2实例的安全组/私有IP,端口同上
注意:NFS是双向通信,两边安全组都要配置对应的规则,缺一边都会导致超时。
验证端口连通性
在EC2实例上执行以下命令测试FSx的NFS端口是否可达:nc -zv <fsx-private-ip> 2049 telnet <fsx-private-ip> 2049如果连接失败,说明网络链路存在阻断,回到安全组、路由表或网络ACL排查。同时确认FSx挂载目标处于可用状态(在FSx控制台查看)。
修正挂载命令格式
OpenZFS类型的FSx挂载必须指定具体的数据集路径,不能直接挂载根目录。正确的命令格式为:sudo mount -t nfs -o nfsvers=4.1 <fsx-dns-name>:/<dataset-name> /fsx示例:若FSx的DNS名为
fs-12345678.fsx.us-west-2.amazonaws.com,数据集为my-data,则命令为:sudo mount -t nfs -o nfsvers=4.1 fs-12345678.fsx.us-west-2.amazonaws.com:/my-data /fsx避免直接使用
my-fs这类别名,必须用完整的FSx DNS或私有IP加数据集路径。安装NFS客户端工具
确保EC2实例已安装NFS客户端:- Amazon Linux/CentOS:
sudo yum install -y nfs-utils - Ubuntu/Debian:
sudo apt install -y nfs-common
缺少客户端工具会导致挂载命令执行失败或超时。
- Amazon Linux/CentOS:
核对网络基础配置
- 确认EC2与FSx在同一VPC,或通过VPC对等连接、Transit Gateway连通,且路由表已正确指向FSx挂载目标所在子网(即使你已配置路由表,再检查是否有路由条目缺失或错误)
- 检查子网的网络ACL:网络ACL是无状态的,需同时放行入站和出站的NFS相关端口流量,任何一方的限制都会导致连接超时。
内容的提问来源于stack exchange,提问作者WhiteAB
相关产品推荐
相关产品推荐

