It’s been fun to watch Microsoft pitch cloud, cloud, cloud, Azure, cloud, fluffy cloud, with relatively little attention devoted to Windows Server these days. In fact, I’m told it almost caused a semi-rebellion in the Windows Server team, who was all like, “um, we bring in eleventy billion bucks a year, love us please?” But let’s imagine why that might be.
Let’s first strip down what we think of as “operating system.” The job of the OS is to communicate with the system hardware, and act as a standardized intermediary between software and that hardware. DNS Server is not part of the OS; it’s a bundled application. Ditto IIS and nearly everything else – even File Services is bundled software, not the OS per se.
As we start to enter a realm of increased IaaS virtualization (which is what you’re doing with your vSphere or Hyper-V hosts – the hypervisor being yet more bundled software on top of the OS), and as we start to gently nudge closer to using PaaS compute scenarios more often, our concept of the operating system changes. This is especially important now that we can have our own private cloud in the form of something like Azure Stack, which abstracts the underlying hardware away from us in the same way Cloud Azure does.
In other words, in a “cloud” environment, you basically can’t touch the hardware or the actual operating system. So what the OS is doesn’t really matter. I mean, Azure Stack could be running on palmOS for all customers know and care – so long as it delivers up the services you pay for, then the underlying OS isn’t part of the value-add. And make no mistake, Microsoft’s dream is to have all of our physical hardware be as much Azure Stack as possible. That’s not realistic today; it will grow more so over time. We’re talking long-game vision, here, not what you’re going to do tomorrow.
Now sure – you do care about the OS running inside your virtual machines. But, funnily, that OS isn’t doing the one thing that an OS is for – communicating with hardware. It’s all basically running a lie. You’ve got an OS “talking to hardware” that doesn’t, in reality, exist. You only need the OS because it represents a standardized API set that applications are written to run on.
Hence, containers. The drive with containers is to run them on an ever-thinner OS – one that truly does as little as possible. Rather than relying on a lot of OS-level frameworks and APIs, applications simply ship with their own – kinda exactly like it was in the MS-DOS days, or the early Unix days. So again, the OS itself starts to matter less and less, and instead what matters is the API stack a developer chooses to use – a stack that can differ from app to app, because each app ships with all its dependencies.
I can absolutely see a world where “Windows Server” starts to look a bit more like “Mac OS X Server” – an application bundle including a DNS server, a DHCP server, a Web Server, etc., that you install into containers or VMs. Making them distinct from the OS, in other words, and making them each individually earn your business.
So if it seems like Microsoft isn’t giving Windows Server the marketing love it used to, this is perhaps why – in their grand long-term scheme, the OS isn’t a “thing” in the way it is today. Oh, for sure I think they’re jumping the gun – Windows Server is very much still an important thing today, but we’ve all seen Microsoft over-commit to long-term version before, right? But I do think that Microsoft’s long-term vision sees revenue coming not from server “operating systems,” but from general compute provisioning. In their minds, we run on-prem workloads on Azure Stack, cloud workloads in Azure, and shuttle workloads back and forth between those as needed. The “OS” isn’t part of the value chain – where you’re running your workload is the value chain.
Now again, this is a good bit off. A few years, at the least. But don’t underestimate Microsoft in this – they’re going to do their best to make it happen, and that’ll mean reacting semiannually and quarterly to customer objections. Do not take the attitude of, “well, we’ll never do this because ___,” because Microsoft is already sub-hunting those objections and preparing ways to torpedo them. They can even do this financially, by simply make it abundantly more financially attractive to do it “their way.” For you, this means not betting the house on your Windows Server maintenance skills paying the mortgage forever. Yeah, you’ll still have “OS” running inside VMs for the foreseeable future, but that’ll slowly become less and less common, and more and more limited to legacy situations – not the best foundation for a paycheck. So start preparing for the “death of the OS.” The good news? Preparing for it won’t hurt you or be a waste if it never comes to pass! Grow some Azure and Azure Stack skills. Maintain those skills – brush up on quarterly and semiannual releases and changes.
Start preparing a New Year’s resolution, if you’re into those, to make “cloud-style computing” (whether that’s in the actual cloud or in the data center down the hall from you) a big part of your knowledge base.