When we were looking at deploying OpenStack at Rackspace, I had an interesting idea: why can’t we use our cloud like our customers do? What is stopping us? Why not use our cloud to boot the cloud? We made this conscious decision to deploy a “cloud within a cloud” for several reasons.
We took the open source piece of Cloud Servers, known as Nova, and deployed that inside of Rackspace. Our public cloud was then actually built on top of that deployment in what we term as “iNova” or our infrastructure Nova. While we learn how to use our internal cloud, we can develop features and fixes that we feel would enhance our offerings. By having a better understanding of the customer experience and by using it as customers would, we can build a stronger product.
Our engineering team first deploys any new release of the software internally to verify that the quality is up to our customers’ needs. Consuming this internally first enables us to find issues and problems within the software before it hits our customers. When we discover a bug, we are able to fix it and commit the patch back to the OpenStack code base, ultimately improving the experience for the entire community.
Rackspace gets the same advantages of the cloud that our customers get by having an instance of the cloud to run our cloud environment. We get snapshots, private networks and virtual machines. We are able to increase and decrease our workload as we see traffic peak and subside. We can run everything on commodity hardware and our configuration and deployment times have been drastically reduced, as along with our operational costs. The Rackspace open cloud is a robust platform for computing resources, so much so that it can power itself.