IDGNS: Microsoft has been pretty quiet on the OpenStack front, which has been generating a lot of publicity as a cloud platform. What potential value does Microsoft see in OpenStack?
Russinovich: From our perspective, OpenStack is, as something we'd adopt to run our own cloud, not mature enough, scalable enough or stable enough. The way we look at it is not how we could use it, but what our customers want from it.
What we find is that almost no one uses the OpenStack APIs [application programming interfaces] directly. When we talk to them, we hear that OpenStack is incredibly hard to set up and it is incredibly hard to maintain. So few people are actually deploying it and using it successfully.
Those who are using it successfully are not using the APIs. They are using an abstraction layer on top. So when we ask if it would be helpful to provide API support, typically the answer is no. And in fact, it would be difficult for us to do. If you look at the OpenStack API set, or the Amazon APIs, or our APIs, there is impedance mismatches between them. Creating an abstraction layer, you will end up with things that bump going through where there is not an exact match from one API to another. So it would be challenging for us to make a high-fidelity OpenStack API interface on top of Azure, because OpenStack is moving in possibly different directions and not necessarily at the same speed.
IDGNS: What were the lessons learned from the 2013 outage?
Russinovich: A key lesson has been configuration management, understanding what your desired configuration is, and what your current configuration is. That is the disconnect there. Our desired configuration was an updated certificate, our current configuration was old, and we didn't connect the two.
I mean, it is obvious when you look at it, but you have to build up a culture to internalize that, and if you don't get it right then something like the certificate thing can bite you.
Sign up for CIO Asia eNewsletters.