I'm trying to design a system on AWS cloud with a certain level of SLA (say 99.99). One of the elements of my architecture is CloudFront and at this point, I'm struggling to understand if it's possible to increase the availability of it by introducing redundancy. Usually, it works, e.g. ECS containers or EC2 instance or RDS, but it's not possible for cloudfront (as far I a found).
What I've got so far:
here it says that SLA is from 99 to 99.9
and here it says that I can increase the availability having multiple Origins (CDNs), but to me, it seems like I would increase the availability of CDN, but not CloudFront service itself, wouldn't I?
Could somebody correct my understanding if it's wrong or/and explain the correct way of increasing SLA for CloudFront service?
Before you go crazy and try to design high SLA systems, think it through. 99.9% uptime is fairly easy to achieve at moderate cost. Go beyond that and your costs go up rapidly. For each addition 9, think 10x to 100x cost increase. This cost includes cloud infrastructure, management, monitoring and alerting software and the person costs. You will spend a lot of time managing systems that provide an SLA greater than 3 nines (99.9%).
99.99% utime means only 1 minute per week of downtime. This includes time that you need to spend patching operating systems, updating software, backing up, etc. Can you do all of that in 1 minute each week? If not, you won't achieve 4 nines (99.99%). Make a mistake and your 4 nines goal will become two nines.
Amazon CloudFront provides for 99.9% uptime. This is pretty good. To go higher, you need to provide multiple origins (sources for data that CloudFront caches and delivers to end users). Your origin costs just doubled in price not counting the workload to keep both origins exactly in-sync with each other 24x7. Any downtime or problems with your origins and your 4 nines just went out the window.
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With