如何实现AWS EFS在EC2之间共享文件系统?

如果你在多服务器应用程序环境中工作, 需要在多台服务器之间共享文件系统, 则必须设置NFS(网络文件系统)。

NFS使你可以在多台服务器上共享文件系统, 但是实现需要一些管理技能。

在传统的基础架构环境中, 你可能必须涉及多个团队, 并且需要花费一些时间来创建NFS。但是, 如果你使用的是AWS, 则可以通过其EFS(弹性文件系统)服务在几分钟内完成。

AWS EFS使你可以创建可伸缩文件存储以在EC2上使用。你不必担心容量预测, 因为它可以按需扩大或缩小。

快速图表让你了解其工作原理。

如何实现AWS EFS在EC2之间共享文件系统?2

AWS很棒。如果你是新手, 并且对学习感兴趣, 我会推荐A Cloud Guru提供的出色在线课程。

EFS的一些优点是:

  • 由AWS完全管理
  • 成本低廉, 用所用
  • 高可用性和耐用性
  • 自动放大或缩小
  • 可扩展的性能

我正在运行两个EC2 Ubuntu实例, 在本教程中, 我将创建一个EFS, 然后将其安装在两台EC2服务器上。

让我们开始吧。

  • 登录到AWS控制台
  • 转到服务, 然后在存储(直接链接)下选择EFS。
  • 点击”创建文件系统”。
如何实现AWS EFS在EC2之间共享文件系统?4
  • AWS会在可用区中自动分配一个IP地址。如果需要更改, 可以在下一个屏幕上进行更改。
如何实现AWS EFS在EC2之间共享文件系统?6
  • 如果需要, 请添加标签, 然后在”通用”或”最大I / O”之间选择性能模式
如何实现AWS EFS在EC2之间共享文件系统?8
  • 查看配置, 如果一切正常, 然后单击”创建文件系统”。

可能要花几秒钟, 然后完成;你将收到一条成功消息。

成功!你已经创建了文件系统。你可以从安装了NFSv4.1客户端的EC2实例挂载文件系统。你还可以通过AWS Direct Connect连接从本地服务器挂载文件系统。单击此处获取EC2安装说明, 并单击此处获取本地安装说明。

你将能够在列表中看到新创建的弹性文件系统。

如何实现AWS EFS在EC2之间共享文件系统?10

到此, 你已经创建了EFS, 并准备将其安装在EC2实例上。

在EC2上安装EFS

挂载之前, 需要安装nfs客户端。如果你展开列表并单击” Amazon EC2安装说明”, 则将获取详细信息。

如何实现AWS EFS在EC2之间共享文件系统?12

但是, 让我们看看它如何进行。

  • 登录到两个EC2实例并安装nfs客户端。我正在使用Ubuntu, 因此我将使用以下内容
apt-get install nfs-common
  • 让我们创建一个要在其中装载EFS的文件夹。

例如:/ apps

cd /
mkdir apps

使用说明中给出的命令挂载文件系统。

例如:

mount -t nfs4 -o nfsvers=4.1, rsize=1048576, wsize=1048576, hard, timeo=600, retrans=2 fs-4fd14a06.efs.us-east-1.amazonaws.com:/ apps

注意:如果在安装过程中遇到任何问题, 请参阅此疑难解答指南, 并且不要忘记检查安全组以确保以下事项。

  • EC2实例入站规则中允许使用NFS端口(2049)
  • EFS安全组中允许EC2安全组

这将花费几秒钟, 如果执行df -h命令, 你会注意到/ apps已挂载

[email protected]:/# df -h | grep apps
fs-4fd14a06.efs.us-east-1.amazonaws.com:/  8.0E     0  8.0E   0% /apps
[email protected]:/#

现在, 你必须登录到要使用此/ apps的另一台服务器, 然后重复创建文件夹并挂载EFS。

为了进行验证, 我将EFS安装在另一台服务器上, 可以看到在两台服务器上都可以访问/ apps。

[email protected]:/apps# df -h | grep apps
fs-4fd14a06.efs.us-east-1.amazonaws.com:/  8.0E     0  8.0E   0% /apps
[email protected]:/apps#

这很简单, 不是吗?

我尝试创建几个文件, 总体性能看起来不错。 AWS EFS看起来很有希望, 如果你需要跨EC2实例共享文件系统, 请尝试一下, 我相信你会喜欢的。

微信公众号
手机浏览(小程序)
0
分享到:
没有账号? 忘记密码?