I'm looking for options to migrate one of our applications to AWS. The application currently runs on a server that has 16cores and 256GBs of Ram and I'll be moving it to a virtual machine on AWS.
If we get an R3 dedicated host with 1-year, all upfront payment, it costs $19010 in Frankfurt. On this host, we can host 1x r3.8xlarge virtual machine , which has 32 cores and 244GBs of Ram. Is this the best option? Are there any close alternatives?
I'm assuming that there are no additional costs apart from storage and networking, right?
Thanks.
It would work, but you're really not taking advantage of what AWS can provide.
A better option would be to use an elastic load balancer with multiple smaller instances serving traffic, with instances split across availability zones. This would give you fault tolerance so it could survive a single server / data centre going down, and gives you an easier way to roll out upgrades or do A/B testing. You could also use Route 53 and have servers in multiple regions, to reduce latency and increase performance for users around the world, depending on your architecture and database requirements.
You'd have to test your application to work out the best instance types, whether you can have say four instances with 64GB RAM and 4 cores, or if you need a bit more RAM.
An R3.2xlarge, with 8 cores and 61GB RAM would be $4300 per year, and you'd want four. An ELB with 1TB of traffic would cost you maybe $50 with an ELB. That's cheaper than the dedicated instance above.
Why wouldn't you choose for r4.8xlarge?
This new generation of memory optimised ec2 instances feature a new Intel Broadwell processor, improved networking (20gbps) better EBS performance, and cheaper on per GiB of RAM compared to R3 instances. R4 instances are well-suited for memory-intensive, latency-sensitive workloads like Business Intelligence (BI), data mining & analysis, in-memory database
Another question comes to mind when reading your use case description: why do you think a dedicated server is needed?
There may be additional costs for storage and networking. It depends on your application needs.
You can consider spot instances which will be less cost than reserved.