Distributed File System (DFS)

If you have a network with lots of storage that includes a Windows 2000 or W2K3 Server the Distributed File System (DFS) is your friend. This very cool technology makes it easy to move around where you store stuff physically while retaining a consistent namespace for your clients.


For example, on my network at home I have several servers, each with many hundreds of GB of strorage. As my data needs grow (and they are always growing as my photo, music, and video collection grows) I find that sometimes I need to move data from one machine to another in order to manage the overall storage pool better. Recently I was running out of space on the one machine (\\kindelsrv2) that held all my music, photos, & video because I was backing up DVDs (and using the Media Center add-on called DVDJukebox). I bought some new 250GB drives for my MCE machine (\\kindelmce) and configured them with RAID 1 (mirroring for reliability). I moved all the videos over there.


My client machines always access video content via this name: \\kindel.com\shares\video. That is a DFS name. There is really no machine named \\kindel.com (that’s the name of my AD domain), but DFS manages the namespace below \shares (the DFS root). Once I moved all my videos over to \\kindelmce, all I had to do was create a share (\\kindelmce\video) and change the DFS namespace (using the DFS admin snap-in) to point to \\kindelmce\video instead of \\kindelsrv2\video for the \\kindel.com\shares\video name. All my client machines (and software I’ve configured on them, like DVDJukebox) continue to work and my family doesn’t have to know I changed anything.


This is way cool and very useful. DFS has some limitations (which are being worked on by the DFS team), but for many scenarios like this it’s the bomb. Note that I’m using DFS to manage a namespace. It also is useful for load balancing and redundancy: A single DFS name can actually refer to multpile physical shares and the DFS client has the smarts to determine which one is “closer” or if one is down it will automatically take you to another one. DFS utilizes a complimentary technology called FRS (File Replication Service) to replicate the contents between nodes. I don’t use this at home, but it’s popular in many IT environments.


There are two types of DFS configurations: server based and domain based. In the server based configuration you don’t require any AD infrastructure but the machine you choose to host the DFS root cannot be changed (e.g. in my case it would be an actual machine name such as \\kindelsrv2 instead of the “virtual” \\kindel.com). I choose to use domain based DFS because I do have a domain and it gives more flexibility.


Good info on DFS can be found here: http://www.microsoft.com/windowsserver2003/technologies/fileandprint/file/dfs/default.mspx


My next post will be an interesting tid-bit I learned about DFS that doesn’t seem to be well documented…

Debate this topic with me:

This site uses Akismet to reduce spam. Learn how your comment data is processed.