Server Fault is a question and answer site for system and network administrators. It's 100% free, no registration required.

Sign up
Here's how it works:
  1. Anybody can ask a question
  2. Anybody can answer
  3. The best answers are voted up and rise to the top

I am new to cloud services and need somebody to help me in getting started with my project.

I have been tasked with building a web environment for a production .Net application that utilizes DotNetNuke as a front-end CMS.

My end goal (hopefully) is the following:

Create two always-on web servers running DotNetNuke (with the ability to scale on the fly with autoscaling when under heavy traffic)

Create two always-on SQL servers running SQL Server (with the ability to scale on the fly with autoscaling when under traffic)

Ideally, I'd like my servers to have static private addresses configured as such:

Public IP -NAT-> Private IP (172.x.x.x) -> Interface1 -> [Web Cluster] -> Interface2 -> Backend Private IP (10.x.x.x) -> [Database Cluster]

This particular application sees heavy traffic and currently our managed provider is not really giving us what we need in terms of performance (latency issues, stability issues, etc).

That said, I would like these resources to also be load balanced, and continuously identical to one another. I don't have the option of using Amazon's database services for this, nor do I have the option of using Beanstalk.

Is this even possible? I've found some documentation online that loosely relates to what I'm looking for, but I feel like I'm not experienced enough with Amazon to really understand what these tutorials are talking about.

Any help or guidance would be greatly appreciated.

share|improve this question
as recommended here… "even with web farms, you need to have a single database and file storage for all webheads" – Valentin Jan 19 at 17:04

You can do it, but you'll need to learn a lot. Instead of using EC2 instances for the SQL servers, you probably want to use RDS so you can scale up better. For the application CMS instances, you will need to learn how to create CloudFormation templates with cfn-init scripts to create auto scaling groups. Learning how to use auto scaling will take some time. Maybe an even more significant obstacle will be learning how to bootstrap your instances. Best practice is to start with a plain vanilla instance, install your software, upload any data, and start any services after bootup.

share|improve this answer

Your Answer


By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.