企业IT提供的基本功能之一是在组织中托管文件服务。从计算机网络的早期开始,共享网络位置来存储和编辑文档和其他文件资源已经成为一个基本要求。
随着对文件和网络共享的需求越来越大,许多企业IT环境中的IT管理员发现自己管理着大量的文件共享、服务器名称、网络资源等,目的只是管理整个组织中的文件和网络共享资源。跨不同服务器资源管理大量网络共享可能会变得非常劳动密集。
Microsoft推出了一种解决方案,帮助企业处理和管理整个企业中的文件共享,从而将它们逻辑地分组到单个层次结构中。引进的技术被称为分布式文件系统或DFS.
在这篇文章中,我们将了解什么是DFS,它是如何工作的,需求和注意事项,最佳实践,最后,它是如何配置的。
什么是分布式文件系统(DFS)?
介绍中提到的分布式文件系统(Distributed File System, DFS)提供了对多个服务器上的共享进行逻辑分组并透明地将共享链接到单个层次名称空间的能力。这是一个树状结构。DFS支持多种模式,包括两种模式独立的和基于域的DFS服务。
当您希望提供命名空间的高可用性时,需要使用基于域的命名空间。与使用DFS与Active Directory一起复制的其他Microsoft技术一样,DFS命名空间的拓扑数据存储在Active Directory中。
DFS使用Windows Server文件复制服务在复制的目标之间复制更改。当用户修改存储在一个目标上的文件时,DFS复制会将更改传播到DFS基础结构中的其他指定目标。将保留最新的更改。
DFS是一种有趣的技术摘要实际共享所在的底层物理文件服务器,来自共享访问方式的命名空间。在可能有数十个或数百个文件服务器和共享的情况下,这可能成为管理噩梦。DFS命名空间从最终用户聚合并抽象出这种潜在的复杂性。
这不仅从最终用户的角度来看是有益的,而且从IT管理员的角度来看也是有益的,因为使用DFS,IT管理员可以更灵活地管理支持DFS托管共享的底层物理存储。如果需要更多存储,IT管理员可以添加新的存储设备和共享,复制文件并将其从旧设备同步到新设备,只需将DFS链接重定向到后端的新共享。
DFS是否仅适用于Microsoft Windows服务器?
在非Windows服务器上运行的服务器上发布的共享不能承载DFS根目录或提供对其他DFS目标的引用。但是,如果DFS命名空间中有客户端重定向程序,则可以发布非Windows支持的共享。这可以包括任何SMB兼容设备,例如来自许多不同供应商的网络连接存储(NAS)设备以及Samba共享。它不适用于NFS或HDFS。
DFS名称空间是如何组织的?
这完全符合企业的需要。公共DFS组织可能与业务组织单元、地理位置、两者的组合或其他自定义业务实体相关,以定义DFS命名空间。
DFS拓扑数据包括哪些内容?
DFS树结构的组件包括:
- 根目录-运行DFS服务的DFS服务器
- DFS链接–DFS链接指向DFS中整合的网络共享
- DFS目标–目标是DFS链接指向的实际网络共享
组成一个系统的部件DFS名称空间包括以下内容:
- 命名空间服务器–这是承载命名空间的DFS服务器。这可以是成员服务器或域控制器。
- 命名空间根–这是DFS命名空间树的起点。对于基于域的DFS拓扑,它将以域名开头。使用基于域的DFS拓扑,DFS元数据存储在Active Directory中,并在服务器之间复制。可以有多个命名空间服务器托管DFS命名空间。
- 文件夹–DFS命名空间中有两种类型的文件夹–没有目标的文件夹和有目标的文件夹。没有目标的文件夹仅用于组织结构。具有目标的文件夹链接到最终用户可以访问的实际内容。
- 文件夹目标–文件夹目标是指向与DFS命名空间中的文件夹关联的共享文件夹的实际UNC路径。文件夹目标是实际找到数据的位置。基于域的DFS命名空间的最大优点是活动目录网站意识到的如果一个地理位置的用户访问同一DFS命名空间文件夹目标,则他们将被定向到同一站点中承载数据的服务器,这将增强用户体验,并防止不必要的WAN流量跨站点传输。
下面是分布式文件系统的特性特征
特色 | 细节 |
类型 | Windows服务器主机服务 |
同步 | 对 |
异步的 | 对 |
存储硬件不可知 | 对 |
复制单元 | 卷(分区) |
Windows服务器群集创建 | 对 |
服务器到服务器复制 | 对 |
Cluster-to-cluster复制 | 对 |
非Windows文件共享 | 对 |
运输 | SMB3 |
网络 | TCP/IP或RDMA |
网络约束支持 | 对 |
RDMA | iWARP、InfiniBand、RoCEv2 |
复制网络端口 | TCP 445或5445 |
多路径 | 是(SMB3) |
Kerberos支持 | 是(SMB3) |
覆盖加密和签名 | 是(SMB3) |
允许每卷故障切换 | 对 |
精简配置存储支持 | 对 |
管理工具 | PowerShell,故障转移群集管理器 |
基于域的DFS命名空间
使用基于域的DFS命名空间有几个用例。
我们已经简要介绍了为什么基于域的DFS命名空间会有好处,但是,请为以下内容选择基于域的DFS命名空间:
- DFS命名空间是否需要高可用性?在这种情况下,请使用基于域的。通过在DFS命名空间服务器之间复制命名空间,可以实现HA。
- 基于域的DFS名称空间还提供了一种非常简单的方法来抽象底层DFS服务器名称,只需以\\< Domain name >\namespace格式表示共享。再加上基于访问的枚举(access -based Enumeration)或ABE,用户只能看到他们可以访问的名称空间中的文件。
要使用基于域的DFS命名空间拓扑,请执行以下操作:
- 确保Active Directory林功能级别为Windows 2008或更高版本
- 域功能级别必须为Windows Server 2008或更高版本
- 命名空间服务器必须运行Windows Server 2008或更高版本
分布式文件系统(DFS)的工作原理
DFS工作的一个关键组件是DFS复制.
Windows Server中的DFS复制是一种角色服务,允许跨多个服务器和站点复制DFS命名空间路径引用的文件夹。DFS复制配置为多主控复制技术意味着DFS复制组可以对数据进行更改。
DFS复制使用了一种高效的压缩算法,称为远程差分压缩(RDC)检测数据的更改。RDC非常高效,因为它可以检测对文件的更改,并且只复制文件改变文件块而不是重新复制整个文件。
前面提到的DFS复制组是一组参与复制一个或多个已复制文件夹的服务器。已复制文件夹在DFS复制组中包含的成员之间保持同步。各个DFS复制组成员之间的通信构成了DFS复制拓扑。
复制组的设置(包括其拓扑、计划和带宽限制)将应用于DFS复制组中包含的已复制文件夹。
DFS复制组中的每个复制文件夹都有独特的设置,包括文件和子文件夹筛选器,用于为每个复制文件夹过滤不同的文件和子文件夹。复制文件夹可以位于成员中的不同卷上,不需要是共享文件夹或名称空间的一部分。可以使用DFS管理控制台、DfsrAdmin和Dfsrdiag命令或调用WMI的脚本来管理DFS复制。
在查看DFS复制工作时要考虑的一个重要注意事项是DFS只在文件复制之后才复制它。关闭. 这意味着,对于复制可能经常使用的文件(如数据库文件或其他打开时间较长的文件),它不是一个合适的解决方案。对于需要与其他用户并行处理的文档或其他文件,您可能需要研究其他技术,如存储副本这是在Windows Server 2016中引入的。
分布式文件系统(DFS)要求
在考虑部署分布式文件系统(DFS)时,需要注意一些要求和注意事项。
运行以下操作系统的服务器可以承载多个基于域的命名空间以及单个独立命名空间。
- Windows服务器2019
- Windows Server 2016
- Windows Server 2012 R2
- Windows Server 2012
- Windows Server 2008 R2数据中心和企业版本
- Windows服务器(半年频道)
运行以下操作系统的服务器可以承载单个独立命名空间:
- Windows Server 2008 R2标准(Windows Server 2008/R2已停止扩展支持。
承载DFS命名空间的要求是什么?
托管独立名称空间的服务器 | 承载基于域的命名空间的服务器 |
需要NTFS来托管DFS命名空间 | 必须包含NTFS卷才能承载命名空间。 |
可以使用成员服务器或域控制器 | 必须是配置命名空间的域中的成员服务器或域控制器。(此要求适用于承载给定基于域的命名空间的每个命名空间服务器。) |
故障转移群集可用于高可用性,以承载DFS命名空间以实现恢复能力 | 命名空间不能是故障转移群集中的群集资源。但是,如果将命名空间配置为仅使用该服务器上的本地资源,则可以在同时充当故障转移群集中节点的服务器上定位该命名空间。 |
部署DFS复制的要求是什么?
- 更新Active Directory域服务(ADDS)架构以包括Windows Server 2003 R2或更高版本的架构添加。没有添加Windows Server 2003 R2或旧模式的只读复制文件夹。
- DFS复制组中的所有服务器必须位于同一Active Directory林中。无法在不同AD林中的服务器之间启用复制。
- 在将作为复制组成员的所有服务器上安装DFS复制。
- 确保为DFS复制准备了适当的防病毒异常,因为这些异常可能会在许多防病毒解决方案中触发误报。
- 在NTFS格式的卷上找到要使用DFS复制的文件夹。到目前为止,DFS复制不支持弹性文件系统(ReFS)或FAT文件系统。DFS复制也不支持复制存储在群集共享卷上的内容。
在Azure中使用分布式文件系统(DFS)的注意事项
DFS可以与Azure结合使用,但在将两者结合使用时,您需要考虑一些事项。微软已经测试过将DFS与Azure虚拟机一起使用。
下面是使用DFS和Azure时需要注意的几点:
- Azure vm中没有独立名称空间的集群
- 基于域的命名空间可以在Azure VM上运行,包括运行Azure Active Directory的Azure环境
- 使用快照或保存的状态来恢复虚拟机DFS复制将导致DFS复制失败,这可能需要特殊的数据库恢复步骤。
- 不导出、复制或克隆DFS复制虚拟机
- 使用来宾虚拟机中的备份软件
- 您需要在本地复制组成员和Azure VMs中托管的成员之间建立站点到站点的VPN连接,并为他们之间的通信提供适当的防火墙端口例外。这包括RPC端点映射器(端口135)和随机分配的临时端口。
配置分布式文件系统(DFS)
让我们看看如何在WindowsServer2019中配置分布式文件系统。
要在Windows服务器上安装分布式文件系统DFS,需要向服务器添加一个角色。DFS角色实际上是文件和存储服务角色
下面是使用时可用的DFS角色Get-WindowsFeaturePowerShell cmdlet。
您可以使用服务器管理器控制台或PowerShell安装DFS角色。
PowerShell是一种快速方便地安装DFS角色的好方法。这对于跨多台服务器自动化和大规模安装角色也非常有用。
- 安装WindowsFeature-名称为“FS DFS命名空间”-IncludeManagementTools
- 安装WindowsFeature-名称为“FS DFS复制”-IncludeManagementTools
创建DFS命名空间
您可以使用以下命令启动DFS管理控制台dfsmgmt.msc。
正如您所看到的,管理控制台相当简单行动窗格中,您可以单击新名称空间按钮开始创建新的DFS命名空间。
这个新建命名空间向导发射。第一步是输入将承载命名空间的服务器的名称。您可以输入服务器名称,也可以单击浏览并找到服务器名称。
输入名称空间名称和设置。如前所述名称您选择的名称显示在命名空间路径中的服务器或域名之后。您也可以单击编辑设置按钮,获得更多颗粒与本地路径和设置。
下一步是选择一个命名空间类型. 在这里,您可以在基于域的服务器和独立的命名空间服务器之间进行选择。此外,您还可以选择启用Windows Server 2008模式(默认启用),它设置名称空间,增加可伸缩性和基于访问的枚举ABE。ABE意味着终端用户只能看到他们可以访问的文件。
选择独立命名空间,如果:
- 您的组织不使用Active Directory域服务(AD DS)。
- 您可以使用故障转移群集来提高命名空间的可用性。
- 如果不满足基于域的命名空间(Windows Server 2008模式)的要求,则希望在一个域中创建一个包含5000多个DFS文件夹的命名空间。
以下是Windows Server 2008模式的最低要求
- 林使用Windows Server 2003或更高的林功能级别。
- 域使用Windows Server 2008及以上的域功能级别。
- 所有命名空间服务器都运行Windows Server 2008及更高版本。
选择基于域的命名空间,如果:
- 您使用多个命名空间服务器来确保命名空间的可用性。
- 您想对用户隐藏命名空间服务器的名称。
查看设置并创建名称空间。
创建命名空间向导已成功完成。
向命名空间添加DFS目标
接下来,我们需要向DFS命名空间添加一个目标。右键单击名称空间并选择新文件夹。
点击添加
您可以输入远程服务器共享的UNC路径,也可以单击浏览按钮并选择一个本地服务器文件夹。
在这里,我们添加了一个本地文件夹。
创建新的复制组
最后,让我们了解如何创建一个复制组,将源文件夹复制到目标服务器。这将把数据从源复制到目标。
***注意***文件在关闭之前不会被复制。
选择复制组类型.
选择多用途复制组'如果要配置自定义复制拓扑。它还允许您通过首先向复制组添加一组服务器,然后配置它们之间的自定义连接来创建自定义复制拓扑,以实现所需的自定义复制拓扑。
多用途复制组下有三个可用选项:轮毂辐板,全网和无拓扑.
轮辐
它可以与三台或更多服务器一起使用。每个分支可以使用一个或多个中心成员来复制数据。如果任何一个集线器不可用,可以使用多个集线器进行冗余。集线器应承载相同的复制数据。
全网
它可以在两个或多个服务器之间使用。在全网状拓扑中,数据在所有复制成员之间复制。如果DFS复制组由少于10台服务器组成,建议始终使用此拓扑。
无拓扑
向导完成后,您将能够启用DFS连接。在配置连接之前,不会进行复制。
选择用于数据收集的复制组,如果要将两台服务器添加到复制组中,以便可以将集线器(目标)服务器配置为从另一个分支服务器收集数据。您不能继续向数据收集复制组添加新成员,但可以继续创建具有相同集线器服务器的其他复制组,以构成一种集线器分支拓扑(如果您有多个“分支办公室”)
多用途复制组是一种更通用的设置,可以在集线器或网格模式下运行。如果您不确定要选择什么,请选择一个多用途复制组。
在这里,我们选择一个多用途复制组. 此选项配置两个或多个服务器之间的复制,以实现发布内容共享和其他方案。
选择名称和域名。
选择复制组成员。这里,我们选择了要包含在复制组中的两个DFS服务器。
接下来,选择复制拓扑。如果只有两台服务器,则轮辐选项已灰显。默认情况下,对于两台服务器,您将看到全网状挑选出来的。
使用DFS复制,您可以选择要分配给DFS复制过程的复制计划和带宽。
选择主要成员用于DFS复制组。
选择要复制到复制成员的文件夹。点击添加按钮添加这些文件夹。
在复制成员上选择要复制已复制文件夹的本地路径。
查看复制设置并单击创造创建复制组。
复制组已成功创建。
您将看到一条关于可能发生的错误的信息消息复制延迟。
仅几分钟后,源文件就复制到DFS复制成员。下面,在源服务器上创建了一个文件,几分钟后,该文件已复制到DFS复制组成员,内容相同。
DFS不替换备份
对于DFS及其用例可能存在误解,认为DFS可以作为一种备份形式,因为数据可以在DFS复制组中的多个复制成员之间进行复制。但是,请记住,虽然复制过程可以复制用于在其他服务器上创建额外数据副本的数据,但这并不能防止由于终端用户错误和勒索软件等安全威胁而导致的数据丢失。
由于复制过程,最终用户或勒索软件所做的更改将复制到DFS复制组中的其他服务器。企业仍然需要备份其数据,并使多个恢复点与业务需要保持一致,以真正保护其数据。
188abc金博宝 为企业及其数据提供了极好的解决方案。它允许将数据精确还原到单个文件和文件夹。
此外,它还通过创建虚拟机以及可能支持业务关键型服务的物理机器的备份来全局保护您的数据。
收尾
Windows分布式文件系统(DFS)是跨网络扩展多个Windows Server文件共享的一种很好的方法。它允许轻松地从逻辑上聚合文件共享,并从实际的底层网络共享名称抽象名称空间。这可以使最终用户更容易访问资源,并使it管理员更容易对共享的底层存储执行维护。
创建DFS名称空间、添加目标共享/文件夹和创建复制组的过程非常简单,可以使用GUI或命令行选项(包括PowerShell)来控制DFS。DFS不是数据的备份解决方案。虽然它可以将数据复制到多个服务器,但这并不能保护您的企业免受与终端用户相关的数据丢失或由于勒索软件等网络安全威胁造成的数据丢失。
使用Vembu BDR Suite等现代备份解决方案是确保您的数据安全并免受最终用户或网络安全威胁的绝佳方式。使用DFS之类的工具,再加上能够正确保护数据的备份解决方案,您可以放心地确保数据的安全性、弹性和可恢复性,尽管可能会出现任何威胁。