Suk*_*ngh 4 linux varnish centos5 drupal-6 apache-2.2
我的服务器上运行着相当多的软件:httpd、varnish、mysql、memcache、java..
他们每个人都使用了一部分虚拟内存,并且 varnish 被配置为分配 3GB 的内存来运行。
由于 100K 的高流量负载,我们的服务器内存不足并调用了 oom-killer。我们必须重新启动服务器。
我们有 8GB 的虚拟内存,由于某些原因我们无法扩展到更大的内存。
我的问题是 - 是否有任何自动化脚本可以监控剩余多少虚拟内存并根据某些标准,假设剩余 500MB 是否会自动重新启动服务器?
我知道这不是正确的解决方案,但我们必须这样做,否则我们不知道服务器何时会出现 OOM,当我们知道并重新启动服务器时,我们失去了访问用户。
如果我理解正确,您需要如下内容:
这可以按如下方式完成
例如
#!/bin/bash
mem=$(free -m | awk '/Mem:/{print $4}')
(( mem <= 500 )) && reboot
Run Code Online (Sandbox Code Playgroud)
使脚本可执行
chmod +x scriptname // 注意不要添加扩展名
将脚本添加到 cron
crontab -e
* * * * * user_to_run_the_script /path/to/the/script
Run Code Online (Sandbox Code Playgroud)
希望你明白。
| 归档时间: |
|
| 查看次数: |
8455 次 |
| 最近记录: |