亚马逊AWS官方博客
为 Amazon WorkSpaces 构建基于Amazon FSx for Windows File Server的共享目录
Amazon WorkSpaces 作为一个完全托管的安全可靠的虚拟桌面解决方案能够让您以简单而经济实惠的方式为您的用户提供安全且具有丰富访问选项的桌面体验。与传统本地虚拟桌面基础设施 (VDI) 解决方案不同,您无需为购买、部署和管理复杂的环境而担心 – Amazon WorkSpaces 会处理繁重任务并提供完全托管的服务。借助 Amazon WorkSpaces,您可以在随时随地便捷的访问您的桌面应用。Amazon WorkSpaces为所有用户配置了系统卷和用户卷两块独立的磁盘卷来保证用户数据的安全和持久性。在某些特殊的场景中企业希望将用户的数据放到独立的共享存储中进一步提高数据的可用性和持久性。
Amazon FSx for Windows File Server是基于Windows Server上构建的完全托管的文件存储,提供用户配额,用户文件恢复和Microsoft Active Directory(AD)集成等众多管理功能,它可提供单可用区和多可用区部署选项、完全托管的备份并可为静态数据和动态数据加密。
在这篇Blog中我们将介绍如何基于Amazon FSx for Windows File Server 为Amazon WorkSpaces构建可靠的用户共享存储功能。
网络规划
在测试之前请务必规划好您的VPC和子网设置,这里使用172.16.0.0/16 作为VPC CIDR地址,并在不同的可用去划分不同的公有子网和私有子网并配置相应的路由。注意VPC需要启用DNS解析和DNS主机名。
部署Directory Service
无论是Amazon WorkSpaces还是Amazon FSx for Windows File Server都需要Microsoft AD集成用来用户和权限管理等,这里我们使用Amazon Managed Microsoft AD用户测试,用户在实际的业务场景中也可以在本地数据中心和Amazon VPC网络打通的前提下通过AD Connector作为Proxy连接本地的AD来使用。
在创建的过程中我们选择标准的版本,输入域名和管理员密码,选择需要放置Amazon Managed Microsoft AD的VPC和子网,点击创建目录完成创建。
部署管理服务器
在后续的测试中我们需要一台加入域的Windows服务器用于Amazon Managed Micorsoft AD和Amazon FSx for Windows File Server的管理。这里我们将新建一台Windows Server 2016的服务器,用户可以通过无缝加入或者手动加域的方式将此管理服务器加入上述建立的Amazon Managed Microsoft AD中。
待机器成功加入域之后我们使用默认域用户DomainName\Admin用户登录该管理实例,打开服务器管理器选择添加角色和功能,在Feature页面中选择Group Policy Management, 在Remote Server Administration Tools (远程服务器管理工具)、Role Administration Tools (角色管理工具),选择 AD DS and AD LDS Tools (AD DS 和 AD LDS 工具),向下滚动并选择 DNS Server Tools (DNS 服务器工具),然后选择 Next (下一步)完成安装。
打开管理员工具页面中的Active Directory Users and Computer我们就可以看到上面步骤中创建的AD信息, 管理员可以通过这里创建和管理用户,用户组,OU等。
部署Amazon WorkSpaces
登录亚马逊云科技管理控制台,切换至Amazon WorkSpaces服务页面,我们首先需要注册目录,选择之前的创建的目录服务并设置WorkSpaces所在的子网完成注册。
点击启动WorkSpaces按钮创建Amazon WorkSpaces.在后续的步骤中我们选择之前创建的Directory Service目录,添加用户,选择合适的服务包,计费模式和加密方式等,最后点击启动WorkSpaces完成WorkSpaces创建。
在管理员完成Amazon WorkSpaces创建之后,用户会收到一封包含注册代码等信息的邮件。根据使用的客户端不同通过下载地址下载相应的客户端,在安装完客户端之后输入注册代码、用户名和密码信息后即可以完成Amazon WorkSpaces的登录。
部署 Amazon FSx for Windows File Server
登录亚马逊云科技管理控制台并切换至FSx服务,点击创建文件系统,选择Amazon FSx for Windows File Server选项,输入文件系统名称,部署类型和存储类型,网络和安全性设置,Windows身份验证选择我们创建,具体请参考下图,生产环境根据实际需求做除选择即可,点击下一步创建文件系统完成创建。
等待十多分钟完成文件系统创建之后我们可以查看到文件系统的一些基本信息,这里后续需要用到的DNS名称(用户远程连接挂载)和Windows远程PowerShell终端节点(用于文件系统的高级管理)。
使用Domain Admin用户登录之前创建的管理服务器,在开始菜单中输入fsmgmt.msc 打开共享目录管理控制台,右键点击Share Folders在弹出的菜单中选择Connect to another computer并输入上述文件系统中的DNS名称点击OK完成连接。
打开File Explorer, 我们在挂载的目录中创建一个文件夹,这里Marketing作为团队共享目录,Users目录计划为某个域用户创建一个自己的的用户共享目录。
组策略配置共享目录
用户创建自己的共享目录
以Domain Admin登录管理服务器,打开管理员工具中的组策略管理控制台,我们可以看到我们之前创建AD的域信息,展开Domain至我们创建的域名对应的OU,右键点击Create a GPO in this domain, and link it here.. 弹出的页面中我们输入GPO名字,这里我们输入fsx
右键fsx编辑我们创建的GPO,在弹出的页面中选择User Configuration->Policies->Windows Settings->Scripts(Logon/Logoff), 点击Logon属性,点击添加脚本,在浏览的目录中我们创建一个文件drive.cmd. 内容输入一下信息
if not exist "\\amznfsxwojiz4wv.awsvdi.com\share\users\%username%" md "\\amznfsxwojiz4wv.awsvdi.com\share\users\%username%"
点击ok完成添加
此登录脚本的作用是当用户登录的时候会检查共享存储Users目录下时候有自己登录名对应的文件夹,如果没有则创建一个新的以自己登录名命名的文件夹。
重启此服务器或者使用Amazon WorkSpaces 登录服务器,我们可以看到在用户目录下已经创建了同名的文件夹。
通过组策略配置开机挂载共享目录
打开组策略管理工具,右键编辑我们创建的fsx GPO, 在弹出的页面中选择User Configuration->Preferences->Windows Settings->Drive Maps, 右键选择New->Mapped Drive
这里我们需要挂载2个目录,一个是团队共享目录,一个是每个用户在共享存储的目录,配置方法如下:
保存完成组策略的创建。
借助Windows的权限管理用户可以更细颗粒度的管控,例如用户目录可以设置只有Create Owner具有Full Control权限,其他授权用户只有Read等权限。
登录测试
重启Amazon WorkSpaces并重新登录,这时候我们可以看到已经完成团队共享目录和个人数据目录的挂载。
其他功能
数据备份
借助于Amazon Backup服务我们可以对Amazon FSx for Windows File Server完成定期的数据备份
借助于Shadow Copy, 可以让用户可以在 Windows 文件资源管理器中轻松查看和恢复早期快照中的单个文件或文件夹。用户可以通过PowerShell开启功能
Invoke-Command -ComputerName amznfsxtis6a7g0.awsvdi.com -ConfigurationName FSxRemoteAdmin -scriptblock {Set-FsxShadowStorage -Default}
用户配额管理
用户可以借助PowerShell在文件系统级别配置用户存储配额以限制用户可以使用的存储空间。设置配额后,您可以跟踪配额状态以监控使用情况并查看用户何时超过其配额。
命令参考如下:
Invoke-Command -ComputerName amznfsxtis6a7g0.awsvdi.com -ConfigurationName FSxRemoteAdmin -scriptblock {Enable-FSxUserQuotas -
Track -DefaultLimit 20480 -DefaultWarningLimit 18000}
总结
Amazon FSx for Windows File Server 作为完全托管的 Microsoft Windows 文件服务器,由完全原生的 Windows 文件系统支持,可以无缝的和Amazon WorkSpaces支持。在数据安全性,可靠性和扩展性方面提供了更大的支持。