The problem with many discussions in IT, is that they rapidly descend into one that looks and feels like a religious debate; whereas reality is much more complex and the good IT specialist will develop their own syncretic religion and pinch bits that work from everywhere.
One of the things that many of us working in Enterprise IT is that our houses have many rooms and must house many differing belief systems; the one true way is not a reality. And any organisation more than fifteen years old has probably built up a fair amount of incompatible dogmas.
For all the pronouncements of the clouderatti; we are simply not in the position to move whole-scale to the Cloud in any of its many forms. We have applications that are simply not designed for scale-out; they are certainly not infrastructure aware and none of them are built for failure. But we also have a developer community who might be wanting to push ahead; use the language du jour and want to utilise cloud-like infrastructure, dev-ops and software defined everything.
So what do we in the infrastructure teams do? Well, we are going to have to implement multiple infrastructure patterns to cater for the demands of all our communities. But we really don’t want to bespoke everything and we certainly don’t want to lock ourselves into anything.
Many of the hyper-converged plays lock us into one technology or another; hence we are starting to look at building our own rack-converged blocks to give us lowest common denominator infrastructure that can be managed with standard tools.
Vendors with unique features are sent packing; we want to know why you are better at the 90%. Features will not sell; if I can’t source a feature/function from more than one vendor, I probably will not do it. Vendors who not play nice with other vendors; vendors who insist on doing it all and make this their lock-in are not where it’s at.
On top of this infrastructure; we will start to layer on the environment to support the applications. For some applications; this will be cloudy and fluffy. We will allow a lot more developer interaction with the infrastructure; it will feel a lot closer to dev-ops.
For others where it looks like a more traditional approach is required; think those environments that need a robustly designed SAN, traditional fail-over clustering; we’ll be a lot more proscriptive about what can be done.
But all of these will sit on a common, reusable infrastructure that will allow us to meet the demands of the business. This infrastructure will be able to be quickly deployed but also quickly removed and moved away from; it will not require us to train our infrastructure teams in depth to take advantage of some unique feature.
Remember to partner well with us but also with your competitors; yes, it sometimes makes for an amusing conversation about how rubbish the other guy is but we’ll also have exactly that same conversation about you.
Don’t just play lip-service to openness, be prepared to show us evidence.