【问题标题】:server load balancing script服务器负载平衡脚本
【发布时间】:2013-07-08 11:01:56
【问题描述】:

我有一个服务器 (Ubuntu),它为多个域提供服务并运行一系列 cron 脚本。但是无法预测服务器上的负载,因此我无法在 cron 脚本中设置正确的负载量。

但是,在 cron 中运行的脚本会时不时地超载,并在 CPU 和内存中产生巨大的负载,导致服务器的多个服务停止(例如邮件服务器)。

问题是:我如何编写一个脚本,仅当服务器负载低于最小阈值时才运行现在在 cron 中的例程?有没有在 Linux 下做这个的应用程序?

感谢您的宝贵时间!

【问题讨论】:

  • 您是否尝试过重新调整流程?
  • 是的,实际上我已经尝试了很多简化脚本,但我无法预测任何迭代是否需要 1 分钟或 15 分钟,因此当多个脚本run in cron 正在同时运行

标签: ubuntu cron server-load


【解决方案1】:

您可以查看monit系统管理。 您可以将其添加到您的配置文件中:

# 监控 apache2 网络服务。 # 它将使用给定的 pid 文件检查进程 apache2。 # 如果进程名或 pidfile 路径错误,则 monit 将 # 给出失败的错误。坚韧的 apache2 正在运行。 使用 pidfile /var/run/apache2.pid 检查进程 apache2 启动程序 = "/etc/init.d/apache2 启动" 停止程序 = "/etc/init.d/apache2 停止" # 如果满足以下条件,管理员将通过邮件通知。 如果 CPU 在 2 个周期内大于 60%,则发出警报 如果 cpu > 80% 5 个周期然后重新启动 如果 totalmem > 200.0 MB 5 个周期然后重新启动 如果孩子> 250然后重新启动 如果 loadavg(5min) 在 8 个周期内大于 10 则停止 如果 3 个在 5 个周期内重新启动,则超时 群服务器

这是一个很好的工具,您可以搜索在满足条件时如何执行自己的脚本。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2013-10-23
    • 1970-01-01
    • 1970-01-01
    • 2015-04-01
    • 1970-01-01
    • 2014-03-28
    • 2011-04-07
    相关资源
    最近更新 更多