当微软公司最初介绍分布式文件系统(Distributed File System,简称DFS)的时候,它把终端用户希望让事情变得简单一些的注意力都集中在自己身上。这种技术的思路是用户本身并不需要知道哪些服务器资源是真正存在的。他们只要简单地通过一个特殊的共享就可以访问到文件系统,而且还可以访问到所有他们所需要的数据,无论这些数据是集中存储在本地还是分散存储在许多不同的服务器中。
尽管在用户端把把事情变得简单总是好处多多,但是我认为DFS的用途要比仅仅用于负载平衡与容错要多得多。DFS可以用来把用户的工作量分配到多个含有文件副本的服务器中。除此之外,如果一个副本的服务器失效,或者管理员需要对一台服务器进行脱机维护,那么通过使用DFS,用户仍然可以不间断地持续访问副本服务器。(在第二部分中,我将会更为详细地讨论负载平衡与容错问题。)
在第一部分中,现在我将要向你介绍如何在Windows 2003 server中创建一个分布式文件系统。
第一步:创建控制台
开始这个过程首先要在“运行”命令中输入Microsoft Management Console(管理控制台,MMC)命令。当你输入之后,Windows将会载入一个空的管理控制台。现在,你要在控制台的“文件”菜单中选择“添加或移除管理单元(Snap-In)”命令。Windows随后会显示出添加或移除管理单元的属性菜单。在这个时候,要点击基于属性菜单中“Standalone”标签下的“添加”按钮,以便显示出所有可用管理单元的表列。从表列中选择分布式文件系统选项,并点击“添加”按钮,接下来点击“关闭”和“确认”按钮。
第二步:创建DFS根
“根”就是DFS层级结构的最顶层。一个根当中包含了多个共享文件夹。要在目前含有你的一些数据的服务器中创建根,你需要在控制台中用鼠标右键点击“分布式文件系统容器(container)”,然后从快捷菜单中选择“新的根”命令。这样做能够使Windows载入新的根安装向导程序。点击“下一步”越过安装向导的欢迎界面。这时向导会询问你是要创建一个独立的根还是创建一个域的根。域的根只存在于Windows Server 2003中。它们支持自动的数据复制。对于本文的目的而言,应该选择域的根选项,然后点击“下一步”。
向导的下一个界面是询问你哪一个域作为你所创建的根的主域。选择合适的域,然后点击“下一步”。现在,你必须输入将要做为新创建的根的主机的服务器的名称。这个服务器必须是你在上一步所选择的域的一个成员。输入完全符合域的要求的服务器名称,然后点击“下一步”。
第三步:给根命名
向导的下一个界面要求你输入你所创建的根的名称。Windows将会创建一个与你所输入的根的名称一致的共享名称。我还推荐你应该输入一些描述文字,以便帮助你记住这个根是做什么用的。点击“下一步”来继续我们的工作。
第四步:文件夹选择
在这个界面中,向导将会要求你指定一个Windows能够把共享文件分配到其中的文件夹。我推荐你选择一个已经包含了你的数据的文件夹。点击“下一步”,接下来点击“完成”,结束根的创建。
你的DFS共享现在应该是被激活的。为了确认根是有效的,可以用鼠标右键点击它,然后快捷菜单中选择“检查状态”命令。正确的状态应该显示为“联机”。
如何创建副本服务器
这是为本系列的第二部分所进行的准备,我希望向你介绍如何创建一个副本服务器的方法。
要开始这个过程,首先要进入你希望创建为副本的服务器中,并且要选择一个可用磁盘空间充足的卷。做完这个步骤之后,在这个卷上创建一个文件夹,用来存储你将要向该服务器中复制的数据。
创建了文件夹之后,你需要把该文件夹设成共享,并使用与你指定给DFS根一样的共享名称。我建议在共享级别上对任何人都给予完全的控制权,并使用NTFS许可来保护数据,而不是依赖于共享级别的许可。在设置了共享之后,你需要等待15分钟,以便网络能够对该共享进行识别。在你等待的过程中,打开“服务”控制台,并启动分布式文件系统服务。
现在回到DFS控制台,用鼠标右键点击你先前所创建的DFS根,并在快捷菜单中选择“新的根目标”命令。现在,你将会被提示在你希望创建的根目标处输入服务器的名称。在我的系统中,我需要输入服务器的NetBIOS名称,而不是其完全符合域的要求的名称,这样做是为了让Windows识别服务器。这里你需要做出你自己的选择,然后点击“下一步”。等待一会儿之后,你将会看到一个通知你已经完成了该向导的界面。点击“完成”,然后继续下面的工作。
这个时候你的DFS根应该是打开而且处于运行状态。现在你应该对复制过程进行初始化。你可以用鼠标右键点击DFS根,然后在快捷菜单中选择“设置复制”命令。Windows将会载入设置复制向导。点击“下一步”越过向导的欢迎界面,然后你会被提示选择初始化主文件。选择目前包含数据的共享文件,然后点击“下一步”。在你看到的下一个界面中,向导会要求你选择一个复制的拓扑结构。我推荐你使用完全网状拓扑结构。点击“完成”。随后,你可能会看到一条信息,提示你文件需要在副本服务器上将复制服务(File Replication Service)设置成自动启动。如果出现了这条信息,那么就要使用服务器上的“服务”控制台来把文件复制服务的启动方式改变成自动启动。启动服务,然后点击“是”来重试复制设置。
超越用户的DFS优势
在第一部分(四步轻松创建Win2003分布式文件系统)中,我向大家阐释了如何创建一个分布式文件系统(Distributed File System,DFS)根以及如何创建这个根的副本。在第二部分中,我将会向你解释如何使用你所创建的DFS副本设置,以便让它能够对你的用户提供容错以及高度有效性的一种方法。
在上一篇文章中,我向你介绍了如何在服务器上为物理位置创建一个逻辑路径。有效使用DFS的窍门就是让用户通过逻辑路径(即DFS根)来访问他们的文件,而不是直接对数据进行访问。
例如,在我的测试服务器上,我的用户通常所访问的数据位于G:驱动器中。用户一般要通过共享名为G(\ \服务器名称\g)的路径来访问这些数据。如果在创建了DFS根之后,用户是通过预先存在的共享来访问数据的话,那么他们将会从一种自动的备份中获得好处,因为他们的数据已经被复制到了另一台服务器上。然而,这样他们却可能完全错过了在所有的服务器上的负载平衡及容错方面的好处。为了能够从负载平衡与容错中获得好处,他们必须通过专门的共享(\ \域名.com\共享名称)来访问DFS根。
假设用户正在通过DFS共享来访问DFS根,那么他们会很自然地看到由于DFS负载平衡而带来的性能的提高。DFS服务器能够在多个副本中平衡用户的流量,所以没有任何一个副本会占用全部的用户工作量(假设该服务器是通过DFS共享来访问的。)
然而,DFS的真正优点却体现在单独的复本可以脱机使用(无论是有意的还是无意的),而不用中断用户。用户仍然可以完全访问他们的文件,但是访问的速度可能会比副本已经完成的时候慢一些。
如果服务器损坏了,那么DFS将会最终停止向这台服务器发送用户请求,但是如果在分布式文件系统服务发现问题之前,你就发现了服务器已经停机,或者是如果你需要对一台DFS服务器进行停机维护,那么这里有一个你可以采用的非常简单的方法。要开始这个过程,首先在“运行”命令对话框中输入MMC命令。当你输入这个命令之后,Windows会载入一个空的微软管理控制台。现在,要在控制台的“文件”菜单中选择“添加或移除管理单元(Snap-In)”命令。Windows这时将会显示“添加或移除管理单元”属性菜单。这时,点击基于属性菜单“Standalone”标签下的“添加”按钮,以便显示所有可用的管理单元的表列。在表列中选择“分布式文件系统”选项,并点击“添加”按钮,接下来点击“关闭”和“确认”按钮。
现在,DFS控制台已经打开了,在左侧的栏目中选择你的DFS根。右侧的栏目中将会显示DFS根中所包含的副本。如果你想脱机获得一个副本,那么只要简单地用右键点击副本,然后在快捷菜单中选择“移动目标”命令。这样的操作之后,目标将不再是DFS根中的一部分了。现在你可以随心所欲地对服务器做任何你需要做的事情了,而这一切都不需要中断用户。当你完成了对服务器的操作之后,只要简单地把服务器作为目标添加回来并启动复制就可以了。
向DFS根中添加数据
现在你已经了解到DFS能够在多大程度上改善用户的体验,并且能够让你的生活变得更为轻松,可能你还想要向DFS根中添加额外的数据。为了达到这个目的,你可以创建额外的DFS根(在第一部分中介绍了如何创建DFS根的方法),或者你还可以把额外的数据添加到已经创建好的根中。微软对这两种方法都支持,但是它们更倾向于把数据添加到已经存在的根中。这其中的原因在于这样做会使得处于单独DFS根下的所有用户数据的合并成为可能。这就意味着用户不再需要担心他们的文件处于什么样的物理位置。在一个单独的共享中,所有的用户文件都是有效的。
要把额外的数据添加到DFS根中,需要首先用鼠标右键点击你所创建的DFS根,并且在快捷菜单中选择“新的连接”命令。当你进行了这样的操作的时候,你将会看到一个对话框,提示你输入连接的名称以及目标的路径。
连接的名称就是用户在访问这个连接时所看到的名称。用户将会在DFS根下看到这个作为下级目录的新连接。你还必须为新连接输入符合通用命名标准(UNC)的路径,以及一个可选的注释。点击“确认”,随后该连接即被创建。
DFS可以使文件访问变得更快而且更稳定,由此提高了用户的性能。它还改善了你的生活质量,因为你不必再去等到夜深人静的时候才能进行服务器维护。你可以在不中断用户的前提下就对一台单独的DFS服务器进行脱机操作。