This is old hat to anyone running a cloud-based service, or that deploys into the cloud. But one of the best things you can do is ensure that your infrastructure is as cloud agnostic as possible.
We’ve recently experienced some downtime with our (very excellent) cloud provider Digital Ocean, and while they were busy trying to bring our services back online, we swapped over to AWS (which is marginally more expensive) with a one-line configuration change, and with extremely minimal downtime, we had Loadzen’s load generators back up and running.
We could not have done this if we had not built in the capability from the start to deploy our load generators to different clouds (and, in fact this was a core scaling strategy).
It makes a case for dependency based architectures provided by PaaS services such as Parse and Kinvy so dangerous – the lock in of having a single system provide all your uptime means your flexibility when things go to pot is out the window.
Build for flexibility, the extra effort is worth it.