2

We're trying to use IIS shared configuration on Server Core 2012 R2.

It works perfectly with one exception which is that if the SMB share that stores the IIS config files goes offline IIS crashes and won't automatically recover even if the SMB share comes back online.

The only solution I can find to this issue is this article (https://www.iis.net/learn/web-hosting/configuring-servers-in-the-windows-web-platform/offline-files-for-shared-configuration) which describes setting up offline files.

The problem with that is that offline files is part of the desktop-experience feature which requires "Server Graphical Shell" and "Graphical Tools and Infrastructure". So to utilize that we'd need to basically convert our server core boxes to the full version of windows. Not exactly what we want - we're using server core to minimize the footprint of our servers.

I'm trying to figure out if there is some alternative we can use. I've found several different solutions which will sync content from the SMB share to the local PC (GoodSync, SyncBack Pro, Sync Toy, etc) - that's no problem.

The issue is that offline files "intercepts the API call to access the files on the file server, and get the data in the local device cache". So it transparently takes care of redirecting the request from the remote share to local storage. None of the alternatives I can find to offline files handle this piece.

Does anyone know of any syncing tools that would transparently handle redirecting requests to the local filesystem when the smb share is unavailable?

Brad
  • 619
  • 1
  • 10
  • 28
  • Is making the share itself highly available an option? – Daniel Feb 02 '16 at 21:59
  • The share is already on an active/passive failover cluster which fails pretty quickly but IIS still craps out. :( DFS may fail faster - I'm going to try and store the config on that and see if maybe that might help? – Brad Feb 02 '16 at 22:38
  • You should make the file Server service highly available by configuring the file server cluster role on the cluster or in a guest cluster. You will be able to watch a movie from the share without even noticing the failover. I'll write that up as an answer tomorrow. – Daniel Feb 02 '16 at 22:59

1 Answers1

1

Instead of a simple failover, you should implement a Scale-Out File Server for Application Data (Overview)

It's a continuously available file server that can be realised with a (guest) cluster by configuring the file server role. The documentation covers all the steps, but it's roughly:

  1. At least two servers with the failover cluster role configured,
  2. both having a second disk for data configured as a shared vhdx.
  3. The disk must be added to the cluster storage.
  4. Configure the file server role.
  5. Add an SMB share to the file server cluster role.

If one of the cluster nodes dies, the failover is instantly. You'll be able to watch a movie from the continuously available SMB share and you won't even note that one node went down.

Daniel
  • 6,940
  • 6
  • 33
  • 64
  • It looks like this would be viable option - however in our case we already have our IIS shared config on an (EMC) SAN - with a pair of HA datamovers. Thus building a failover cluster wasn't necessary - simply enabling an SMB v3 feature called "continuous availability" is sufficient. – Brad Feb 08 '16 at 17:21
  • To do so we had to delete our existing shares, unmount and remount the filesystem with a continuous availability flag set, and re-share the filesystem. Commands as follow: – Brad Feb 08 '16 at 17:28
  • server_export vdm0 -Protocol cifs -unexport -name IIS_SHARED_CONFIG_FILESYSTEM -option netbios=FILE-SERVER-NAME server_mountpoint vdm0 -delete /IIS_SHARED_CONFIG_SMB_SHARE server_mount vdm0 -option rw,triggerlevel=512,accesspolicy=NATIVE,smbca,nolock, IIS_SHARED_CONFIG_FILESYSTEM /IIS_SHARED_CONFIG_FILESYSTEM server_export vdm0 -Protocol cifs -name IIS_SHARED_CONFIG_SMB_SHARE -option netbios=VIRTUAL-DATAMOVER-NAME,type=CA, /IIS_SHARED_CONFIG_FILESYSTEM/data – Brad Feb 08 '16 at 17:29
  • Replacing your IIS_SHARED_CONFIG_FILESYSTEM, IIS_SHARED_CONFIG_SMB_SHARE and VIRTUAL-DATAMOVER-NAME with values appropriate for your environment. – Brad Feb 08 '16 at 17:29
  • Out of curiousity: What are those commands? They don't ring a bell. – Daniel Feb 08 '16 at 20:29
  • Careful! This: `simply enabling an SMB v3 feature called "continuous availability" is sufficient` is not always true. If you are talking about a vhdx that you mount in two or more Hyper-V VM, then it's not enough to just tick the shared VHDX checkbox. – Daniel Feb 08 '16 at 20:38
  • The commands above are EMC specific commands available on a Control Station for managing shares on a datamover. As far as your comment about VHDX files - you're probably right. In my case, (as the original question subject indicates) we're only storing IIS shared configs. (Two xml files each around a few hundred KB) – Brad Feb 09 '16 at 20:22