My company is hosting a website in a server with IIS, SQL Server and a 3rd party windows service (written in C#, source code available for amendments).
We bought a new identical server, composed by: 1x Quad Core, 12GB RAM, 4x160GB SATA Raid 5, Windows Server 2008 R2 Datacenter, Public IP.
We aim to put all webpages and the 3rd party windows service in an high-availability state.
After some lab-testing on how to configure Failover Clustering and Hyper-V, we have deep doubts on what the "best" solution would be, by "best" meaning maintainable and able to correctly handle a physical server failure.
Any suggestion on how we should configure the two servers?
We don't need all the configuration's step, just an hint on the right direction to follow.
- No external SAN at the moment.
- The mentioned services (SQL, IIS, Custom Windows Service) will require the most resources.
There might be an Exchange server coming, but it's not important as of now.
- No Domain Controller configured at the moment.
There are lacking elements, but we don't know which ones are more important than others, and which are the steps we should follow.
- We wrote down a rough idea of we think would suit our needs. You can find the pdf here.
- Question is now bountied. I understand there is a lot of IT Professionalism behind this kind of stuff, and it's understandable to reward the correct suggestion.
- Our idea is based on these assumptions (please, correct any of them if you find them wrong):
- You need a domain to create a Windows Failover Cluster
- You can't install exchange on a Windows Failover Cluster
- Domain controller is a single point of failure
Virtual machines seem to solve all these kind of problems, but they use also a lot of resources.
Isn't there a simpler failover configuration using two physical servers to just failover the SQL instance?
Web pages are stateless and the C# windows service operates mainly on the SQL database, I guess it would be possible to configure them using NLB?
Feel free to ask for more information if you need them, by putting a comment to this question.