I've been thinking a lot about two areas of IT: complexity and convergence, which have a lot to do with each other.
Collectively, we operate some very complicated infrastructures, which make many aspects of IT difficult. With a massive funding round for Nutanix, the integration of Whiptail into Cisco as UCS Invicta, and VMware's release of VSAN, we are seeing a lot of convergence happening. Normally siloed areas of IT are being forcibly integrated.
Our data centers are piles of kludges
We don't start out with complicated systems. The first system designs we do to solve a problem are concise, simple and easy to implement.
Problems tend to arise during the implementation process. Sometimes it's a missed requirement--somebody didn't talk to everyone or the right people. Sometimes it's an assumption, perhaps that the management interface on your Fibre Channel switch could do gigabit speeds, but it's actually only 10/100. At any rate, you need a fix, and that fix makes a mess of your clean design.
Gradually we add things to a nice design to handle new business requirements. We replace aging or failed components with new parts, but those new parts are never the same as the old ones. We come up with numerous "easy fixes" for problems and they stack up, kludge upon kludge upon kludge, until all that's left of the original, simple system design is the Visio diagram from years before.
Converged is not simple
Convergence is seen as a way out of this. Buy a setup from Nutanix, and it has compute and storage integrated and managed as one. Same with VMware's VSAN and a pile of local disk drives in your servers. Buy a Cisco UCS, now with storage, and you get a single management interface for network, storage and compute. Very attractive, and on the surface, it's simple to own and operate.
These things are not actually simple, though. There is a lot of complexity hidden under the hood of a Nutanix system, a lot of moving parts and pieces, reminiscent of the mind-bending movie Inception: virtual services implemented by virtual machines running inside the environment built on these services.
The same goes for VMware VSAN, or any other highly converged solution. Cisco UCS takes a more traditional hardware approach and thus avoids some complexity. The vendors make up for it in other ways, though, particularly with their converged Fibre Channel and data networking. Any time you mix traffic, you create something that is more complicated and harder to manage, despite what any vendor tells you.
We like these converged systems because they simplify day-to-day operations and cut operational costs. But they really don't simplify our data centers. They actually add complexity, but try to hide it from us.
In 2002, U.S. Secretary of Defense Donald Rumsfeld spoke in the context of war about "known knowns, known unknowns and unknown unknowns." While the quote itself is complicated, his message is simple: Sometimes we don't know what we don't know, and that's bad. When we buy converged systems, are we inviting a lot of unknown unknowns into our data centers?
There isn't a good answer to this, and I actually like a lot of these converged systems for what they can do to bridge the gap between older, complicated, kludge-filled data centers and cleaner, simpler ones.
To me, they're black boxes that someday I will have to open, because someday something will go wrong. On that day, I will be longing for the nice, simple infrastructure we once had, one protocol to a cable, one workload to a server and a single diagram that shows it all.