我收到了一份内部域中 200 台服务器的列表,我的任务是确定这些服务器是否可以终止使用。不幸的是,我在这里只工作了一个月,所以我不知道其中大部分服务器的用途。我已将列表发送给许多团队,但只收到了几个回复。他们希望在明天 EOD 之前收到这份列表。90% 是 VMware VM。大多数运行在 Windows Server 2008 上。根据名称,有很多 SQL 服务器和 IIS 服务器。
如何查明服务器是否仍在使用?
- 我认为我不能依赖上次登录,因为它们是 SQL 和 IIS 服务器。它们中的大多数已经很长时间没有登录过了。
- 我本来想查找事件日志中的最新事件,但手动执行这项操作需要很长时间,而且我无法按时完成。
答案1
对于 SQL Server 和 IIS,您实际上可以检查应用程序日志以了解实际使用情况;在 SQL Server 上,您必须启用连接日志记录(请参阅https://stackoverflow.com/questions/6769099/where-are-sql-server-connection-attempts-logged),除非有人关闭了日志记录,否则 IIS 日志文件会自动生成。
但是,正如 Stuggi 在他的回答中所说,这在如此短的时间内是一项不可能完成的任务,而且你也无法证明服务器确实不再需要,因为没有人现在使用它(添加一个关于离线根认证机构的悲伤故事,该认证机构被删除,因为没有人记得该服务器在那里做什么,嘿,它已经关闭了,有什么更好的证据表明它没有被使用?)。
在如此短的时间内,最好的办法就是关闭服务器。如果一个月左右后没有人抱怨,你就可以摆脱虚拟机(备份后,因为你永远不知道......)。
答案2
首先,如果没有事先了解,这项任务是不可能完成的。这样的项目很容易需要数周甚至数月的时间,因为你很少能在组织中找到可以肯定地说不再需要某些东西的人。此外,你永远无法真正信任这项任务的日志,因为证明没有人使用某些资源可能相当困难,例如,如果该服务器每隔一个月才使用一次怎么办?
但是,您可以做的是对所有运行由于供应商不再支持而终止使用寿命的软件或操作系统的服务器进行分类。
从操作系统开始,任何比 Windows Server 2012 更老的版本都不再受 Microsoft 支持,应该已经被替换了。Windows Server 2012 也已经处于扩展支持状态,因此它也应该在 2 年内逐步淘汰。
然后,您只需检查所有支持操作系统的服务器,并检查它们是否正在运行任何 EOL 软件,例如 MS SQL Server 或 Exchange。如果不再需要,任何 EOL 软件都应再次升级或逐步淘汰。
可以在此处查看 Microsoft 产品的 EOL 日期(例如 Windows Server 2003)
如果您不询问部门某件东西的用途,而是告诉他们,如果到某个日期,以下服务器不再使用,则将被终止,这样从部门获得回应会更有效。
如果您仍然想走日志分析的路线,Splunk 有一个免费套餐,允许您每月 2 次导入大量数据(如果记忆不错的话),而且他们还有一个相当不错的用于 Windows 服务器上日志分析的工具包。