1

learner seeking design opinions from AWS users,

I have a group of application 4 applications with a need for 2 MSSQL instances.

Been exploring the idea of hosting it on AWS with

  1. Application Load Balancing on 4 Applications on M6i.l
  2. Application Failover on 4 Application
  3. MSSQL AlwaysOn on 2 instances on M6i.l
  4. MSSQL Replica x1 on M6i.l
  5. S3 Storage - 5TB
  6. 2 Availability Zone
  7. 1x Route S3

The price came to a whopping USD 7,477.41 monthly.

Is there a cheaper alternative way to achieve the following with AWS?

  1. Load Balancing on 4 Application
  2. The database is always available
  3. minimal downtime (5min) and no data loss

enter image description here

I could cut down on the Database instance and use a single instance, but that would mean a larger database instance.

If my research + design is correct with this cumulative monthly fee (a year) in AWS, I could buy a physical server and co-locate it for half the price ...

The hype of going cloud, as I understood should be cheaper, but seems that a bad design == costly. Appreciate experienced cloud user feedback

SiGaban
  • 91
  • 1
  • 14
  • 1
    From the diagram it looks like your autoscaling groups are limited to one availability zone. Is it not possible to spread this across both availability zones and make it more resilient in case of a zone failure and possibly alleviate the need for failover instances? Also, do the failover instances need to be fully scaled and always-on? If not, you could look into some sort of pilot-light setup that you could quickly scale up in case of a DR situation. – chamal Nov 17 '22 at 14:46

1 Answers1

2

I would look into switching to AWS Aurora Serverless v2 (MySQL compatible). That's going to be by far your biggest cost savings opportunity. You could also explore if you could use a single load balancer with multiple domains, and a target group per application, instead of one load balancer per application. Finally I would make sure you are right-sizing your EC2 instances. Do you really need M6i instances (are you really using all that RAM)? Once you are sure you are using the correct instances, set up an EC2 savings plan.

If my research + design is correct with this cumulative monthly fee (a year) in AWS, I could buy a physical server and co-locate it for half the price ...

Yes, and it would have none of the scalability and failover capabilities that you have designed into the AWS architecture. You aren't comparing apples to apples. Compare the price of one EC2 server and nothing else, to the price of that physical server if you want to go that route. Or compare your AWS design to the price of multiple physical servers in multiple data centers with physical networking hardware that load-balances your traffic.

The hype of going cloud, as I understood should be cheaper, but seems that a bad design == costly.

Cloud computing is fault tolerant, scalable, and easy to change on-demand. Cost is often higher than compared to a few physical servers.

Mark B
  • 183,023
  • 24
  • 297
  • 295
  • Appreciate your feedback. Sizing of the instance is a dilemma , at this moment the application and database is running physically in 2 x Intel Xeon Processor, 64GB Memory .. – SiGaban Nov 17 '22 at 23:50