During the past few months, I’ve been taking Server Core--the slimmed-down brother to Windows Server 2008 (formerly code-named Longhorn)--for a few laps around the track. I have to say that the server is pretty neat and will be a welcome addition to the Windows Server family. But I’m worried that this addition might end up the redheaded stepchild of the family, which I’d hate to see.
Windows 2008 will come in several flavors: Web, Standard, Enterprise, and DataCenter. (Surprised? Me too. I thought it was a rule that Microsoft had to alternate version names between "Advanced" and "Enterprise.") But no matter which of these you buy, early in the setup process, you’ll be asked if you want to install Windows 2008 or Server Core.
Server Core is a stripped-down version of Windows 2008 in that it has very few GUI tools--Notepad, Regedit, and a few Control Panel applets--and runs very light on a system. (For example, I’m running a working system in 256MB of RAM and 6GB of hard disk.) Server Core systems are also limited in what they can do and are basically just file, print, DNS, DHCP, WINS, and Microsoft IIS servers that can act as Active Directory (AD) domain controllers (DCs). Server Core systems support BitLocker encryption, making them good candidates for placement in iffy locations. Unfortunately, they can’t be used as Exchange servers.
So why on Earth would you run a cut-down version of Windows 2008? For a couple of reasons: First, Server Core runs on light hardware. Even Server Core systems running on small virtual machines (VMs) on otherwise busy machines handle things like DNS and AD without trouble. Second, Server Core is lightweight, specifically because of all the components it isn’t running. Less software means fewer bugs, which means fewer future exploits.
However, as an admitted Server Core partisan, I’m worried about two things that could render the server useless. Microsoft hasn't said anything about offering Server Core by itself but instead intends to offer it as an alternative installation option on the different Windows 2008 versions. That makes me fear that Server Core might not be widely used, because, well, while a stripped-down server might be attractive in many ways, most of us expect a stripped-down price as well. After all, I love my Honda Insight hybrid with its three-cylinder engine and 67mpg fuel efficiency, but I wouldn’t have purchased it if it cost as much as a Jaguar.
My second concern arises out of a rather heated debate amongst Server Core-beta testers: Should Server Core include the .NET programming framework? That might sound like something of a yawner, but without .NET, Server Core basically can't support Windows PowerShell, and that is a big deal indeed. Microsoft says that there’s no way that PowerShell could make it into Server Core for 2008 but that it might appear in Server 2008 R2. While I love PowerShell, adding .NET makes me a bit queasy. .NET is basically a whole extra OS (almost), and adding it to Server Core will add lots more code, which means lots more bugs, which means lots more potential exploits. At that point, I think a lot of customers will say, “The heck with it. I might as well use the complete server.” Personally, I’d like to have PowerShell on Server Core only as an option--let me choose whether to take the .NET risk.