The recent Amazon Web Services (AWS) outage affected more than 30% of the internet. The issue was with the Simple Storage Service (S3) in the US-EAST-1 region. For instance, during the outage, users were unable to upload files and code snippets to Slack, because Slack uses AWS S3 to store the file uploads.
So, what can you do to protect your own cloud app from an outage such as this? The solution is multi-tiered and dependent on your cloud management strategy. Check out Andy Frank’s blog: The Fallout from Amazon’s S3 Failure for two ways organizations approach their cloud management strategy.
If you are using AWS you may want to consider these 3 tips:
- US-EAST-1 Dependence. First, you should know that the US-EAST-1 region is often used by Amazon to roll out and test new features, so it may be more prone to issues like this. The first step in protecting your site or app may be to simply deploy it in a different region.
- Geographic Redundancy. That is probably not enough, though, since it would still be possible for a regional outage to take out your services, so you should look at the next step: geographic redundancy. Deploying your stack to multiple AWS regions and configuring a load balancer (AWS Elastic Load Balancer, or ELB) to switch between them mitigates the risk of a failure when a specific region is not available.
- Multi-Platform Solutions. Even with geographic redundancy in place, you’re still not out of the woods. If the entire AWS system is down, then no matter how many AWS regions you have your stack deployed to, you are still out of service. The final stage in protecting your cloud-based solution is to have a redundant infrastructure ready to go, either with another cloud provider, such as Microsoft Azure, a hardware hosting provider like Rackspace, or even an on-premises solution.
If you are wondering how to best manage your cloud solutions, we can help assess and recommend and implement a strategy that optimizes up time, balances your budget and provides contingencies for whatever the future may hold.