注意:我读过Windows服务器需要重新启动多久? 但是这个问题与我们的远程桌面服务器有关。
我们有一个Windows Server 2008R2服务器 – 一个VMware ESX VM – 获得了远程桌面服务的许可,有25个用户也使用RRAS(SSTP)。 在平均工作日,在工作时间,有8到12个login的活动用户,另外有4-6个“断开连接”的用户。 它有一个12 GHz的CPU硬保留和16 GB的RAM,也完全保留。 需要时,CPU预留最大可扩展到24 GHz。
我们的许多用户完全依靠服务器来工作。 他们也对自己的performance苦恼不已,但很多人不愿改变工作习惯或软件来改善其performance。 特别:
我不能夸大他们拒绝注销的重要性。 不情愿的用户在断开连接时继续使用RAM ,这意味着在任何时候,我们有多达16个运行特定程序的实例 。
我也注意到,通过经验,泄漏/僵尸往往会增加远程桌面服务器运行的时间。 重新启动后,即使在许多用户login后比较性能,服务器仍然新鲜且速度更快。我还了解到,定期重新启动可能会有所帮助。
所以我build议定期重启虚拟机 – 我想每周都这样做,周六晚上说 – 因为我觉得这些重启会解决很多问题。
我想知道,如果你是Windowspipe理员,
即使在用户断开/重新连接之后,垃圾箱/僵尸/泄漏是否会随着会话时间累积,我是否正确?
多长时间一次使用远程桌面服务重新启动类似使用的Windows Server?
一般来说,我反对Windows服务器应定期重新启动的想法, 除了 TS / RDS服务器之外。 我们每天都重启。 它清除旧的会话,释放使用的资源(CPU,RAM,文件句柄等),所以我的意见和build议是,你configuration每日定时重启你的RDS服务器。
请注意,这个答案只是我的意见。 这里没有事实陈述。
用户拒绝注销而不是断开连接
设置适当的组策略以自动注销它们。 您可以单独控制空闲超时和注销。 这当然应该减less一些白天的问题。
我每天凌晨3点重新启动我的3台服务器TS农场。 因为,当你有很多人使用一个单一的系统时,可以随着时间的推移累积起来。 我们有3个服务器共享60-90人之间的一天,一年中的时间。
我可能不需要经常重新启动,但是我们开始使用Windows 2000的terminal服务,而且我们的打印机驱动程序在当时是非常糟糕的。 打印后台处理程序基本上会在一两天之后失败。 所以我们开始每晚重新开机,因为我们没有任何杠杆作用让打印机制造商修理他们蹩脚的司机。
根据你的现金,时间和你的用户的清晰度,另一个想法可能是站起来第二台服务器。 你仍然需要偶尔重启,但是你似乎已经达到了单个服务器的极限。
您应该可以使用相同的客户端CAL(许可证不是我最强的区域),并且根据您的虚拟化解决scheme,现有的许可证可能已经涵盖了一个额外的VM。
即使没有额外的虚拟机资源和额外的操作系统开销,假设您可以平均分配负载,您可能会发现系统可以更好地处理两个独立的6 GHZ CPU和8GiB内存虚拟机。 有三种潜在的方法:
如果您不希望客户端在DNScaching过期并且获取其他服务器的IP时将客户端从一个服务器上断开连接,则在循环条目上设置一个长TTL。 或者使他们连接的计算机的主机名显而易见(例如使其成为后台的一部分),并要求他们重新连接到该主机名,如果他们想要恢复他们的会话。
†如果他们总是使用相同的桌面,只需修改本地桌面上的主机文件即可。 如果他们在计算机之间移动,则编写一个脚本(通过组策略分发)来parsing主机文件,使其当前用于服务器的DNS条目指向特定用户应该使用的服务器的IP。 将包含该DNS名称的行replace为已存在的行,或者将其添加到文件末尾(如果不存在)。
我熟悉拒绝注销的“用户types”。 但是,他们似乎没有理解服务器将在每晚重新启动,因此任何未保存的工作将会丢失。 这是在服务器2008 R2 TS支持在一台机器上的大约20个用户。
>用户拒绝注销而不是断开连接
你在这里有一个pipe理/人力资源问题,而不是技术问题。 如果持续login的人影响其他人的工作 (通过不必要地降低性能),那么只有两个解决scheme:
把它作为一个技术问题,如果可能的话,安排增加资源(更多的内存,固态硬盘代替旋转金属,…),这样问题就会消失。 当然,你可以通过在一台机器上投入新的资源来实现什么是有限的,但它可能工作。
把它作为一个人的pipe理问题,并find一些鼓励(或不执行 )适当的纪律的方式。 当然,这可能会超出你的直接责任,所以根据你的办公室的政治情况,这可能会非常棘手。
我们遇到类似的问题,那就是不要重新启动桌面计算机,这意味着安全更新有时会排队等待数月。 安全政策指出:“除非有足够的缓解措施可以得到证实,否则应立即安装及时安装已知安全问题的补丁”,所以最终只能通过集体策略执行:所有非服务器Windows机器将在星期二过夜重启,如果有未决的更新,没有例外。 如果有人反驳这个,有两个简单的计数器:如果我们不遵循这个政策,那么下一次我们就会放弃我们的ISOauthentication,那么对这个业务有重要的任何审计。我们与客户的合同也会对安全政策做出声明(因为我们有时会处理他们的数据,我们必须向他们保证他们的数据对我们来说是安全的),所以如果没有这个强制执行,我们就会违反一些非常昂贵的合同。
>用户坚持使用Lync 2013而不是Lync 2010(Lync 2013是臭名昭着的资源pipe理器)
有什么特别的原因,除了他们想要更新鲜的东西吗? 如果有真正需要的function,那么在这个angular度上你可能做的很less。
如果聊天应用程序是主要的资源问题,我想知道是否有办法在空闲会话中杀死那个程序的实例,而不是杀死整个会话?
>每次我没有足够的通知重新启动,他们会失去工作,即当天“中午”需要重新启动
你没有说明工作的性质,所以这是非常依赖于什么,但他们可能没有尽职尽责(即没有正确地工作 )。
如果他们不是经常保存文件,那么他们就把工作放在危险之中,而不是你。 如果发生断电或其他故障导致服务器停机,会发生什么情况? 他们也会怪你吗?
当然,如果他们在重新启动时正在积极工作,或者需要离开长时间运行的进程而无人照pipe,那么可能会有一个真正的计划问题,您需要在您之间制定计划。
由于听起来像一个销售人员的风险 – 我们使用ShutdownPlus滚动重启 。 我们已经设置好每天晚上尝试重启我们的服务器。 它工作的很好 – 你可以设置它只在每个人都注销后重新启动服务器。 如果某人仍然使用RD服务器X次,它将重新启动循环。 如果您愿意,工具也可以为您注销用户。 甚至可以让您的VMs在ESXi上运行。
我使用了几个GPO,在几个小时后注销断开连接的用户。 当然,在一定的空闲时间之后断开活动会话。 这是一个非常优美的方法,除了让闭会期间的会话stream氓程序。 我们已经解决了这些问题。 我们现在已经设置好了,每台服务器都试图从22.00到7.00每小时重新启动一次,直到它成功。 实际上,用户每周重新启动至less2/3次,这对我来说很好。
不幸的是,这不是一个免费的程序,但它的工作相当不错。 我正在实施一个PowerShell脚本,希望在重新启动之前更新服务器。
直接回答Microsoft服务器重新启动是/否。 哦,如果生活很简单! 它取决于在服务器上运行的应用程序。 但是,这是一个简单的指导,但不是一个硬性规定。
运行Windows服务器的物理服务器** x版本**( 自动重新启动和计划 ) 95%可以每两周重新启动一次,没有任何实际的担忧。 (检查正在使用的补丁是否相关并且是必需的)。 确保在释放到现场/生产系统之前,在testing服务器上完全testing补丁。
运行Windows Server x版本的VMWare虚拟服务器 – 每两周重新启动一次( 如果应用了修补程序,请参阅上面的注释 )
物理VMWare服务器从不/很less,只有在没有预定的情况下才需要。 (如果保持最新,通常非常稳定)VMWare修补程序/更新将需要重新启动。
运行Windows SQL的 VMWare (限制重新启动, 手动应用Windows补丁程序!重新启动IF补丁程序需要它,然后才停止所有客户机连接)一旦服务器备份,检查连接已重新连接。 SQL服务器可能需要很长时间才能重新启动,因此请计划好几个小时。
提醒:在做任何更改为VMWare(Windows服务器)SNAPSHOT之前! 如果在应用服务补丁或更新或应用程序启动失败后系统崩溃,则可以快速获取服务器备份并以有限的停机时间运行。 请记住logging错误,以便您可以find修复程序不要离开系统,因为它失败了,因为它可能会在未来失败。
希望能够帮助我们做一些小事情来清理事情。