前一段时间我遇到了一个服务器,Apache和Snort占用了100%的处理器,通过远程访问使sshd无响应。 我不得不身体到服务器login本地TTY,然后停止Apache / Snort。
我想知道是否有保证在100%加载CPU /内存情况下的ssh连接的方法。 设置一个“好”的优先权就足够了?
谢谢!
除了使用带外方法之外,无法保证SSH将在满载服务器上可用。 如果您的服务如此加载以至于无法为您提供基本的SSHterminal,那么您还有其他问题。
是的, renice和给它一个较低nice价值会提高重负载性能,但是使用像pam_security( 这里显示的例子),将防止Apache /任何变得无法pipe理开始。
您的通用解决scheme是带外pipe理工具,如Dell iDRAC,IBM Remote Supervisor或HP iLO。 它总是可以呈现一个控制台(不pipe操作系统是否可以响应,取决于您的具体情况),并根据需要应用所需的电源状态。
我已经取得了一些成功,给予sshd实时特权,但是如果其中一个实时进程失控,则必须重启机器。
所以,如果你想要走这条路线,开始第二个只用于紧急情况的ssh守护进程。 🙂