Cloudflare outage on July 17, 2020
I guess it's easy to become complacent when you're a networking expert at Cloudflare and likely making several of these ad-hoc, on-the-fly config changes every single day, but it's always good to remember why Juniper introduced the automatic rollback feature.<p>Of course, this particular outage would not have been <i>prevented</i> even if they had used<p><pre><code>  # commit confirmed
</code></pre>
as it can't stop you from screwing up but it almost certainly would have limited the duration of the outage to ~10 minutes (plus a minute or two, perhaps, for the network to recover after the rollback) -- and it could have been shorter than that had they used "commit confirmed 3", for example.<p>Even as a lowly network engineer working on networks much, much smaller than Cloudflare's, for pretty much my entire professional career, it's been my standard practice to start off pretty much <i>ANY</i> change -- no matter how trivial -- with<p><pre><code>  # commit confirmed 3
</code></pre>
or<p><pre><code>  # reload in 3
</code></pre>
or similar, depending on what type of gear I was working on (and, of course, assuming the vendor supported such a feature).<p>This applies even when making a changes that are so "simple" that they just "can't" go wrong or have any unexpected or unintended effects.<p>In fact, it applies <i>ESPECIALLY</i> in those case! It's when you let your guard down that you'll get hit.<p>---<p>Fortunately, all that was necessary (I assume) to recover in this case was to<p><pre><code>  # rollback
</code></pre>
to the previous configuration. Then, the correct configuration could be made. That still had to be done manually, however, and resulted in a 27 minute outage instead of what could have been a 5 or 10 minute outage.<p>I would hope that Cloudflare has full out-of-band access to all of their gear and are able to easily recover from mistakes like this. If they had lost access to the Atlanta router and weren't able to log in and revert the configuration manually, this outage could have lasted much, much longer.