Live data from Hacker News

Lessons Learned from Twenty Years of Site Reliability Engineering

sre.google

121–128 of 128 posts

Re: Lessons Learned from Twenty Years of Site Reliability Engineering

#121

Earlier quoted context omitted.

Azure has procedures in place to prevent circular dependencies, and regularly exercises them when bringing new regions online. IIRC some of the information about their approach is considered sensitive so I won't elaborate further.

Are you saying they can bring a new data center online without any connectivity to the rest of their infrastructure? GP isn't concerned about turning on one data center, they are concerned about turning them all on at the same time, and that can never be tested.

If you practice bringing a new datacenter online without any connectivity on the existing deployment, and you practice then joining two disjoint "clouds", then you've pretty much covered your bases.

Are you making a rate limiting/ddos argument about "turning them all on at the same time"?

Re: Lessons Learned from Twenty Years of Site Reliability Engineering

#122
This feels very apropos to a recent banking outage we had here in Singapore. On Oct 14, I was out buying groceries and was asked a very strange question by the NTUC FairPrice supermarket cashier, "which bank is your card from?". Expecting the usual "would you like this product on offer" type question, I didn't even register the question for a second.

Turns out that we had a major outage at a data centre that served DBS - one of the largest lenders, as well as Citi. [1]

The disruption was attributed to a cooling system failure at a data centre operated by Equinix [2]. Further digging led to information that the culprit was the SG3 data centre [3] marketed as their largest IBX data centre in the Asia Pacific region and one of the newest. It turned out that the cooling system was being upgraded on contract with an external vendor, who applied incorrect settings which brought it down.

Further, this particular data centre has 2N electrical redundancy but a cooling redundancy of only N+1 chillers, in comparison to other financial services organizations like the Singapore exchange (SGX) that offers [4] CoLo hosting with 2N chillers, which I believe is essential for warm equatorial climates.

Sadly, this outage was followed by yet another smaller payment related outage the following week, making it the fifth outage this year. DBS was trumpeting their move to the cloud [5] as part of their grand plan to transform themselves from a bank into a software company that also offered banking services [6][7].

In going all out with this questionable and misguided transformation they've lost focus on what made people trust them in the first place - the decades of trust that was built on solid, reliable, transparent and efficient banking services.

There were questions about why their backup data centre didn't kick in and there are no answers till date.

It's clear to see that the recovery mechanisms weren't tested, performance degrade modes were not implemented or not tested, disaster resilience utterly failed, there were no working mitigations for cooling system failures or DC failures, and as a result ATMs and other services were down from 3pm on Oct 14 until the following morning. For a country that prides itself on digital transformation, this is just the latest banking systems failure which makes it far more than an egg in the face, it's an erosion of trust.

Items (2), (3), (7), (8), (9) from the Google report directly apply to this failure. I can only hope something good comes out of it and lessons are learnt.

[1] https://www.channelnewsasia.com/singapore/dbs-citibank-outag...

[2] https://www.zdnet.com/article/equinixs-data-center-system-up...

[3] https://www.equinix.com/data-centers/asia-pacific-colocation...

[4] https://www.sgx.com/data-connectivity/co-location

[5] https://www.dbs.com/newsroom/First_bank_in_Singapore_to_laun...

[6] https://bankinginnovation.qorusglobal.com/content/articles/t...

[7] https://www.dbs.com/technology-future/dbs-redefining-the-fut...

Re: Lessons Learned from Twenty Years of Site Reliability Engineering

#123

Recently, I've heard of several companies folding up SRE and moving individuals to their SWE teams. Rumors are that LinkedIn, Adobe, and Robinhood have done this. This made me think: is SRE a byproduct of a bubble economy of easy money? Why not operate without the significant added expense of SRE teams? I wonder if SRE will be around 10 years from now, much like Sys Admins and QA testers have mostly disappeared. Inst…

> is SRE a byproduct of a bubble economy of easy money?

I think it’s definitely one of the aspects.

Talking with some SRE friends the point that they think part of their role is important are the multitude of moving parts in the current development environment (partially related with the easy money for resume driven development and a lot of tech stack side quests) and how the bar had lowered to hire folks (for this one with hiring managers with almost infinite budget e a lot of questionable product initiatives).

Re: Lessons Learned from Twenty Years of Site Reliability Engineering

#124

Earlier quoted context omitted.

It’s still batshit insane to me that Google Fi had any infrastructure overlap with Gmail. When I was there these grand unified base layer systems everything else was built on top of were a point of pride. From a risk perspective though it was sheer stupidity in retrospect. As Google continues to atrophy and suffers attrition of the original people that built those systems, the probability creeps up more and more that…

At my not Google job we talk about "what happens if a meteor hits a DC". We agree that that is so rare that as long as there are buttons we can push to recover after a reasonable timeframe that is an acceptable risk, we don't need a fully automatic way to recover from that. However your SRE teams needs a way to recover without intervention which is why there is talk of backups. BTW even using different cloud provider…

But that’s incredibly stupid. A meteor hitting a DC is an intentionally dumb way to eclipse the much more likely risks of thousands of other things that can wipe out a DC.

I’ve been involved in such discussions and on the surface they seem reasonable but it turns into an easy reason to write of DC being wiped out.

In comparison there are far more likely reasons for a DC to be wiped out effectively permanently. Data centers at the base of WTC 1 and 2 are good examples. The myriad of targeted attacks on the power grid are also prime examples of attacks that would cripple a data center for weeks if they were in the cross chairs.

The Cascadia subduction zone has a much higher probability of wiping out all of them in the PNW simultaneously than a meteor hitting a single one.

Looking at it from a different perspective, there are other teams at Google who understand how sensitive their data centers are and they act appropriately. The list of data center locations is not public. A motivated group with long range rifles purchase from Walmart could wipe out a Google data center.

Google is very bad at modeling long tail events.

Re: Lessons Learned from Twenty Years of Site Reliability Engineering

#125

Earlier quoted context omitted.

If by rigorous algorithms you mean, spend a month memorizing a few dozen leetcode problems then sure, I’ll agree that is sadly the state of SRE interviews at FAANG.

I interviewed at multiple FAANGs and not one of the questions they asked was on leetcode or hackerrank. (I searched afterwords).

[deleted]

Re: Lessons Learned from Twenty Years of Site Reliability Engineering

#126

Something I hope to eventually hear is the solution to the full cold start problem. Most giant custom-stack companies have circular dependencies on core infrastructure. Software-defined networking needs some software running to start routing packets again, diskless machines need some storage to boot from, authentication services need access to storage to start handing out service credentials to bootstrap secure authz…

The solution to this has to be done earlier, but it's simple: start a habit of destroying and recreating everything. If you wait to start doing this, it's very painful. If you start doing it at the very beginning, you quickly get used to it, and breaking changes and weird dependencies are caught early. You can even do this with hardware. It changes how you architect things, to deal with shit getting unplugged or rese…

The problem is that you can never really destroy and recreate everything. At the very least you want to preserve your user data but you probably also don't want to regularly go offline. IIRC Google used to have a dependency on starting up a new datacenter where it needed a DNS request to have some core services find each other and start up. This could be served by any other Google datacenter. But if all datacenters went offline at the same time it wouldn't be able to start. So just destroying and recreating full datacenters won't find this. You literally would have to take all of Google offline at the same time to find this by testing.

Re: Lessons Learned from Twenty Years of Site Reliability Engineering

#127

Earlier quoted context omitted.

At my not Google job we talk about "what happens if a meteor hits a DC". We agree that that is so rare that as long as there are buttons we can push to recover after a reasonable timeframe that is an acceptable risk, we don't need a fully automatic way to recover from that. However your SRE teams needs a way to recover without intervention which is why there is talk of backups. BTW even using different cloud provider…

But that’s incredibly stupid. A meteor hitting a DC is an intentionally dumb way to eclipse the much more likely risks of thousands of other things that can wipe out a DC. I’ve been involved in such discussions and on the surface they seem reasonable but it turns into an easy reason to write of DC being wiped out. In comparison there are far more likely reasons for a DC to be wiped out effectively permanently. Data c…

Meteor isn't real. It is literally just a metaphor and more fun than "we lost power" or "egress died". Anybody claiming it is impossible is silly.

You also won't lose a DC a year so you need some strict uptime guarantees to justify automatic roll over.

Prepare to avoid dataloss but needing SRE to change over is fine if you can stomach a hour of downtime.

Re: Lessons Learned from Twenty Years of Site Reliability Engineering

#128

Earlier quoted context omitted.

But that’s incredibly stupid. A meteor hitting a DC is an intentionally dumb way to eclipse the much more likely risks of thousands of other things that can wipe out a DC. I’ve been involved in such discussions and on the surface they seem reasonable but it turns into an easy reason to write of DC being wiped out. In comparison there are far more likely reasons for a DC to be wiped out effectively permanently. Data c…

Meteor isn't real. It is literally just a metaphor and more fun than "we lost power" or "egress died". Anybody claiming it is impossible is silly. You also won't lose a DC a year so you need some strict uptime guarantees to justify automatic roll over. Prepare to avoid dataloss but needing SRE to change over is fine if you can stomach a hour of downtime.

> Meteor isn't real

Yes, just like "bus factor" isn't about buses

Post reply on HN