[Last Call] Learn how to a build a cloud-first strategyRegister Now

  • Status: Solved
  • Priority: Medium
  • Security: Public
  • Views: 3176
  • Last Modified:

Using DFS share without DFS replication

Hi Guys,

I nto my understandign DFS Share and DFS replication go hand in hand. In a way that DFS namespace(Share) works as a load balancedr or you can say pointer between two physical server. The share folders are physically empty then and the only job they have is to redirect the request to server with least traffic. User goes there and makes the appropriate changes physically.

Now, DFS replication takes care of Replication, it makes sure that whatever changes are physically made into the client's host server for that session, are replicated to the other server.

If I am right then what does happen in the following scenario?

DFS Share is on but the replication is off.

People will come and theier requests will be redirected to two different servers accrding to traffic but with the replciation off, How will this changes be synchronized?
6 Solutions
Adam BrownSr Solutions ArchitectCommented:
DFS doesn't actually redirect users according to traffic. It chooses the responding server randomly, so it mimics load balancing, but it's not a true load balance. For info on that see this article: http://technet.microsoft.com/en-us/library/cc962133.aspx

In your scenario, without replication ensuring that both servers serve the same information, if a user saves a file to the DFS namespaced folder, the next time they try to access that file it may not be visible to them because DFS is pointing them to the server that doesn't have the file.
Adam BrownSr Solutions ArchitectCommented:
In other words, the only time you have two servers handling the load of users at the same time is when you're using Namespaces and Replication in tandem. Without Namespaces, replication can work fine, but you have to connect to the servers using \\servername
Without replication, Namespaces will allow you to connect to two servers using \\domainname\folder but if one folder in a namespace exists on both servers, the server that you see files from is chosen randomly, so if you have files on one server and not on another, whether you see the files or not depends on random chance.
If you have Namespaces and Replication going together, you can connect to a share using \\domainname\folder, and the folder points to a spot on both servers that have the exact same files. If you write a new file to the share, it is replicated to the other server at the set interval and will then be available on both servers and visible at all times.
The DFS shares do not have to be replicated.  If you have DFS on one server and users are using the DFS shares they will only go to that server. Or what ever server is listed on the path.
the following could be true: \\server1.dfs.domain.corp\shared = \\server1\shared (path)
Inside that shared there is a folder accounting.  But that path for accounting is \\server2\accounting
the users see \\server1.dfs.domain.corp\shared\accounting  but they are redirected to the accounting folder on server2.  No synchronization will occur for there is no replication, only redirection.
On the other hand if replication is enable, the DFS path that are enable for replication will be replicated.  
\\server1.dfs.domain.corp\shared = \\server1\shared (path) and \\server2\shared (path) will synchronize.  And any single instance path will be redirected.\\server2\accounting
Veeam and MySQL: How to Perform Backup & Recovery

MySQL and the MariaDB variant are among the most used databases in Linux environments, and many critical applications support their data on them. Watch this recorded webinar to find out how Veeam Backup & Replication allows you to get consistent backups of MySQL databases.

TheCommunicatorAuthor Commented:
If I am understanding acbrown2010 right here:
"In your scenario, without replication ensuring that both servers serve the same information, if a user saves a file to the DFS namespaced folder, the next time they try to access that file it may not be visible to them because DFS is pointing them to the server that doesn't have the file. "
I can not have DFS Share without replication (Atleast it is not recommneded) because it raises sync issues and users will not see the right files there.
According to Elmagoal here::
"The DFS shares do not have to be replicated.  If you have DFS on one server and users are using the DFS shares they will only go to that server."
Do you mean this is the case when I have DFS share only on one server, right? What if the DFS share is actually having two servers listed there. Does it make replication required there as acbrown2010 said?
We use Robocopy
Create a scheduled task that runs a bat file nightly.
Here is some lines from that .BAT file

start "Update Server1" robocopy c:\RepShare\ \\Server1\g$\Repshare\ /MIR /XO /R:5 /W:10 /X /log:c:\dfslogs\DFSCopy-Server1.log /XF *.DCN /XD CADD* DATA* ArcGIS9.2*

Open in new window

Adam BrownSr Solutions ArchitectCommented:
Elma's explanation isn't entirely accurate. He's how it will work:
You have a share on two different servers. If you implement DFS on both servers, you will need to create a name for the namespace. From that point on, you can connect to the namespace by entering \\domain.local\<Namespace name> Once that is done, you can add folders to the namespace. If you were able to use replication, you could link the shared folders that would be replicated under one folder. But since you can't use replication, you have to set up a different folder for each server's share. So server 1's share is share1 and server 2's share is share2. You then create one folder in the DFS namespace and point it to server1. Create a second folder in the Namespace and point it to server 2's share. You then connect to Server 1's share with \\domain.local\<namespacename>\<server1share> and to server 2 with \\domain.local\<namespacename>\<server2share>

What this does is make it easier for users to find shared folders on the network. Rather than getting to the shares with \\server1 or \\server2, then can get to it from the same path at \\domain.local
That's the only benefit that DFS namespaces alone give you.
TheCommunicatorAuthor Commented:
OK so in this case admin has to manually take care of sync :).
I agree with acbrown2010 for the most part.  One thing that I will add is that you can run into worse problems than files simply not being present.  If a user makes changes to a file on a DFS share and then later comes back and is redirected to another DFS root server, they may get an older version of the file they thought they updated.

Robocopy is a fine (yet not supported or recommended solution) as long as your files are not accessed frequently such as in the case of users' home directories or other file shares that are accessed multiple times daily.  I have seen numerous support cases where the entire DFS structure needed to be recreated because they were not using DFS replication. (Most of them used robocopy) In 2003 R2 and later, Microsoft DFS replication has been vastly improved and now using Differential Replication only replicates the changes in files.  This dramatically reduces network bandwidth usage and increases efficiency.  I highly recommend using Microsoft DFS Replication over robocopy or third party replication solutions.

I recommend reviewing the articles below for further technical details.

Adam BrownSr Solutions ArchitectCommented:
You can also configure DFS replication to occur at particular times of day, like at midnight or during lunch. In general, if you really need to have two servers with the same files on them, you're better off using DFS replication. If, on the other hand, you have problems with performance due to too many users accessing files on a single server, you are much better off breaking your shares up into departments or some other logical arrangement, placing the file shares that they need on the two different servers with the more heavily accessed shares spread out between servers, and using DFS namespaces to allow easy, non-confusing access to them. That way the Accounting department will use domain.local\files\Accounting to get to their files and IT will use domain.local\files\IT to get to theirs, even though the files themselves are on different servers.
TheCommunicatorAuthor Commented:
Thank you very much guys. This was a really healthy knowledge sharing :).
TheCommunicatorAuthor Commented:
I am trying to close this question by distributing points and selecting solutions and it's is putting me on hold. I have never seen this kind of behavior before from this website.

Featured Post

Independent Software Vendors: We Want Your Opinion

We value your feedback.

Take our survey and automatically be enter to win anyone of the following:
Yeti Cooler, Amazon eGift Card, and Movie eGift Card!

Tackle projects and never again get stuck behind a technical roadblock.
Join Now