We are excited to announce that the IIS.NET Forums are moving to the new Microsoft Q&A experience. Learn more >

MSCS / Failover clustering and IIS 7.0RSS

26 replies

Last post May 26, 2010 07:44 AM by Rovastar

  • MSCS / Failover clustering and IIS 7.0

    Nov 07, 2007 11:51 PM|steve schofield|LINK

    Has there been anyone who has implemented or tested failover clustering and IIS 7.0?  I'd be curious to find out any thoughts / comments on why you went with MSCS vs. a web farm. 

    This is probably for the IIS team mostly, has there been anything where IIS 7.0 wouldn't run in an MSCS?

    Steve Schofield
    Windows Server MVP - IIS
    http://iislogs.com/steveschofield
    http://www.IISLogs.com
    Log archival solution
    Install, Configure, Forget

  • Re: MSCS / Failover clustering and IIS 7.0

    Apr 18, 2008 03:15 PM|species5618|LINK

    Not something i have done, but there was someone at the IIS Team Q&A at tech-ed in Barcelona who was very upset as MSCS in Server 2008 did not support IIS

    Personal I dont fully understand why any one would use MSCS for WEB when decent load balanced solution with .net session state support is muh better

    I am watching this thread with interest

     

  • Re: MSCS / Failover clustering and IIS 7.0

    Apr 19, 2008 06:59 AM|steve schofield|LINK

    From what I can find, MSCS doesn't support IIS directly.  There have been rare cases where clustering and IIS was needed.  I've not tried myself, but you can probably get this to work.  It's not supported by MS on w2k8, but what you described would provide a solution.  Since the web is mostly state-less, NLB is a better fit.

    Steve Schofield
    Windows Server MVP - IIS
    http://iislogs.com/steveschofield
    http://www.IISLogs.com
    Log archival solution
    Install, Configure, Forget

  • Re: MSCS / Failover clustering and IIS 7.0

    Aug 08, 2008 11:21 AM|lognoulm|LINK

    Although I agree most of high-availability implementations of IIS7 will do fine with NLB, there are 2 scenarios’ I personally found MSCS useful to deal with:
    - Serving (very)large content while saving on storage costs. Software download and video on demand being two good examples. Increasing availability of storage using DFS (optionally DFS-R) or simply Robocopy) do not always do the job well and always require (at least) doubling the storage)
    - Situations where the destination ip of a request should be the same as the source ip of a response. OK, you can you a load balancer but at which cost…

    A pity it is not supported anymore. But I am interested in hearing about unsupported working implementations anyway :).

    KR,
    Marc Lognoul
    http://www.marc-antho-etc.net/blog/

  • Re: MSCS / Failover clustering and IIS 7.0

    Aug 12, 2008 08:08 AM|kruda|LINK

    Since IIS 6 or Server 2003 MS doesnt support IIS on Failover cluster directly. It is promoted using Network Load Balancing as the primary mechanism.  But its possible to use IIS6 on a Failover Cluster if needed by taking Generic Script Resource. Im not sure about IIS7 but on IIS6 Microsoft created two scripts that can be used when setting up Generic Script Resources to emulate Web and FTP sites. Clusweb.vbs and Clusftp.vbs are in the %systemroot%/System32/Inetsrv folder, once the corresponding IIS components are installed...

    Watch Microsoft Technet:

    http://www.microsoft.com/technet/prodtechnol/WindowsServer2003/Library/IIS/70db50cf-5eb6-4c2e-b60b-f0b8f3fdb915.mspx?mfr=true

  • Rovastar Rovastar

    5495 Posts

    MVP

    Moderator

    Re: MSCS / Failover clustering and IIS 7.0

    Aug 12, 2008 10:32 AM|Rovastar|LINK

    lognoulm

    Although I agree most of high-availability implementations of IIS7 will do fine with NLB, there are 2 scenarios’ I personally found MSCS useful to deal with:
    - Serving (very)large content while saving on storage costs. Software download and video on demand being two good examples. Increasing availability of storage using DFS (optionally DFS-R) or simply Robocopy) do not always do the job well and always require (at least) doubling the storage)
    - Situations where the destination ip of a request should be the same as the source ip of a response. OK, you can you a load balancer but at which cost…

    A pity it is not supported anymore. But I am interested in hearing about unsupported working implementations anyway :).

    KR,
    Marc Lognoul
    http://www.marc-antho-etc.net/blog/

    a) For lots of content why wouldn't you just have a webfarm IIS front end and the content on a shared NAS/SAN/etc that has the failover. There is no real need for IIS clustering frontend from what I can see.

    b) The cost of another server which one will be mostly redundant in a failover cluster enviornment seems a waste. Most of the time a problem with website is traffic spikes. A farms helps this whereas a failover cluster solution doesn't.

    You might as well have a webfarm of 2 servers and a h/w load balancer rather than if you bought 2 servers and only ever use one at any one time.

    Troubleshoot IIS in style
    https://www.leansentry.com/
  • Re: MSCS / Failover clustering and IIS 7.0

    Aug 12, 2008 11:29 AM|lognoulm|LINK

    kruda

    Since IIS 6 or Server 2003 MS doesnt support IIS on Failover cluster directly. It is promoted using Network Load Balancing as the primary mechanism.  But its possible to use IIS6 on a Failover Cluster if needed by taking Generic Script Resource. Im not sure about IIS7 but on IIS6 Microsoft created two scripts that can be used when setting up Generic Script Resources to emulate Web and FTP sites. Clusweb.vbs and Clusftp.vbs are in the %systemroot%/System32/Inetsrv folder, once the corresponding IIS components are installed...

    Watch Microsoft Technet:

    http://www.microsoft.com/technet/prodtechnol/WindowsServer2003/Library/IIS/70db50cf-5eb6-4c2e-b60b-f0b8f3fdb915.mspx?mfr=true

    Actually MS does support on IIS6 it but I agree NLB is far more suitable/practical in most cases. See this step-by-step guide from HP for the details: http://h71019.www7.hp.com/ERC/downloads/4AA2-0100ENW.pdf.

    What is funny is that the 2 well-known VB scripts you mention are included with IIS 7 but are, up to my knowledge, useless

    KR,
    Marc Lognoul
    http://www.marc-antho-etc.net/blog/

  • Re: MSCS / Failover clustering and IIS 7.0

    Aug 12, 2008 07:25 PM|steve schofield|LINK

    Interesting thread.  In all my years of doing windows, I've only had 1 requirement to make a IIS website cluster aware.  It was an EDI based application, it's how the vendor implemented the app and we needed high availability.  NLB wouldn't have met our needs.  Otherwise generic web applications NLB should do the trick.

    Steve Schofield
    Windows Server MVP - IIS
    http://iislogs.com/steveschofield
    http://www.IISLogs.com
    Log archival solution
    Install, Configure, Forget

  • Re: MSCS / Failover clustering and IIS 7.0

    Oct 14, 2008 12:46 PM|apahwa|LINK

    Steve, I have a situation. I have a Windows 2008 Cluster with SQL 2008 cluster configured on it and want to use the same hardware to run IIS on both the nodes with some sort of failover / load balancing mechanisum. As I read through your blog an several other places, MSCS & NLB can't run in parallel, Can you point me to some white papers or guide to install IIS 7 on a windows 2008 cluster. I know it is not supported but I have to make it happen anyway. We would not have too many changes in IIS so can live with a local copy on each node or else can use the Data partition on  the shared drives for SQL. your help is much appreciated.

    Ash

  • Re: MSCS / Failover clustering and IIS 7.0

    Oct 15, 2008 10:21 PM|steve schofield|LINK

    I don't believe IIS has a way to run the resource so there is an automatic failover using MSCS.  You almost have to install IIS on both boxes, with the DNS name pointed to one of the nodes.  In the event of a failover, have an external monitor that could update the DNS alias to point to the backup node.  the monitor could be looking at the cluster resources and detect a failover. Each IIS instance could point to the same content stored on your shared storage.   That is one idea to test. I've not done much with w2k8 clustering but do have a decent amount of experience with w2k and w2k3.  Hope that helps.

    Steve Schofield
    Windows Server MVP - IIS
    http://iislogs.com/steveschofield
    http://www.IISLogs.com
    Log archival solution
    Install, Configure, Forget

  • Re: MSCS / Failover clustering and IIS 7.0

    Oct 16, 2008 02:33 AM|lognoulm|LINK

    Instead of using a DNS trick, I'd rather use a load balancer in front of the two IIS. Failover is then automatic and often "smarter"

     

    KR,
    Marc Lognoul

  • Re: MSCS / Failover clustering and IIS 7.0

    Oct 16, 2008 07:35 AM|steve schofield|LINK

    The poster mentioned NLB, which is why I suggested the DNS trick.  Good idea on also using a hardware load-balancer to provide WWW load-balancing.

    Steve Schofield
    Windows Server MVP - IIS
    http://iislogs.com/steveschofield
    http://www.IISLogs.com
    Log archival solution
    Install, Configure, Forget

  • Re: MSCS / Failover clustering and IIS 7.0

    Oct 16, 2008 08:55 AM|kruda|LINK

    Well WMI and vbscript still exists so it should also be possible to install a script ressource on the cluster which implements the entry point functions needed.

    It should also be possible to start and stop IIS7 with vbscript, isnt it?

     

    so if this is possible, one should also have the possibility to use IIS7 wihtin a failover cluster i think.

     

    But i never tried it so far.

     Regards

    kruda

  • Re: MSCS / Failover clustering and IIS 7.0

    Oct 16, 2008 09:47 AM|apahwa|LINK

    Kruda, I am thinking on the same lines as you are suggesting but facing some problems. MSCS goes on a hang when I try to move the IIS (generic service) from one node to another to test a failover. I guess I am doing some thing wrong or missing some configuration. That is the reason i was wanting to know if any body has tried it or seen a document to do it. i am also looking at Steve's and marc's suggestion of DNS trick, but automation is the key word.

    Thanks

    Ash

  • Rovastar Rovastar

    5495 Posts

    MVP

    Moderator

    Re: MSCS / Failover clustering and IIS 7.0

    Oct 23, 2008 12:34 PM|Rovastar|LINK

    I am still confused why anyone would want to do this.

    Are there any cases where this would be desirable? I am struggling to think of any.

    With a load balancing system you can take one of the server out of the stream to update patches etc and balance out the load for when it is running normally.  And use the other tiers in the web env for any clustering needs.

    Troubleshoot IIS in style
    https://www.leansentry.com/
  • Re: MSCS / Failover clustering and IIS 7.0

    Oct 23, 2008 01:10 PM|kruda|LINK

    Does NLB get an IIS error i mean does it recognize that IIS Service is down or only that the machine is down ?

     

    Regards

  • Re: MSCS / Failover clustering and IIS 7.0

    Nov 24, 2008 03:00 PM|northshade|LINK

    Server 2008 NLB doesn't support Stretch Clusters does it?  With MSCS I am able to build a Strech Cluster between my Datacenter and a DR site.

  • Re: MSCS / Failover clustering and IIS 7.0

    Nov 24, 2008 04:12 PM|kruda|LINK

     Well i am using MSCS with Server 2003 and IIS 6. To get a applicatin cluster aware i am using generic service which works very fine but i am not able to recognize if my application is hanging. with generic service i can only failover if my server is dying.  To recognize that my application is not working anymore i have to make the application itself  cluster aware or using my way, namely a generic script implementing the enty point functions.

     

    I hope this will work in a few days also .

  • Re: MSCS / Failover clustering and IIS 7.0

    Nov 24, 2008 04:22 PM|northshade|LINK

    I too had it working acceptably with 2003 and IIS6.  But now we are upgrading to 2008 and IIS7 and I need to be able to cluster my Exchange 2007 CAS role accross multiple sites.   I'm working with it in my test environment at the moment, but not with much success. 

  • Re: MSCS / Failover clustering and IIS 7.0

    Apr 19, 2009 10:27 PM|Kanien|LINK

    if the choices are NLB vs MSCS the reason someone would hypothetically want MSCS is for service checks.  Am I wrong in my assumptions that NLB doesn't do service checks and uses another mechanism for knowing whether a node is available?  For example if one of the web nodes responds to ICMP, but the web service has failed the request would error out right?

    In this same scenario if you had MSCS Active/Active on IIS7 it would know the web server wasn't responding and wouldn't pass the request...ideally..but I'm told that MSCS on 2k8 doesn't work for IIS7.

  • Re: MSCS / Failover clustering and IIS 7.0

    Apr 19, 2009 11:08 PM|steve schofield|LINK

    If you are using a hardware load-balancer, you can do basic service level checks and take nodes out of rotation if they are not responding.  NLB doesn't have this, if you wanted to use NLB from MS, then you'd have to monitor each node (each domain on each node) and alert.  If an alert came up, the alert action could disable the site.  That wouldn't be very pretty but it would work. 

    Steve Schofield
    Windows Server MVP - IIS
    http://iislogs.com/steveschofield
    http://www.IISLogs.com
    Log archival solution
    Install, Configure, Forget

  • Re: MSCS / Failover clustering and IIS 7.0

    Apr 20, 2009 11:43 AM|DClayton|LINK

    Hi to all,

    I currently have my web platform running on a 2 node cluster using Server 2003 and IIS6.  I have two cluster groups; one for SQL Server and the other for IIS.  This provides me a robust solution as i can have a SQL running on one server and IIS running on the other.  This allows me to utilize both servers and also the reliability that either server fails, the other will pick up the cluster group and run both simultaniously.

    I am looking to upgrade to Server 2008 and after reading this post, I am wondering if I am setting my website up correctly.  I have two physical machines and a SAN and I want to get the best in terms of reliability and performance.  The main problems with the current setup are as follows:

    a) If IIS crashes or the application pool fails to recycle, the group doesn't failover.
    b) Any application / IIS changes have to be made on both nodes.  IIS allows you to export the metabase and re-import but custom .Net installations do not.  If we upgrade the app, it has to be done on both nodes independantly.

    Some other considerations are:

    a) I have multiple sites running within IIS, each with their own IP currently controlled by MSCS.
    b) I have file shares for the various site setup, again managed by MSCS.
    c) I don't want to loose the ability to have shared resources between two nodes, for example, can NLB allow me to have file shares etc and not require me to set them up independantly on each server. 

    What would people recommend for setting up the two machines, preferably with Server 2008?  My main site comprises of the application (installed to C:\), the IIS structure (installed on I:\), and the SQL data (installed on E:\).  Any suggestions would be very welcome.

    IIS 6 IIS 7 SQL MSCS NLB

  • Re: MSCS / Failover clustering and IIS 7.0

    Jul 09, 2009 02:38 PM|Tray_Harrison|LINK

     I just came across as I'm about to try clustering IIS 6.  In my 8 years of being an IIS Admin this will be my first attempt at clustering, so it should be fun. :)

     The reason we are doing this is because we are installing a 3rd party ERP app which requires IIS to be loaded on the app servers, which also run Websphere.  Those servers will be using MSCS to provide redundancy, so that means I need to install IIS to the cluster.  I found that HP article earlier.  Any other advice or resources I should look at?  Thanks guys.

  • Rovastar Rovastar

    5495 Posts

    MVP

    Moderator

    Re: MSCS / Failover clustering and IIS 7.0

    Jul 09, 2009 04:39 PM|Rovastar|LINK

     Probably better off starting a new thread.

    I would advice on a hardware load balanced frontend and then have a db in a cluster environment.

    Troubleshoot IIS in style
    https://www.leansentry.com/
  • Re: MSCS / Failover clustering and IIS 7.0

    Oct 29, 2009 04:57 AM|steve schofield|LINK

    Steve Schofield
    Windows Server MVP - IIS
    http://iislogs.com/steveschofield
    http://www.IISLogs.com
    Log archival solution
    Install, Configure, Forget

  • Re: MSCS / Failover clustering and IIS 7.0

    May 18, 2010 11:48 AM|KRathgeber|LINK

    One instance for us is licensing.  We have one particularly expensive piece of software that we use.  To NLB would require two licenses of the product.  Clustering only requires one license.

     I know it isn't a great reason, but is a reason.

  • Rovastar Rovastar

    5495 Posts

    MVP

    Moderator

    Re: MSCS / Failover clustering and IIS 7.0

    May 26, 2010 07:44 AM|Rovastar|LINK

    True there are a couple of reason too like that licensing.

    Reasons not to:

    http://msmvps.com/blogs/clusterhelp/archive/2006/02/17/clustering-iis-and-sql-on-the-same-boxes.aspx

    Troubleshoot IIS in style
    https://www.leansentry.com/