Andres Rodriguez - Fotolia
As the size of Microsoft's server OS continues to shrink, the future of Windows may not even be recognizable to today's administrators.
The growth of cloud coupled with containerized applications solves multiple problems for enterprises. An application with all its required elements wrapped inside a container has a smaller footprint, uses fewer resources and enables the company to move the app to different clouds or data centers with minimal friction. Microsoft's foray into application virtualization resulted in Nano Server -- a slimmed-down version of Windows Server for container use that weighs in around 80 MB.
This move toward containers intrigues Don Jones, a PowerShell expert and president of PowerShell.org, who sees the future of Windows Server even more radically transformed from a multi-gigabyte behemoth that requires constant upkeep to a sliver of its former self with just enough capability to handle basic networking -- and not much more. Jones spoke with SearchWindowServer to discuss the future of Windows, recent developments in server management and where IT workers should invest their skill-building efforts.
One of your recent blogs envisions a time when Microsoft trims Windows Server down to a point where, would it even be Windows at that point?
Jones: The full-blown Windows operating system has tons of code to draw pictures on screens and intercept button-clicks and play music and download video and access the internet. It's convenient for a developer because everything they might ever need is baked in, but it makes the operating system incredibly heavy and really difficult to keep updated.
It's a lot of moving parts, which creates a lot of security vulnerabilities. Upgrading the operating system becomes a huge pain because you might break some of the applications that rely on an older version.
What we're starting to see is this idea of the container including the application and everything it needs to live. Your container image is larger because a lot of the things that the OS used to do, you now take with you.
That means the operating system itself is going to have to do less. In a few years, the operating system is not going to do very much more than interface with a network.
The Googles, the Amazons and the Azures of the world are moving in this direction because they're trying to make their data centers easier to run. Once Microsoft and all the Linux distro guys produce the operating system they need to run their cloud -- well, that's what they're going to want to sell us. They're not going to make a separate operating system for us.
People predict the demise of certain technologies over time, such as the mainframe, but they continue to survive. Wouldn't many pieces have to fall into place for this transition for Windows Server?
I don't think this is so much a demise as a natural evolution that's already taking place.
You've got things like CoreOS, which is specifically designed to be a minimal operating system -- just enough to get the hardware going to start running containers. You've got Nano Server, which is essentially Microsoft's approach to the same thing. You've got Server Core -- something Microsoft has been refactoring for several years now. It was a way of thinning the operating systems to the bare minimum.
Those services aren't containerized today, but there's absolutely no reason they cannot be delivered as a container in the future. Microsoft has already indicated that's what they will drive toward.
So instead of a full Windows Server that takes 12 GB of space to run an application, there will be these larger but self-contained applications?
Memory and storage used to be expensive. By packing all these things into the operating system and letting every single application use them, we saved on memory and storage.
But now we have to deal with all the problems created by centralizing everything in the operating system. So we can move to a thinner, smaller operating system. The application -- instead of a 2 GB container image, it might be a 10 GB container -- will ship with all the stuff that used to be in the operating system.
If you're running five applications, each of them is going to be that much bigger. From a storage perspective, you're wasting space. But it's cheap.
Do you see Azure Stack as Microsoft's attempt to break resistance to the cloud?
Absolutely. There are certain niche industries that are never going to be happy with the public cloud. The strategy with Azure Stack is less about having individual customers running it than it is about having regional and specialized service providers running it.
If I work in healthcare, I might not want Azure Stack sitting in my hospital because I don't want to pay the people necessary to run that. But I can go to a specialty cloud provider that runs Azure Stack and does it in a way that will meet the specific needs in my industry. That's really Microsoft's play.
What can Windows administrators do to prepare for this shift to the cloud?
Administrators need to learn to be mobile again. I talk to folks who say they got into IT because it's new, challenging, interesting, but say their company isn't doing this stuff because nobody else on the team is interested.
You have to decide if you can persuade your company to stand up a pilot project. If you can't, then you need to ask yourself why you're at that company.
PowerShell Core is one way Microsoft says Windows administrators will handle different operating systems -- Windows, Linux and macOS -- and servers in the cloud. How do you see the project shaping up so far?
It's going pretty well. The PowerShell team is a bit hindered by the .NET framework team because PowerShell runs on .NET.
Refactoring .NET [to .NET Core] was the hard part, and continuing to refactor bits of that so more of .NET can live on Linux- and Unix-based operating system -- that remains the heavy lift.
A lot of people in the Linux world don't take the time to understand the reason PowerShell exists, so they kind of pooh-pooh it and go back to their Bash and their Perl and their Python. There's a huge advantage for Windows administrators to suddenly waltz in and be the superhero who can make any tool work in a consistent fashion. They've got this PowerShell thing that they've had a decade to work with and get good at -- and now it reaches so many other things.
Was it a surprise to see Project Honolulu, a GUI-based server management tool, after the push toward command-line management all these years?
A lot of what Project Honolulu does under the hood is PowerShell. Microsoft has taken the original vision of PowerShell, which is: "instrument everything at the command line," and then, if you want to build a GUI on top of it, that's great. GUIs have their place in the world.
The push to PowerShell was not a push away from GUI. If you do a GUI first, then that's all you get. If you do command line first, then you can have anything you want.
It's relatively consistent with what the messaging has been for the last 10 or 12 years. It's just it's difficult to see that sometimes.
What skills should Window Server administrators develop? Should they invest in a home lab or try to pick up some advanced certifications?
Learn to be an Azure administrator. Learn how to stand up, manage, monitor, backup, restore -- do all these tasks in Azure. Even if your company isn't going to go to the public Azure cloud, the administration tasks between Azure and Azure Stack are identical. This will serve you well no matter how your company winds up wanting to run its compute.
The next one is a little bit harder because, if you don't have Azure Stack in your organization, there's really no way to do this other than take the training. But learn to become an Azure Stack operator.
That's the person who -- after Dell leaves and the hardware's there -- that's the person who goes in and sets it up. That's going to be the next thing companies are investing in because more and more of the compute will start to shift over to Azure Stack in the next five to 10 years.