Busting the Myth: You cannot cluster Windows Small Business Server

Microsoft created Windows Small Business Server as a one-box solution for companies that did not need more.  It has always been a hobbled product, based on Windows Server Standard, but limited in things like domain trusts, FSMO roles, and more.

Of course even if it were based on Windows Server Enterprise, the idea of creating a failover cluster for a product designed to be a single-server solution seems a little silly… or at least it would have in the late 1990s, when SBS was first delivered.

Welcome to the world of virtualization and the free Windows hypervisor.

Over the past several months I have written several articles on using free tools from Microsoft to create a failover cluster using the free Hyper-V Server 2008 R2 SP1 as the hypervisor, and the free Microsoft iSCSI Software Target 3.3 as the Storage Area Network (SAN) device (see the articles outlined in IT Pro Connection & the TechNet Flashfor details).

While it is not licensed to be a virtualization host, there is no reason why Microsoft Windows Small Business Server cannot be a virtualization guest.  Of course, it would require a little extra planning – if you plan to use the Fax service, for example, or if you rely on USB hard drives for your backup – but other than that, I am not aware of any limiting factors.

image

In this diagram you see the physical infrastructure required; the Virtual SBS box resides on the iSCSI Target and is homed by one of the nodes in the cluster at any given time.  It should be noted that this can be expanded to up to 16 cluster nodes, but two is not uncommon for smaller organizations.

This solution, it should be mentioned, it not free.  There are a number of costs involved, which I will outline.  However for a small organization that knows the dangers of their entire business relying on a single piece of hardware, the costs involved are often less than the potential downtime should your physical server fail.

Costs:

  • Instead of a single server to run SBS you need three: two virtualization hosts and one for the software iSCSI target.
  • One license of Windows Server 2008 R2 SP1 (to run the software iSCSI target)

While there are other costs involved (storage, networking) they are all a big ‘it depends’.  If you do have a SBS box that your business relies on, and you cannot afford downtime (who really can?) then these costs should be factored into the cost of doing business, and should be considered business critical.  In other words, invest in proper server hardware (HP ProLiant is a good choice!) rather than trying to do it on the cheap with white boxes or even worse, workstation-class hardware.  You may not think to thank me for it when everything is running smoothly, but you will remember reading this and regret not following my advice if you do not heed it and everything comes crashing down!

One more thing you should always remember: Take the time to familiarize yourself with all of the tools involved.  Build it in a lab environment that you can try out and make mistakes on before finally implementing the real thing.  When you do build it, TEST IT… Failover Cluster Manager has a feature to simulate cluster node failures… or if you want to really test it, try unplugging the network cable from the owner node.  Your Highly Available SBS should restart within seconds on the second node.

Remember that you are now adding a level of complexity to your SBS environment that you never had before, and one for which SBS was not designed; it will work, but as you are now working outside of the box, you have to start monitoring outside the box.  Make sure that your cluster is healthy every day; if you have a tool such as Microsoft System Center Essentials 2010 that monitors your network, implement the Clustering Management Pack.  If you use a third-party managed service provider (such as CharTec) then make sure that they know to monitor this solution for you.

Now that you know how to do it… Plan, Implement, and Enjoy!  I always welcome your comments on how you loved – or hated – my recommendations Smile

Advertisements

42 thoughts on “Busting the Myth: You cannot cluster Windows Small Business Server

  1. I would like to thank my buddy Brian K. Doré, who noticed a blatant error in the diagram originally included in this post. Thanks to him it has been fixed (read: recreated properly) and hopefully now the article will make a lot more sense! 🙂 Thanks Brian! -M

  2. Dude! Hobbled??? Users have always had the option to pay the normal going rates for OS and then purchase and install their desired server applications – but they had to have full Standard or better versions to make Trusts, move FSMO roles, and purchase more Client Access Licenses than SBS allowed, etc.

    SBS has ALWAYS been a terrific bargin! It is only when deployed in the hands of those that did not understand its rational and the reasons for the significant cost savings (at a discount which – BTW – one received terrific management, integration and wizard tools that NO OTHER VERSION HAD!) that the enduser (and technician) had experiences that were not good.

    Restricted – maybe – Hobbled – not a chance – when provisioned by the knowledgable technician!

    Hi Mitch!

    • Calvin I did not mean to offend… When I say that SBS is hobbled I mean that some of the features of the Server Standard platform (on which it is based) are restricted, and that you are limited by the number of users. I did not mean to suggest or imply that it was and is not a great deal for companies that fit into that <75 space… in fact you know that I spent several years working with it, and do not think that I was wrong to.

      SBS IS a great bargain… considering that the full versions of Server and Exchange alone would cost so much more to implement than SBS which includes those and so much more. It does have great management which (unlike its enterprise cousins) can be monitored and maintained with little experience, and in the hands of an experienced and knowledgeable IT Pro (such as yourself and a few others we know) can do wonders for a small biz.

      Please accept my apologies if you feel I implied otherwise 🙂

  3. Pingback: Busting the Myth: You cannot cluster Windows Small Business … | Tech Blogs

  4. Hi, dear friends, my concern is this, in my organization
    There is a small network of about 30 users all the services depend on a
    single server running Windows SBS 2008 Server R2, we are currently
    hardware having problems, ye are buying a new server with the
    order to make a current mirror. Will I be able to perform this task
    this version of operating system available to the organization?

    • Hi Raul,
      I am not sure that I understand your question; Firstly there is no SBS 2008 R2 – they went from 2008 to 2011. Secondly in an IT Infrastructure with a cluster (and especially in a smaller environment with single points-of-failure) it is critical that hardware be solid, and properly maintained. If you have SBS installed on a physical server that is starting to die, I would suggest running a simple P2V migration tool such as disk2vhd from SysInternals (www.sysinternals.com) so that you can capture your server as it is. Next I would acquire good hardware to implement it onto as a virtual machine (using the free Microsoft Hyper-V Server 2008 R2 SP1. Once you do that, I would then acquire the second node plus a server on which to build your iSCSI Software target; once you have done that, you can go follow the steps laid out in my articles to create the cluster and then to make the SBS virtual machine highly available.

      Good luck! -M

    • Hi Raul,

      The answer to that question is no… because Windows Small Business Server 2008 is based on Windows Server Standard, it is not a clusterable operating system. Clustering is only available with Windows Server Enterprise and Datacenter Editions… or with Microsoft Hyper-V Server (for HAVMs).

  5. I don’t understand why small businesses buy expensive hardware and keep it in house, it just does not make financial any sense anymore. When you have companies like , who can take your entire business computing platform and consolidate it in a data center with high availability and full redundancy. This company is a small company, but they spent a fortune on the right hardware to do the job. We were able to eliminate a full IT person at our facility because we get 9×5 support with our package with them.

    • Tyler while the cloud may be the right way for some companies, others prefer to keep their infrastructure in-house. Your company (I removed the name unless you want to buy advertising) may have a great solution… but if the customer’s Internet connection goes down so does their connection to your great solution.

  6. Mitch,

    Was interested in your article and thought I would give it a try. It appears however that your Hyper-V hosts need to join domain before they can be clustered. What are you using for a DC? If I where using two Hyper-V 2008 R2 core hosts and a iSCSI device (Synology, Qnap etc) clustering would not be possible would it?

    • Hi Brian,
      I do not use SBS in my environment, so I didn’t have the issue. However for SBS what I would do depends on how we are starting:
      1) Virtualizing an existing SBS:
      Join the two hosts to the existing SBS domain, create your cluster.
      2) Starting from scratch:
      On one of the hosts, install Hyper-V, then build the VM for SBS. Join the second host to the domain, create a VM running Server 2008 R2, join it to the domain, and promote it to Domain Controller. Join the first host to the domain; shut down the SBS VM, export it from the original location. Build your CSV (Cluster Shared Volume). Configure the default file locations on both Hyper-V hosts to be on the CSV. Import the SBS VM back onto the host. Make it an HAVM (Highly Available Virtual Machine) in Failover Cluster Manager. test that it can migrate, and then start it up again. At this point you can shut down and delete the second domain controller if you don’t have a license for it.

      I know it sounds complex, but it is worth it 🙂 -M

      • You still need a DC ‘outside’ the cluster in order for the cluster to assemble. Don’t you?
        Bit of a ‘by your own bootstraps’ problem. If both nodes of the cluster are down (power disappeared, UPS ran out) how do you bring it all back up?
        The additional DC outside the cluster could however be a very simple box.

      • That is correct… but not only can it be a very simple box, it can be a non-HAVM virtual machine. In fact, it can be a VM running under Virtual PC in your laptop.

  7. Did a test setup with Windows 2008 R2 Foundation Server as the DC and created the failover cluster for Hyper-v. Foundation Server does not have Hyper-V manager installed however you can still create the Virtual Machines with another PC i.e Windows 7 or with 59 Manager. Worked a treat.

  8. Hi !

    Thanks for your article. I manage a small (<20 workstations) network with a single 2003 SBS server and I was looking for a failover option for it. I'll try with a 2nd server + a synology NAS for iSCSI.

    Regards,

  9. Pingback: Lessons–Both Positive and Negative! « The World According to Mitch

  10. Thanks Mitch! This addresses my suggestion for more real world scenarios that was included in my comments on the eval for the IT Virtualization Boot Camp that I attended in Vancouver yesterday.

    Cheers,
    Brett

  11. Pingback: Windows Server 8: Busting the limits in Hyper-V, and comparing the numbers fo VMware vSphere 5.0 « The World According to Mitch

  12. How this work in term of license?

    I have a dell server with SBS 2011 installed. If I virtualize do I have to re-activate SBS 2011 license? What, in term of license, when the SBS 2011 virtual machine starts up from another Hyper-V host in case of master host failure?

    Thanks in advance

    • Hi Ripon,
      Depending on how you purchased your license the answer is different. If your SBS 2011 license was purchased as an OEM, then it must be installed on the physical hardware (unless you upgrade it by adding Software Assurance). However an OEM license cannot be transfered from machine to machine, nor can it be installed in a VM. -M

      • Thanks for reply!

        How the licensing work in term of Hyper-V Highly available virtual machine (HAVM)?

        We have two non-identical dell servers. My goal is to create a HAVM using Hyper-V Server on both hosts. what kind of licensing I need for the guest OS to transfer it machine to machine without any licensing issue? Does 90 days transfer restirction rule apply in case of HAVM?

        Thanks again

      • Hi Ripon,
        If you have any other license other than the OEM then the operating system will be installed into a virtual machine which can then be made highly available. As long as your two hosts pass the Cluster Validation tests you should be fine. With regard to adding SA to an OEM license I do not know the exact rules, and it may be 60 days… but if you are able to do it then yes, you can then make that virtual machine an HAVM. -M

      • Hi Mitch,

        This means if I have a license other than OEM, for example windows 7 full or Server 2008 R2, install it into a virtual machine, activate it, make it a HAVM, then I will able to tranfer it machine to machine at anytime or when of one host fails? Do I have to re-activate the OS after transfering?

        Thanks for your great support.

      • Hi Ripon,
        Firstly I need to stress that I am not a licensing expert. Microsoft does have those… I am not one of them. Also virtualizing Windows 7 (or any client) falls under a different licensing program called the VDA (Virtual Desktop Access). With regard to Windows Server licensing, the license of your SBS is installed on the virtual machine itself, so the hardware becomes irrelevant. There is no reactivation required when you migrate from host to host, because the hardware is virtual and moves with it.

  13. Whilst this solution is great, if the iscsi target machine goes down it’s useless, as both hosts have no access to datastore. So you are still relying on one piece of hardware running 24/7 so is no more reliable than a single SBS box.

    I’m wondering is there a way to create a cluster of the iscsi server? Possibly as a virtual machine on one of the existing hyper-v hosts (with additional hard drives installed in the server to accomodate the replicated data). If this is possible then you can create a truly redundant system whereby any one of the 3 servers can fail with no downtime.

    If this is possible let me know as I would like to recommend this solution to my clients.

    • Hi Ben,

      The solution you are recommending is absolutely not supported. In every scenario, including large enterprise with actual SAN devices, the SAN is usually a possible single point of failure. While there is no magic bullet, you can mitigate this by purchasing a decent SAN or, in the case of a software SAN, putting it on solid, reliable hardware with redundant drives, power supplies, et al.

  14. Hi Mitch,

    Fair enough, so is the point here is simply for fail-over in case of complete system crash / hardware failure?

    I’m still very interested in this topic and keen to find it’s place in my SBS offerings to customers, but I’m still struggling to see any real benefit, I’m assuming there is no load balancing taking place here, it’s simply the backup takes over seamlessly if the primary server goes fully down for whatever reason (hardware failure / BSOD)?

    What happens in the case of a semi unresponsive system, whereby certain functions (DNS etc) are still operating but exchange and user interface is dead? This situation seems more common to me than full system outages. I wonder at what point will the second server step in or would user intervention be required? Does Hyper-V periodically check the system is running as it should?

    Also in terms of performance and reliability, how does Win Server 2008 iscsi target compare with say a linux iscsi server? I’ve not personally used Microsofts target.

    Sorry for all the questions I would just love to be able to offer a robust solution offering complete failover for SBS without the high costs of moving to Enterprise Microsoft products and licencing.

    • You are right, there is no load balancing involved. As the SBS box is (and must be) a single server/VM, it must run entirely on a single physical host, even if it is virtual. Yes, if the server on which it is running experiences a hardware failure (or failure of the parent operating system, or of the network) the VM would immediately be failed over to the second host.

      Failover Clustering does not address issues within the virtual machine itself, so if certain functions are operating while others crash, this does not resolve that.

      I have not done comparisons of Microsoft’s Software iSCSI Target versus any other products; I will tell you that it is quite responsive, and has the benefit of being fully supported by Microsoft.

      • Thanks that all makes sense, so if the SBS operating system goes down, it’s down on both machines. Not sure in my opinion the outlay costs of additional server and a SAN matches the benefit here. Better off using the cash to upgrade the hardware of the existing SBS box and build as much redundancy to into the single box as possible, seems there will be less points of failure. Thanks for your time Mitch.

      • This is definitely a decent approach… if you get a good DL380 Gen 8 (or ML350) with redundant power supplies, RAIDed hard drives, et al then you are better off than a single of each… but remember, if a memory chip is bad, a CPU fan or anything else then you have your SPF. It is all about weighing the plusses and minuses of each solution and its costs!

  15. Hi Mitch, thought you may be interested in this – http://www.drbd.org/home/what-is-drbd/ – is block level clustering, allowing failover for iscsi targets. Even better it’s open source. Incorporating this onto the SAN rather than Windows iscsi target and also onto a virtual machine running on one of the hosts would provide complete failover if any of the 3 systems in the mix failed. I’m going to experiment in lab and will post my finding at a later date.

  16. Hi again, just wanted to report my findings for completeness of this subject. I have trialled 2 HyperV hosts sharing OpenFiler as an iSCSI target rather than Windows server being the target. Openfiler supports clustering using DRBD and has the bonus of being opensource. Using three servers (2x HP ML110 G7, 16GB ECC each) (1 x HP N40L 8GB ECC), one of the ML110 wiith 4 x 1TB Seagate constellation 7200s connected to the onboard SATA controller. In the N40L I have fitted a Dell Perc 6/i (externally via PCI-E extender as it won’t fit inside) and 8GB ECC RAM and 4 x 1TB Seagates as above. I have created a primary storage using the N40L and Openfiler and created an Openfiler virtual machine on the host with the local storage, set up clustering between the physical openfiler and virtual openfiler (easy to do follow google guides), Then used the method in your original post to cluster SBS 2008 to both the ML110. Works perfectly. Tried removing the network cable from all 3 servers in turn and the system continues to function, albeit slower without the hardware RAID controller if the SAN (N40L) goes down. This combination now creates a truly HA cluster and eliminates any single point of failure other than the OS or services running on the OS crashing itself.

  17. Pingback: Anonymous

  18. We have been running a DT&E (Deploy, Test, & Evaluate) targeting the creation of an SBS failover cluster in our lab for almost a year. We are using a guest RHEL 6 providing the iSCSI targets and with DRBD providing replication. We have no iSCSI box. It works. The DRBD backbone is Gigabit with a crossover cable.

    LIC 3.3 is a must have if you want Jumbo Frames on the DRBD backbone and internal iSCSI SAN. It doubles throughput over the standard MTU 1500.

    One question: Once the guest SBS (domain controller) is running and the Hyper-V servers are enrolled in the domain (required by Microsoft’s Failover Cluster Manager) how do you take it down gracefully?

    I am assuming that SBS is installed on the CSV volumes.

      • We have been coming to that conclusion as well.

        FYI. We just migrated from Hyper-V Server 2008 R2 SP/1 to 2012 with Hyper-V role. It’s an unbelievable performance improvement – probably triggered by the new SAN support. The replication RTT (Round Trip Time) has been halved to about 700 microseconds – approaching dedicated hardware performance. Burst writes across the Gigabit replication cable are above 1 GB/sec and sustained writes (very unusual) are 63 MB/sec (twice as fast as disk to same disk file copy). Note: DRBD reads are always local.

        The only gotcha, so far, is that, for graceful shutdown (UPS triggered), the VM definition XML files have open file handles (iSCSI locks). The Microsoft iSCSI initiator lies when it claims that the IQN’s are disconnected. The target is still locked and cannot go down gracefully. The solution is to keep a backup of the XML (on the CSV) and delete the VM’s. Startup recovery is straight forward – copy the XML back and import in place.

  19. Those looking at this (and able to ignore the silly ‘hobbled’ comment concerning SBS) may want to look at Starwind’s Native SAN for HyperV (and no, I neither work for them nor resell). Native SAN for HyperV allows local storage on the 2 HyperV servers to act as the HA SAN. TTBOMK it is currently fine on 08R2, I expect it to support Server12 shortly after General Availability.

    That deals with the issue of HA storage, but in an 08 HyperV you still need a DC ‘outside’ the cluster for the cluster to assemble.

    Server12 gets around that problem by allowing a cluster to assemble without the DC. You still need a DC available in order to ‘create’ the cluster, however once you have a functional cluster it will assemble (during startup) without requiring a DC to be available.

    It’s a lot of investment for an SBS based network. I personally feel that a very small niche of the SBS market could build a proper ‘business case’ for it, vs just putting SBS on decent server hardware (based on my own experience of several hundred SBS ‘server years’ without a major failure).

    Server 12 HyperV Replica (which does not need the SAN/software) may be more easily justified in SMB space.

    • I found StarWinds representation to be misleading. Their approach required dedicated storage management system boxes. The deployment we are working on has two and only two physical boxes, which currently run WS 2012 Hyper-V role. The iSCSI targets are instantiated on pass-through drives managed by a guest platform.

      We are currently rolling out SBS 2011 on this cluster and hope to migrate it to CSV storage.

  20. Offsite replication would be good but I again wonder about the cost vs benefit to both have that offsite server (OK, maybe it’s in the CEO’s garage) _and_ the bandwidth to handle the change.
    I have a 25 user site where backup suggests there is roughly 10GB change per day, and that’s not ‘all changes through the day’ but rather ‘the change between 24hrs ago and now’. The cost (in AU) of an iternet connection that can handle that is not insignificant, compared to their current ‘normal use’ plan.
    For something they hope never to need, and till now has not beeen necessary (through several years of SBS operation).
    The same 25 user org has a warehouse on the ground floor of the building with offices on the 1st floor, but only covering half the building.The two areas are distinct security zones, physically separated (except for being in the same building, but actually opposite sides), but close enough for wired Gbit. I’d prefer a 2nd building, but this is close.
    One wonders whether 2 SMB’s on separate floors of a building may be persuaded ‘we replicate to them, they replicate to us’.
    Off-site being handled more traditionally.

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s