多数企业网络中的服务器被专门用于执行特殊的角色,当一个服务器运行这个单一角色的时候,如果除了这个角色之外的其他的进程也在运行着,同样消耗着资源而对这个角色并没有什么贡献或者帮助的话,这是很不合理的。Windows Server 2012 R2的安装过程中,就提供了这样的一个选项,它可以最小化这些资源的浪费。
使用Server Core(服务器核心)
Windows Server 2012 R2的安装过程中提供了这种最小化用户界面的选项,即服务器核心。当选择了安装服务器核心的选项时进行安装时,你会安装一个最简约版的Windows server操作系统。它没有开始菜单,没有桌面浏览,没有MMC,几乎没有任何图形界面的应用程序。你可以看到的只是一个单一命令行的窗口,
什么是服务器核心Server core?
服务器核心server core不是一个单独的产品或者版本。它是一个安装的选项,包含在Windows server 2012 R2数据中心版本和标准版本之中。
使用服务器核心server core有以下几个优点:
硬件资源保护。Server core消除了Windows Server 2012 R2操作系统的内存密集型和处理器密集型的影响元素,这样使得硬件可以把更多的资源贡献给基本的服务。
减少磁盘空间。Server core的安装模式需要比较小的磁盘空间和Swap,可以提高服务器的存储利用率。
减少补丁的更新频率。Windows server 2012R2中的图形元素是需要比较频繁的更新的,所以使用服务器核心的模式比较能够减少管理员执行的一些必要更新。较少的更新意味着比较少的服务器重启和宕机时间。
减少被攻击面。较少的软件和服务安装在server上面,可以被攻击者所利用的入口点便会相应的减少。Server core便减少了潜在的可被攻击的缺口,提高了总体的安全性。
当微软第一次介绍Server core安装选项的时候,当时还是Windows server 2008版本的系统,原本是一个很有趣的想法,但当时很少的管理员会去采用它,主要原因是多数管理员不是很熟悉命令行的窗口,因为他们习惯了使用图形界面来管理服务器的方式。
在Windows server 2008和Windows server 2008 R2上面,决定了使用Server core的安装选项并安装完毕后,是一个不可逆的操作,即一旦用server core安装了操作系统,便没有任何的办法在其基础之上挽回图形界面,除非再完全重新安装一边。这种情况在Windows server 2012和windows server 2012 R2中得到了改善,你可以通过使用PowerShell命令在server core模式和GUI图形模式之间自由的进行切换。这意味着管理员可以使用GUI图形选项进行服务器的安装,并使用比较熟悉的图形界面进行配置,当一切工作结束之后,便可以切换到Server core模式下,以便得到之前列举的使用server core的好处。
在Windows Server 2012 R2中把Server core作为默认的安装选项其实并不是简单的给管理员提供一个切换选项,其实是有其他考虑的。在windows server 2012 R2中,微软尝试着从根本上改变管理员对服务器的管理方式,在新的服务器管理方式下,管理员几乎不用或者很少的工作在服务器控制台前面,不管是物理的方式还是远程的方式。
Windows server长期以来可以被远程管理,但是这种管理稍有些零碎。MMCsnap-ins使得管理员可以远程连接服务器,PowerShell2.0同样提供了可以通过命令行的方式进行远程管理,但是windows server 2012 R2首次包含了最全面的远程管理工具,几乎可以提供跟在服务器本地进行管理的相同体验。
Windows server 2012 R2中新的服务器管理程序可以让管理员在企业的任何地方添加服务器到服务器管理程序中进行管理,并且可以建立分组,方便同时管理多个系统。新的PowerShell4.0环境增加了可用的cmdlets,从230个增加到了2000多个。
通过这样的服务器管理程序,你可以在安装windows server 2012 R2的时候,选择使用server core选项安装模式,执行几个命令把所安装的服务器加入AD域中,然后就再不用触碰这个服务器控制台了,因为对这台服务器以后的所有的管理任务,包括部署角色和功能,都可以通过服务器管理程序和Windows PowerShell进行远程管理。
Server Core能力
Server core模式除了省略了大多数的图形界面,有一些图形界面下的一些功能也被省略了,windows server 2012 R2中有19个角色,server core中包含12个角色,并支持SQL Server 2012,相对 windows server 2012 R2,windows server 2008 R2只有10个角色,而windows server 2008只有可怜的9个角色。
Server core安装所包含的服务器角色 | Server core安装不包含的服务器角色 |
AD证书服务 | AD联合身份验证服务 |
AD域服务 | 应用服务器(不赞成) |
AD轻量目录服务 | 传真服务器 |
AD权限管理服务 | 网络策略和访问服务 |
DHCP服务器 | 远程桌面网关(Remote Desktop Gateway) 远程桌面会话主机(Remote Desktop Session Host) 远程桌面网络访问(Remote Desktop Web Access) |
DNS服务器 | 批量激活服务(Volume Activation Services) |
文件和存储服务 | Windows部署服务(Windows Deployment Services) |
Hyper-V | |
打印和文档服务 | |
远程访问 | |
Web服务器(IIS) | |
Windows server更新服务 |
使用Minimal Server Interface
诚然使用server core是一个很有意思的事情,但是你对于传统的管理方式仍然不会放弃,Windows server 2012 R2提供了一个折衷的工具,叫Minimal Server Interface。
Minimal Server Interface是对server core在图形化操作上面的一个增强,但是缺点是没有IE浏览器,桌面,资源浏览器,Windows 8桌面应用,另外对于控制面板上的一些设置项也被移除了,包括:
程序和功能,网络和共享中心,设备和打印中心、显示、防火墙、windows 更新、字体、存储空间。
那Minimal sever interface剩余的可管理项是服务器管理程序,MMC程序,设备管理器,和全部的Windows PowerShell界面。这为管理员提供了本地和远程管理服务器的多数工具。
如果把一台基于GUI安装的windows server 2012 R2 配置成为Minimal Server Interface,应该移除“Server Graphical Shell”功能,移除方法可以使用Powershell或移除角色和功能向导来配置:
按需使用功能
在windows server 2012 R2的安装过程中,安装程序会把操作系统的所有组件文件从安装介质拷贝到文件夹WinSxS目录,这样在之后如果想激活任何功能组件的时候,便不需要安装介质了。这样做的缺点就是整个WinSxS文件夹会在server初始安装成功后,便占用将近5GB的空间,如果服务器数量越来越多,那么浪费的空间就会越来越多。在windows server 2012之前,功能可被操作的状态只有启用和禁用,但在windows server 2012 R2中,按需使用功能提供了第三种状态,即除了启用和禁用,还可以从负载中移除,意味着可以在WinSxS里面同样移除该功能相关的文件。如果要实现这样的状态,只能通过Windows PowerShell的命令:
Uninsall-WindowsFeature Server-Gui-Shell �CRemove
这个命令除了移除了Server-Gui-Shell功能以外,还把相应的在WinSxS目录下的文件移除了,做到了节省空间的效果。但是如果在需要重新安装的话,则需要从介质中拷贝或者从网络上通过Windows Update来安装了:
Install-WindowsFeature Server-Gui-Shell -Source