Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/amazon-web-services/14.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Amazon web services 在EC2实例上自动装载EFS_Amazon Web Services_Amazon Ec2_Autoscaling_Efs_Amazon Efs - Fatal编程技术网

Amazon web services 在EC2实例上自动装载EFS

Amazon web services 在EC2实例上自动装载EFS,amazon-web-services,amazon-ec2,autoscaling,efs,amazon-efs,Amazon Web Services,Amazon Ec2,Autoscaling,Efs,Amazon Efs,我创建了一个EC2实例和一个EFS,并且能够在该实例上正确地装载EFS 我需要自动装载,以防服务器重新启动 根据,我在/etc/fstab fs-xxxxxxxx:/ /mnt/efs efs defaults,_netdev 0 0 使用EFS文件系统ID代替xxxxxxxx 但当我重新启动服务器时,EFS不会被装载,我会保存以再次装载它 我该怎么办?或者我遗漏了什么为了使用efs文件系统类型,我相信您需要安装amazon efs utils包。这将安装其他依赖项。任何有此问题的人 而不是

我创建了一个EC2实例和一个EFS,并且能够在该实例上正确地装载EFS

我需要自动装载,以防服务器重新启动

根据,我在
/etc/fstab

fs-xxxxxxxx:/ /mnt/efs efs defaults,_netdev 0 0
使用EFS文件系统ID代替xxxxxxxx

但当我重新启动服务器时,EFS不会被装载,我会保存以再次装载它


我该怎么办?或者我遗漏了什么

为了使用efs文件系统类型,我相信您需要安装amazon efs utils包。这将安装其他依赖项。

任何有此问题的人

而不是

fs-xxxxxxxx:/ /mnt/efs efs defaults,_netdev 0 0
使用


这对我来说很好,它会自动挂载到新创建的实例上。要使用NFS4解决此问题,请按照以下说明操作:

在您的AWS帐户上,请注意以下事项:

1) 转到您的EFS管理屏幕,您应该查看您的EFS\U。。。它旁边有一个小三角形,单击向下展开

< P > 2)注意在屏幕中间有一个“DNS名称”,它会说:“FS 12345 67 C。EFS。U-West-1。AxaMaWaS.com”,请注意,这是您稍后将使用的安装点。 3) 默认情况下,如果您刚刚创建了新实例,则必须允许服务器看到它,因为防火墙正在阻止您的连接,所以尝试连接将冻结。要允许向下滚动直到看到您的安全组,这类似于sg abcdef

4) 进入您的EC2服务器,选择您希望它访问EFS的服务器,然后单击其“安全组”,它将带您进入安全组管理屏幕,记下它的安全组ID(这是sg-12345)

4) 现在,清除VPC管理屏幕的过滤器以查看所有的SGs

5) 输入您的EFS安全组(即sg abcdef)并单击搜索按钮,这将显示EFS ACL

6) 单击“入站规则”->编辑

7) 单击“添加”并从列表中选择“EFS”,输入您服务器的SG(即SG-12345),如果您愿意,将其描述为“服务器XXX访问”

8) 现在服务器应该能够看到EFS挂载

9) 进入服务器,以ROOT用户身份运行,安装必要的组件:

apt获取安装nfs公用程序

10) 现在,要测试挂载,请创建一个新目录。。。类似于:mkdir/mnt/heider

11) 使用以下命令装载FS:

mount-t nfs4-o nfsvers=4.1,rsize=1048576,wsize=1048576,hard,timeo=600,retrans=2,noresvport fs-1234567c.efs.us-west-1.amazonaws.com://mnt/heider

请注意,您的fs-12345c。。。。。如上文所述,取自您的DNS名称

12) 如果这项工作很好,那就进入下一步,否则就修改上面的内容,看看是否遗漏了什么

13) 现在要自动挂载,您需要:

14) 编辑/etc/fstab

[fs-XXXXXXXX]:/ /path/to/mount/dir efs defaults,_netdev 0 0
[fs-XXXXXXXX].efs.[REGION].amazonaws.com:/ /path/to/mount/dir nfs4 defaults,_netdev 0 0
15) 添加以下内容:

fs-1234567c.efs.us-west-1.amazonaws.com://mnt/heider nfs4 defaults,_netdev0

16) 保存文件并退出

17) 在Linux命令外壳类型中: a山

这将测试挂载,如果挂载了,那么很好,重新启动将自动挂载

18) 这应该是自动安装的

19) 重新启动以进行测试,所有这些都应该在那里


我希望这有帮助

我在这里发布了一个更详细的解决方案,因为对于搜索引擎的相关查询,此线程似乎显示在顶部附近

装载AmazonEFS有两种方法:“AmazonEFSMountHelper”(AmazonEFSUTILS)和“NFS客户端”(NFS utils)

下面的示例显示了如何使用每种方法手动和自动装载。使用之前,请将文本[value]替换为您自己的值

===============

要使用“Amazon EFS mount helper”手动装载,请发出以下命令格式:

sudo mount -t efs [fs-XXXXXXXX]:/ /path/to/mount/dir

=====

要使用“AmazonEFSMountHelper”自动装载,请在/etc/fstab中插入以下行

[fs-XXXXXXXX]:/ /path/to/mount/dir efs defaults,_netdev 0 0
[fs-XXXXXXXX].efs.[REGION].amazonaws.com:/ /path/to/mount/dir nfs4 defaults,_netdev 0 0
=====

要使用“NFS客户端”手动装载,请发出以下命令格式之一:

sudo mount -t efs [fs-XXXXXXXX]:/ /path/to/mount/dir

当您在EFS Web控制台下单击查看有问题的弹性文件系统ID时,请使用“Amazon EC2装载说明(来自本地VPC)”中给出的命令说明

sudo mount -t nfs4 -o nfsvers=4.1,rsize=XXXXXXX,wsize=XXXXXXX,hard,timeo=XXX,retrans=X,noresvport [fs-XXXXXXXX].efs.[REGION].amazonaws.com:/ /path/to/mount/dir

=====

要使用“NFS客户端”自动装载,请在/etc/fstab中插入以下行

[fs-XXXXXXXX]:/ /path/to/mount/dir efs defaults,_netdev 0 0
[fs-XXXXXXXX].efs.[REGION].amazonaws.com:/ /path/to/mount/dir nfs4 defaults,_netdev 0 0
===============

鉴于上述示例格式,您是否注意到您的问题

您以为已经安装了“Amazon EFS mount helper”,但根据您在第一次评论回复(不是打开帖子)中发布的手动装载命令格式,您的系统上实际上只安装了“NFS客户端”。您在/etc/fstab中使用了“AmazonEFSMountHelper”格式来自动装载,但是为您工作的手动装载命令是“NFS客户端”格式。由于您的系统没有安装“Amazon EFS mount helper”,因此它不理解/etc/fstab中的自动装载格式,因此自动装载不适用于您

上面发布的手动装载命令仅适用于“NFS客户端”,而不适用于“AmazonEFSMountHelper”

安装-t nfs4-o nfsvers=4.1

请注意,上面的-t参数是
nfs4
,它是“NFS客户端”的格式。如果您使用的是“AmazonEFSMountHelper”,那么-t参数应该是
EFS

要解决此问题,可以使用Amazon EFS装载帮助程序(Amazon EFS utils)或NFS客户端(NFS utils),但命令格式(在CLI或/etc/fstab中)和所使用的装载客户端应一致

换言之:

CLI和/etc/fstab中的“Amazon EFS mount helper”
EFS

[fs-XXXXXXXX]:/ /path/to/mount/dir efs defaults,_netdev 0 0
[fs-XXXXXXXX].efs.[REGION].amazonaws.com:/ /path/to/mount/dir nfs4 defaults,_netdev 0 0
CLI和/etc/fstab中的“NFS客户端”
nfs4

[fs-XXXXXXXX]:/ /path/to/mount/dir efs defaults,_netdev 0 0
[fs-XXXXXXXX].efs.[REGION].amazonaws.com:/ /path/to/mount/dir nfs4 defaults,_netdev 0 0
===============

装载客户端软件的安装说明:

=====

如果要使用“AmazonEFSMountHelper”,请在中使用以下命令