In this chapter, we'll be walking through how to architect your cloud to avoid hardware and software failures. The OpenStack control plane is composed of web services, application services, database services, and a message bus. All of these tiers require different approaches to make them highly available and some organizations will already have defined architectures for each of the services. We've seen that customers either reuse those existing patterns or adopt new ones that are specific to the OpenStack platform. Both of these approaches make sense, depending on the scale of the deployment. Many successful deployments actually implement a blend of these.
For example, if your organization already has a supported pattern for highly available MySQL databases, you might choose that pattern instead of the one outlined in this chapter. If...