18 December, 2010

Configuring DFSN {Distributed File System Namespace}

Distributed File System Namespace

Introduced in Windows 2003 R2, DFSN is a way by which users can access the data. Before Windows 2003 R2, we use to have DFS which was used by the users to access the data.

DFSN is not related to DFSR. DFSN will NOT Replicate the data, It will just allow you to ACCESS the data.

Having DFSN and DFSR in the same Snap-In does not make them dependent, both DFSN and DFSR are Independent of each other


Root (DFS)            = Namespace (DFSN)
Root Target (DFS) = Namespace Target (DFSN)
Link (DFS)             = Folder (DFSN)
Link Target(DFS)   = Folder Target (DFSN)

Namespace: Starting point which users will use to access the data (\\Net.com\MyRoot)
Folder: A way to create bifurcation/hierarchy inside the Namespace (\\Net.com\MyRoot - HR, IT)

Here HR and IT are Folders.Once users accesses \\Net.com\MyRoot, they will get 2 folders - HR, IT

By just looking at the folders they will be able to know which folder they need to access to get the data they are looking for. Also, we can have permissions defined so that users from HR dept will have access to HR Folder only while users from IT will have access to the IT Folder only. This way they will not be able to view each other data

In Windows 2003 R2, DFSN has to be added from Add/Remove Windows Components
In Windows 2008 and above, DFSN has to be added using the "File Services" Role using Server Manager

Here you get an option to add the DFSN and DFSR Role. Again, see both DFSN and DFSR can be added individually making them independent of each other

For now, I will add both DFSN and DFSR Role on this Server

The wizard gives me an option for creating a Namespace (We will discuss Namespace later) or I can create a Namespace later as well once the DFSN Role has been Installed

DFS Management Snap-In... DFSN and DFSR Nodes

Click on the Namespace and Right Click and choose the option of Creating a New Namespace

Specify a server on which the Namespace (Root) will be Stored

Give a name to the "Namespace" - The name of the Namespace will essentially starts with the domain name and then this name that you will specify will get post fixed. So, In case you specify "MyRoot" as the name of the namespace, then the complete namepsace will become: \\Net.com\MyRoot

This is the default location (C:\DFSRoots) where the Namespace will be stored. Alongwith, is the permissions that will/can be applied to the Namespace

Type of Namespace: Domain Based or Standalone

For more information on the types of DFS Roots, Please read the following Post: http://www.adshotgyan.com/2010/12/domain-root-standalone-root-in-dfs.html

Namespace Created... (\\Net.com\MyRoot)

Lets go into the DFSRoots Folder on the File System

DFSRoots will conatin the folder with the name of the Namespace - "MyRoot"

Once you click on the Namepsace, you will find 4 tabs on the Right Pane

1. Namespace
2. Namespace Servers
3. Delegation
4. Search

Namespace Servers: Location where the Namespace has been stored (On which server the Namespace is stored)

Delegation: Permissions that we have on the Namespace

Search: A new tab added in Windows 2008 to search for folder and folder targets

Now lets add a target to this Namespace. Adding a target would mean that we will store the Namespace data (Not the actual data but only the DFSN configuration, i.e Root and the Links) on another server as well.

In case the first server on which I have hosted my Namespace goes down, my users will get the referral from the other server which is also hosting the Namspace

Specify the name of the other server

You can change the location where the Namepsace will be stored by default (C:\DFSRoots) or you can change the permissions

Namespace is now hosted on two servers...

On the other server, if you don't see the Namepsace then don't panic... Calm down and choose this option "Add Namespace to Display"

DFSRoots folder on the other server where we have hosted the Namespace... Remember, you don't have to create this folder. This folder gets created automatically during the configuration of the Namespace...

Now lets add a Folder in this Namespace...

Give a name and location for the Folder...

Again, If you have not created the folder prior of configuring this, you also have an option to create the folder now...

Folder specified (C:\MyLink1)...

Good... The Folder (MyLink1) is now created in the Namespace (\\Net.com\MyRoot)...

Similar to the Namepsace Target, we will now add the folder target.

A point to note here is that the Namepsace will only contain the configuration (Root and the Links) but the folder will contain the actual data...

Select the other server where you want to create another target for the Folder...

If the folder has not been created on the other server, then you have an option to create the folder now...

One the Folder Target is added, DFSN will give you an option to configure Replication on the Folder... You can choose "No" and can enable Replication Later

An important point to note here is that you didn't got an option to enable replication when you added a Namespace Target... You got this option only when created a new target for the folder...

This is because Microsoft do not supports replication on the Namespace... It is a bad idea to enable replication on the Namespace (C:\DFSRoots)... If you have noticed, that we have not enabled replication on the Namespace still the data (C:\DFSRoots\MyRoot) on the 1st server got replicated to the other server...

This is because the DFSRoots does not actually contains data... It just the root and inside the root are the pointers to the folders (links) known as Reparse Points which replicates automatically... You cannot manually replicate Reparse Points... that is why Microsoft does not supports enabling replication on the Namespace (C:\DFSRoots\MyRoot)....

Now we have a Namepace (\\Net.com\MyRoot) with two Referral on two servers and in the Namespace we have a Folder (MyLink1) again with two referrals on two servers