我在集群环境中有 4 个终端服务器。我登录了一台服务器,RAM 已达到 100%。我查看时发现有 54 个活动会话。
我认为这里的一个问题是,许多用户的活动会话昨天工作但今天没有工作。
我认为在服务器上运行一个脚本可能是个好主意,该脚本将强制所有人在晚上 11:00 无人上班时注销。
每台服务器均配备 32GB RAM,并且均安装有 Windows Server 2008 R2
- 每天删除所有活动会话一次是个好主意吗?
- 我如何才能自动执行注销所有人的过程?是否有可以执行此操作的 .bat/script 文件?
答案1
在规定时间自动注销所有人的权限并不是一个好主意——如果那个极其重要的项目要在早上截止,而每个人都在熬夜,那么会发生什么呢?
您可以(也应该)将其设置为在一定时间后注销断开连接的会话。在我的终端服务器上,该时间设置为 2 小时 - 因此它不会在他们去吃午饭时结束他们的会话,但会在一天结束时结束。如果他们仍处于连接状态,他们可以保持连接任意长的时间。
如果每个人都需要不同的设置,则可以在 Active Directory 中按每个用户进行设置。在用户属性的“会话”选项卡中,将“结束断开的会话”设置为您想要的任何值。这样做的好处是,您可以为不同的人设置不同的限制 - 也许您永远不想踢出 IT 部门的人或任何高管,但想结束其他所有人的会话。
当然,为每个用户设置它可能很麻烦。在这种情况下,您可以在远程桌面会话主机配置中设置它。转到连接的属性,在“会话”选项卡上,单击“覆盖用户设置”,然后选择值“结束断开的会话”。在集群环境中,您可能必须为每台服务器执行此操作。
这两个地方还提供了活动和空闲会话限制的设置。这些限制适用于用户仍处于连接状态的情况 - 因此,如果用户保持连接打开状态但一小时内未使用,您可以将其踢出。
答案2
我以最严谨的方式做这件事。我计划在凌晨 2:00 左右重启服务器。重启是让所有人下线的简单方法,如果计划好了并且员工得到通知,他们可能可以在几分钟后在我的组织中快速保存/重新登录。由于您有 4 台服务器,因此您可以在服务器之间错开确切的时间,因此如果一个人恰好在熬夜,他可以简单地注销并立即登录到新服务器。
这样做也很有用,因为您可以在此重启窗口期间触发任何软件更新、安装和其他维护。