Windows Containers Debut in New Windows Server 2016 Preview
Microsoft today released the third technical preview of Windows Server 2016 and it will give IT pros and developers the first chance to see the company's new Windows Server Containers, which includes the open source Docker Engine. The latest Windows Server 2016 technical preview also includes improvements to Active Directory (both AD DS and AD FS), Hyper-V, failover clustering, remote desktop services and file and storage services. Microsoft posted an outline of all the new features introduced in this release. Not included in Windows Server 2016 Technical Preview 3 (in Microsoft lingo it's TP3) is the new Azure Stack announced back in May at Ignite that will bring Azure functionality to Windows Server or Hyper-V Containers, though Microsoft has indicated that it will show up in a technical preview later this year.
Windows Server Containers and the yet-to-be released Hyper-V Containers with the Docker Engine will introduce a new way for organizations to build and deploy applications faster and more scalable in on-premises and cloud environments. Through last year's partnership with Docker, the two worked to help Microsoft build Windows Server Containers in the server OS to insure applications built for them are interoperable via new APIs that are compatible with Linux containers, both from a deployment and orchestration standpoint.
"This is a big step on a journey we started a while ago," said Microsoft Azure CTO Mark Russinovich, in an interview this week. "This TP3 release is the first time we're making publicly available in preview form Windows Server Containers with complete Docker tool chain ported to Windows as well as integration of container deployment and management through Visual Studio."
Docker Senior Engineering Manager Arnaud Porterie noted in a blog post today that "the Docker Engine for Windows Server port is not a fork, nor a different project: it's the same open source code base being built for Linux and Windows." Porterie also emphasized that "the Docker daemon for Windows Server doesn't run Linux images! No virtualization is involved. The Windows Server Containers reuse the host kernel and create a sandboxed environment for the process, exactly like it does on Linux."
From the perspective of development of applications for the Azure public cloud and the on-premises Azure Stack, Windows Server Containers introduce the most important new capabilities in Windows Server 2016 TP3. Yet for IT pros this is just as important as the notion of containerization is to DevOps to allow organizations more business agility, Russinovich explained.
"If you take a look now at any enterprise, they've got to get applications out faster and they've got to iterate on them faster," he explained. "The business motivation for an agile development workflow is what's driving a lot of enterprises [to] the top-level business requirement that you're seeing [from] what started as a grass-roots-driven wave by developers themselves. They're looking for a faster way to iterate as they develop their applications. One of the value propositions Docker likes to tout is a developer can debug and test their container on their own development laptop, and then with high confidence know that that tested application is going to deploy in the same exact way to a production server. And if they're iterating, for example, on their development laptop, they can do that very quickly because the containers deployed so quickly."
Containers in the context of allowing DevOps organizations to iteratively build applications that are scalable for modern cloud environments using micro services is a new concept. But many Fortune 50 companies are either piloting or have small deployments of applications for these new architectures. Because each container is small and isolated, they should help create applications that are less monolithic and more secure. While the technology is still emerging, Russinovich believes the use of micro services will be the next wave of software development, virtualization and IT operations.
"What you're seeing is the power of this isolation and agility fit nicely with an application level that's decomposed, which also goes back to the business driver of agility," Russinovich said. "If you've got a complex application and many enterprise applications, and even CSV type applications or ISV type applications are complex, [they] consist of many subsystems. If you break down that monolithic application into constituent components, containerize them, and then have the whole thing managed by a microservice application platform you get the benefits of containerization, the agility of deployment, you've got things like rolling update, you get the independence of updates so different teams can work on different parts."
Enterprise Strategy Group Senior Analyst Mark Bowker says he's seeing growing interest among large IT organizations that are enamored by the agility of sites such as Amazon and Facebook and those who offer modern apps, though warns it's still very early days. "I think you're seeing the operating system vendors essentially react and design, and ultimately look at where modern applications are headed, and ultimately making a more efficient operating system to run those types of workloads. It doesn't necessarily have all the full-blown features because a lot of those features are actually written into the application itself," Bowker said.
Many IT pros still don't understand containerization. Russinovich gave a far more extensive explanation of Microsoft's view of what the future of containers holds in a blog post published earlier this week. It's worth reading to understand Microsoft's container vision and what it means for the future of Windows.
UPDATE: An earlier version of this post incorrectly stated that the technical preview included Hyper-V Containers and has been updated to reflect that they'll actually come in a subsequent release.
Posted by Jeffrey Schwartz on 08/19/2015 at 9:50 AM