我遇到了一个问题,我无法使用 DNS 名称在 red hat ec2 实例上安装我的 EFS。它抛出错误
mount.nfs4: Failed to resolve server us-east-1a.fs-c2aXXXX.efs.us-east-1.amazon
aws.com: Name or service not known
我正在遵循 AWS 提供的说明。我尝试了以下两种方法来做到这一点,并且都抛出了上述相同的错误。我可以确认 DNS 名称是正确的。
第一:
mount -t nfs4 -o nfsvers=4.1,rsize=1048576,wsize=1048576,hard,timeo=600,retrans=2,noresvport fs-c2aXXXX.efs.us-east-1.amazonaws.com:/ efs
第二:mount -t nfs4 -o nfsvers=4.1,rsize=1048576,wsize=1048576,hard,timeo=600,retrans=2 $(curl -s http://169.254.169.254/latest/meta-data/placement/availability-zone).fs-c2a7XXXX.efs.us-east-1.amazonaws.com:/ /efs
但是,如果我使用 IP 而不是 DNS 名称,我就可以很好地安装它。所以下面的命令有效。mount -t nfs4 -o
nfsvers=4.1,rsize=1048576,wsize=1048576,hard,timeo=600,retrans=2,noresvport 10.38.X.XX:/ /efs
只要我能够安装它,我就可以使用 IP 而不是 DNS。现在我的问题是一旦我停止并再次启动实例,我的坐骑就消失了。即使在我将以下条目添加到 之后/etc/fstab ,它不做自动挂载。
10.38.X.XXX:/ /efs efs defaults,_netdev 0 0
有人可以帮助我解决 DNS 问题或告诉我如何使用 IP 自动挂载吗?
最佳答案
要从命令行附加到 EFS,请将其用作模板,将 fs-12345678
替换为您的 id:
$ sudo mount -t efs fs-12345678:/ /efs
在您的
/etc/fstab
中使用它(不要在其后添加 .efs.us-east-1.amazonaws.com
)fs-12345678:/ /efs efs vers=4.1,rw,tls,_netdev,relatime,acl,nofail 0 0
fstab
版本还为数据传输开启加密。查看资源以获取更多信息资源
https://docs.aws.amazon.com/efs/latest/ug/mounting-fs.html
https://docs.aws.amazon.com/efs/latest/ug/troubleshooting-efs-mounting.html#automount-fails
关于amazon-web-services - 使用腻子将 EFS 挂载到 Red Hat ec2 实例时无法解析 EFS 的 DNS 名称,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53011147/