Amazon EC2 Failure Post-Mortem
CPE1704TKS tips news that Amazon has provided a post-mortem on why EC2 failed. Quoting:
"At 12:47 AM PDT on April 21st, a network change was performed as part of our normal AWS scaling activities in a single Availability Zone in the US East Region. The configuration change was to upgrade the capacity of the primary network. During the change, one of the standard steps is to shift traffic off of one of the redundant routers in the primary EBS network to allow the upgrade to happen. The traffic shift was executed incorrectly and rather than routing the traffic to the other router on the primary network, the traffic was routed onto the lower capacity redundant EBS network. For a portion of the EBS cluster in the affected Availability Zone, this meant that they did not have a functioning primary or secondary network because traffic was purposely shifted away from the primary network and the secondary network couldn't handle the traffic level it was receiving."
So basically they unleashed all the traffic on a poor little network that couldn't handle it. Somebody dun goofed...
But can I get an understandable car analogy here?
That only explains the loss in availability of the AWS service. It in no way explains why the data is destroyed and unrecoverable
Whom else is reminded of AOL's 19-hour outage in 1996? Routers misconfigured to send data to the wrong place, cascading into failure?
Kriston
... to be able to handle loads if the primary fails?
Dear AWS Customer,
Starting at 12:47AM PDT on April 21st, there was a service disruption (for a period of a few hours up to a few days) for Amazon EC2 and Amazon RDS that primarily involved a subset of the Amazon Elastic Block Store (âoeEBSâ) volumes in a single Availability Zone within our US East Region. You can read our detailed summary of the event here:
http://aws.amazon.com/message/65648
Weâ(TM)ve identified that you had an attached EBS volume or a running RDS database instance in the affected Availability Zone at the time of the disruption. Regardless of whether your resources and application were impacted, we are going to provide a 10 day credit (for the
period 4/18-4/27) equal to 100% of your usage of EBS Volumes, EC2 Instances and RDS database instances that were running in the affected Availability Zone. This credit will be automatically applied to your April bill, and you donâ(TM)t need to do anything to receive it.
You can see your service credit by logging into your AWS Account Activity page after you receive your upcoming billing statement.
Last, but certainly not least, we want to apologize. We know how critical the services we provide are to our customersâ(TM) businesses and we will do everything we can to learn from this event and use it to drive improvement across our services.
Sincerely,
The Amazon Web Services Team
This message was produced and distributed by Amazon Web Services, LLC, 410 Terry Avenue
North, Seattle, Washington 98109-5210
Kriston
"Last Thursday’s Amazon EC2 outage was the worst in cloud computing’s history .. I will try to summarize what happened, what worked and didn’t work, and what to learn from it. I’ll do my best to add signal to all the noise out there" link
So we now know that the promise of the cloud is a lie. How long before we get a new buzz word for turning over all of our data to the new Internet Barron's because they know what is best?
I commend Amazon for providing us with this information. Yes, bad things happened, and data is gone forever. Amazon knows what happened and why, and I'm sure they will implement controls to prevent this again. I doubt we'll hear as much from Sony, though.
What is an EBS? Is it really just a Xen or VMWare disk image? Which data center corresponds with each availability zone? What are they using for storage iSCSI targets on a SAN?
But can I get an understandable car analogy here?
15 cars tried to transform into Voltron but instead turned into Snarf.
I8-D
And HOW THE HELL does such a procedure cause data loss?!
Are those geniuses using the service transfer procedures that do not perform clean transaction handling and instead just send stuff to be copied expecting that it will sync soon enough?
Contrary to the popular belief, there indeed is no God.
I'm trying to remember what the other outage was recently where the web service failed because they forgot to implement exponential backoff. Anyone remember?
During the whole issue they never posted a cause and took them forever to even say 'still investigating'. Even if they have a bare bones monitoring system up, it should have been readily apparent that traffic was flowing over the wrong network.
So they're basically saying if the primary network has issues theres not really a point in the backup because the backup network will make things explode just as much as having no backup.
Your hair look like poop, Bob! - Wanker.
If this was the cause why wasn't the change corrected immediately and the traffic routed to where it was originally intended. 3 days of downtime just doesn't happen when you fuck up a line in a config. If this was actually the case the downtime would have been minimal.
It's nice to see that everyone has the same problem:
There is no approach to identify wrong assumptions.
But what's the conclusion?
Should we stay away from huge systems, because the damage due to a wrong assumption in a huge system is huge?
Someone (or multiples thereof) at the top of the Amazon infrastructure management heap should be fired and/or executed! Making such a network change to a live system that can impact so many users and applications without first testing it in a fully functional test environment that reasonably mirrors the real environment, is reckless, incompetent, and unconscionable. If they had done so, the error in configuration would have (should have) been caught before it was applied to the live system. And I don't think they can just blame it on "stumble fingers" either!
Huh. Sounds like a 21st century version of the routing failure that caused the 1965 Northeast blackout, just with data instead of electricity.
http://en.wikipedia.org/wiki/Northeast_Blackout_of_1965
I was one of the businesses who has suffered from this. I was in the process of migrating my mail server that hosts multiple virtual domains for clients to a EC2 instance. I had provided amazon with the information needed to remove my elastic IP from specific RBL's and was moving forward gracefully with my configuration. I had a couple of clients moved to the new server when I first heard about the data loss. I was still able to access my instance last night so I thought, "ok I must not have been affected" I woke up this morning to the email:
Dear AWS Customer,
Starting at 12:47AM PDT on April 21st, there was a service disruption (for a period of a few hours up to a few days) for Amazon EC2 and Amazon RDS ..... and on and on ...
I logged into my Management Console to see all my work and all my customer data gone. You can imagine how happy my clients were when I told them of the news. The cloud can kiss my ass.
My read of the explanation is that 0.07% of physical machines happened to die during the incident (1 out of 1400) due to hardware failure. Since they couldn't re-mirror, there was a single copy of the data on those machines and data was lost. I'm actually pretty impressed with their response and design, based on the explanation.
apparently we can't secure them from disasters.
5 reactors of the 442 have melted down. That is over 1% catastrophic failure.
In thinking about why this happened, don't loose sight of the time they chose to make the configuration change was 00:47 local. Human performance on 3rd shift isn't what it is on day shift, and I would think it very likely the people managing this change had been up and working for a significant number of hours at that time. Would they have noticed something or done something differently at 10:00 local? Certainly making an upgrade at a time of lowest use sounds right, but it's not always as simple as that, and you have to respect the realities of circadian rhythms or suffer the consequences. If this were an air crash, we would not we interviewing survivors, coworkers and family to identify when each of the participants in the event and the decisions made had slept during the days preceding the event.
The nuclear industry claims a chance of major accidents around 1 in 10^7 reactor years, based on this kind of probabilistic analysis. But then we've seen 2 major incidents at western-style nuclear plants (Three Mile Island and Fukushima Daiichi) over a period of about 15,000 reactor-years. The problem is, these studies only account for the risk of simultaneous failures of pre-identified critical components within the engineered system. They don't account for acts of nature or people doing something dumb.
Damn - we still need those human system and network admins .............grrrrrrrrrrrrrrrrrr
Hollywood has got to turn this into a movie ...
I'd be first in line to buy a ticket