Anyone working with Windows servers should be familiar with Server Core, or at least the name. As we mentioned back in Chapter 3, Security and Networking, Server Core is an alternative installation method for Windows Server 2016. It enables you to build a Windows Server with significantly lower amounts of CPU, memory, and hard drive requirements. Nano Server is a new and exciting feature in Windows Server 2016, and also represents a pretty significant shift in the way that we interact with our servers. Nano Server is similar to Server Core, except that Nano Server takes things a step further. A big step further. Nano is almost headless. I say almost because, as we will explore together, there is a limited-access console that you can interface with, but the bulk of what is done on both Server Core and Nano Server happens remotely, from another server or from your local workstation. It is around this shift in the management mindset that many of our recipes will be focused today. Let's learn together some of the different ways in which we can take advantage of these smaller and more secure servers. This chapter will cover the following topics:
I feel that this chapter is really important to include, not only because Nano Server is a brand new feature in Windows Server 2016, but also because I have the opportunity to work in new customer environments all the time and to get a feel for the way that they establish their networks and servers. Do you know what I find? That everyone is running their Windows Servers in the full GUI-based Desktop Experience mode. Now, there is nothing inherently wrong with that, but the fact that Server Core has been in existence since Windows Server 2008 and I have yet to encounter a production server in a customer environment that is running Server Core, tells me that either it doesn't work, which I know is untrue, or that people are simply scared of it because they haven't tried it out. I find that to be much more likely. If you haven't done any reading on these technologies, at this point you might be wondering why both Server Core and Nano Server are options. It sounds like they do essentially the same thing, right? Not exactly. Because of the incredibly small nature of Nano Server, there are very few roles that can be installed on it. While Microsoft is working to enable more workloads to run on Nano Server, at the time of writing, there are only a handful of tasks that it can be used for. So it's pretty specialized. If you want a very small, very secure server to provide specific functions in your network, Nano Server can be an incredibly useful way to go. On the other hand, if you need to build a server to host a role or service that is not currently possible with Nano Server, but you still want the lower resource footprint and higher security of a semi-headless server, Server Core fits the bill. You can run essentially anything on Server Core that you can run on Desktop Experience. The big difference is the way that you have to interact with that server for configuration and ongoing management. This is the part that most likely keeps folks away from using it in production. There is always that what if? What if something breaks and I can't figure out how to fix it? What if I can't get into it to manage it? I hope that after walking through these recipes today you will feel much more comfortable with building out a Server Core, knowing that you can manipulate it just as extensively as you can with a full Desktop Experience version of Windows Server 2016.
18.222.119.177