[1] https://blog.cloudflare.com/how-verizon-and-a-bgp-optimizer-...
Cloudflare outage caused by bad software deploy
91–100 of 137 posts
Re: Cloudflare outage caused by bad software deploy
#92If a single regex can take down the Internet for a half hour, that's definitely not good -- for a class of errors that can be easily prevented, tested, etc. The timing is unfortunate too, after calling out Verizon for lack of due process and negligence. I'm sure they have an undo or rollback for deployments but probably worth investing into further. They also need to resolve the catch-22 where people could not login…
Since the work involved in doing a regular expression match can depend largely on the input for non-trivial expressions, one fun case (probably not the one here, though) is that a user of your system could start using a pathological case input that no amount of standard testing (synthetic or replayed traffic, staging environments, production canaries) would have caught. Didn't take anything down, but did cause an ino…
Re: Cloudflare outage caused by bad software deploy
#93Earlier quoted context omitted.
Since the work involved in doing a regular expression match can depend largely on the input for non-trivial expressions, one fun case (probably not the one here, though) is that a user of your system could start using a pathological case input that no amount of standard testing (synthetic or replayed traffic, staging environments, production canaries) would have caught. Didn't take anything down, but did cause an ino…
Fuzz testing could help
It's nowhere near as standardly applied as the other approaches to release verification, though.
And in complex cases (say, a large multi-tenant service with complex configuration), it can be very hard to find the combination of inputs necessary to catch this issue. If you have hundreds of customer configurations, and only one of them has this particular feature enabled (or uses this sort of expression), fuzzing is less likely to be effective.
Re: Cloudflare outage caused by bad software deploy
#94Cloudflare should write a guide to doing post-event communication. Or perhaps they shouldn’t, as this seems to be a potential differentiator. This is direct and doesn’t attempt to avoid blame. Well done.
Re: Cloudflare outage caused by bad software deploy
#95Earlier quoted context omitted.
An SLA of 100% just mean your account will be credited for any downtime. It doesn't mean that the company guarantees 100% uptime. No company signs a 100% or 99.99% SLA expecting to actually get 99.99% uptime but with the understanding they will be compensated when their is an issue. None of the major cloud vendors actually hit 99.99% uptime.
> None of the major cloud vendors actually hit 99.99% uptime. None of them even promise that -- last time I checked, it was 99.95% for most of them.
(To my knowledge, it's the only AWS service to promise 100%.)
Re: Cloudflare outage caused by bad software deploy
#96Probably for the kind of work they are doing avoid regex? Or at least the very complicated modern regex (simple autonoma that you can compile in advance might be ok)
If you're trying to do pattern matching, is there actually a widely used alternative to regex? The more I can avoid using regex for mission-critical things, the happier I will be, but I'm really not aware of anything better for this type of application.
Re: Cloudflare outage caused by bad software deploy
#97Re: Cloudflare outage caused by bad software deploy
#98Kinda wonder at this point what findings exist on their Availability SOC 2, assuming they've gotten one. The repeated outages plus the constant malicious advertising by scammy ad providers through cloudflare are slowly turning me off to the service as a potential enterprise customer. Unfortunate too since plenty of superlatively qualified people build great things there (hat tip to Nick Sullivan), but it seems like t…
As an engineer, I get pissed whenever I see 100% uptime, or eleven-nines, nine-nines, or other impossible targets. Like, how am I supposed to design a system with numbers like that?
100% uptime doesn't necessarily mean nothing failed, it means the failure detection and mitigation worked within the allowed windows. In a typical internet environment, that means allowing connections to die when the server they're connected to dies. It's would be possible to handoff tcp connections, but nobody does it.
If you want to get close to those numbers, you need to have a real reason, and then you need to make sure you have a good plan for everything that can go wrong. Power, routers, fiber, load balancers, switches, hosts, etc. And then do your best not to push bad software / bad configuration.
Bare metal on quality hardware with redundant networking goes a long way towards reliability, once the kinks are worked out.
Re: Cloudflare outage caused by bad software deploy
#99If a single regex can take down the Internet for a half hour, that's definitely not good -- for a class of errors that can be easily prevented, tested, etc. The timing is unfortunate too, after calling out Verizon for lack of due process and negligence. I'm sure they have an undo or rollback for deployments but probably worth investing into further. They also need to resolve the catch-22 where people could not login…
Monitoring, canaries, experimantations do need to be adopted at pretty much everywhere possible.
Re: Cloudflare outage caused by bad software deploy
#100Earlier quoted context omitted.
I'm assuming it's something pretty embarrassing if it's not in the post mortem.
The first sentence here is "This is a short placeholder blog and will be replaced with a full post-mortem...". I'd bet big money that they do include it.