AWS – 无法连接NFS实例

我们有一个自动缩放组,根据需要旋转多个实例。 自动扩展组中的所有实例从独立的EC2实例(运行NFS)获取数据,以便它们可以共享相同的数据。

以下是NFS服务器的设置,允许所有人通过通配符访问它

/ var / nfs *(rw,sync,no_root_squash,no_subtree_check)

现在,当服务器自动扩展它自己的私有/公有IP地址分配给自动扩展组下运行的EC2实例时,现在我必须将这些私有/公有IP地址分配给这样的NFS实例安全组

在这里输入图像说明

否则,我有安全弱的选项,允许从任何来源的所有端口上的所有stream量,即:安全组可以全部访问所有来源的所有端口,这将是灾难。

如果没有这两个选项,那么在自动扩展组下运行的EC2实例将不会连接到NFS实例。

我已经尝试了许多选项,如允许所有通信从所有端口自动扩展安全组“组ID”或允许所有通信从所有端口到默认安全组“组ID”像这样

在这里输入图像说明

但是这些都不行,我一直处于奇怪的境地!

PS:自从我尝试过所有的tarffic以来,没有任何端口问题。

你不应该使用弹性IP,它是公开的,你将被收取互联网stream量费率,而内部stream量是免费的。

实例保持其IP重新启动,但它可以在停止/启动时更改。 然而,我有一个实例在一个已经停止并开始许多次并且保持相同的私有IP的子网。

我认为最好的解决scheme是使用ENI(弹性networking接口)。 您可以创build一个ENI并指定一个专用的固定IP地址,您可以从API或控制台执行此操作。 然后,您将您的ENI附加到您的EC2实例,并且可能会有一些摆弄操作系统/软件来识别它,但是我想您可以search它。

在这里输入图像说明

您可以将NFS实例放在与EC2实例相同的子网中,但是如果EC2实例是公用Web服务器,则安全性不如使用DMZ。