We have been using AWS for the past 3 years, but looking at Digital Ocean simply because we could save some money if we moved over. So what are the plus/minuses of running node.js with mongo and RabbitMQ on DO compared to AWS? I am looking hopefully for people that have done this type of switch, either way, so I can learn from their mistakes. I am most concerned with uptime and reliability of the infrastructure.
For services we use, we mostly use EC2, Route53 and ELB's. I would think we would leave our Route53 as is, but move the EC2 instances and ELB workload. Is there an equivalent service at DO to ELB's or do I need to spin up instances and run our own load balancers? Don't care either way, just want to make sure we don't miss something and are comparing apples to apples.
Hi Dinesh, there are multiple levels on which I can answer your question.
I have run production on AWS as well as on DO, though both small (single server). In my experience they are both very stable infrastructures, as good as it gets in virtual servers. So, from that level: don't worry too much, though DO currently requires you to roll your own load balancer. They have announced a loadbalancer service.
(btw, i develop and deliver cloud and cloud security training for a living).
As your concern is uptime/reliability, the next level of concern is whether your architecture is resilient enough against virtual server failure. This is an issue for any IaaS provider. Your loadbalancer will address this to some extent, but you need to decide if you want to loadbalance across multiple zones, or even regions.
Then you might want to plan for a full provider exit. What would you do if you decide to make yet another move to a different provider, either because you want to, or because you suddenly have to.
Then there are other risks to worry about. How easy is it for you to do a full upgrade of all components of your stack? Think of patches and upgrades. Can you do that in a hurry? To some extent this requires a backup and restore strategy that is similar to what you would need anyway.
In another direction, you could be asking why you would want to size and scale your own database? Why not DynamoDB or Google Datastore, and let them do the scaling?
Obviously this needs more specific insight into your architecture and objectives. Feel free to follow up.
You can use Rackspace and get many things including daily snap shots, load balance and live support. The snapshot can be fired up as it's own instance for debugging and testing, very handy. I have used them for years
Use cloudflare to front the services with a WAF and SSL plus DNS to hide and firewall your servers . Your DO could go behind this as well and they are rolling out load balancing as well.
Changing for the sake of changing doesn't make much sense. Maybe with Digital Ocean you saves some money, but you have to factor in the cost of moving the whole thing, which is no small thing.
And, since you're think about changing, might as well consider other options like Azure, Google Cloud (as it has been mentioned here) or Rackspace.
AWS is the best there is, so unless you're really saving a ton of money, doesn't make much sense to move out. And if you're growing like crazy, this is not the time to change, it's the time to continuing focusing your efforts on growing.
Remember all Netflix runs on AWS, bigger than is going alone.
Best of lucks!