有没有人让Windows Server使用Windows NFS 4.1客户端连接到AWS EFS卷?我知道它不受支持,但想知道是否有人做过(或通过其他客户端或实用程序?)
我们要求Windows Server将文件放到NFS卷(理想情况下为EFS)上,从该卷上可以从基于RHEL的应用程序轮询该卷上的文件夹。该应用程序不支持S3,否则我们会使用
韩国社交协会
答案 0 :(得分:4)
我使用了一种解决方法。在我的情况下,我只需要访问Windows 2016 Server EC2实例上的EFS共享。速度/吞吐量并不是一个问题。
我启动了一个t2.nano Linux / Ubuntu实例,在该实例上安装了EFS共享,然后在linux实例上设置了一个SMB共享,以便通过网络为挂载的EFS文件系统提供服务。
之后,只需将网络文件夹映射到Windows 2016服务器EC2实例上的驱动器即可。
在Linux / Ubuntu实例上设置SMB共享非常简单,如Ubuntu文档here中所述。
答案 1 :(得分:4)
从NFSv4.1 client made by folks at CITI @ University of Michigan开始,通过一些相对较小的更改,您可以获得与AWS EFS文件系统的有效连接。
正如@kafka所指出的:当任何客户端指定除OPEN4_SHARE_DENY_NONE
之外的共享拒绝值时,AWS EFS将禁止/失败。幸运的是,CITI人员发现这是一个可能的问题,并添加了一个定义,当被注释掉时,只会使用OPEN4_SHARE_DENY_NONE
作为共享拒绝值。
一旦这个定义被注释掉,那么你需要为你的系统重新编译它 - 如果你使用自述文件指定的Visual Studio和WDK版本,则相对微不足道。一个问题是,自签名证书过程需要不使用过时的Root Agency证书(因为它只有512位)。请改用certreq
。
我正在努力将这些知识收集到a fork of the CITI code at Github中。 (我相信你要么解决了你的问题,要么继续前进,但祝那些从Google登陆的人好运!)
答案 2 :(得分:3)
不,不可能。 AWS特别声明其文档中不可能。
例如,
将Amazon EFS与Microsoft Windows结合使用不支持Amazon EC2实例。AWS EFS setup docs
更为技术性的解释为什么在这里不可能:
拒绝分享 NFS支持共享拒绝的概念,主要由Windows客户端用于用户拒绝其他人访问已打开的特定文件。 Amazon EFS不支持此操作,并为指定除OPEN4_SHARE_DENY_NONE之外的共享拒绝值的任何OPEN命令返回NFS错误NFS4ERR_NOTSUPP。 Linux NFS客户端不使用OPEN4_SHARE_DENY_NONE以外的任何其他内容。 AWS document reference
我没有设法找到任何可以解决此问题的第三方客户。
答案 3 :(得分:0)
亚马逊最近(2018年11月)推出了:Amazon FSx for Windows File Server
您可以将Fsx用于Windows文件系统。