2013-07-08 2 views
2

У меня есть сервер (Ubuntu), который обслуживает несколько доменов и запускает ряд скриптов cron. Однако нагрузка на сервер не может быть предсказана, поэтому я не могу установить правильное количество нагрузки в скриптах cron.сценарий балансировки нагрузки сервера

Однако скрипты, выполняющиеся в cron, время от времени перегружаются и генерируют огромную нагрузку как в ЦП, так и в памяти, что приводит к остановке нескольких служб сервера (например, почтового сервера).

Вопрос: как я могу написать скрипт, который запускает подпрограммы, которые теперь находятся в cron, только когда загрузка сервера ниже минимального порога? Есть ли какое-либо приложение, которое делает это под Linux?

Благодарим вас за внимание!

+0

Вы пробовали переустановить процесс? – mnagel

+0

Да, на самом деле я попытался упростить сценарии, но не могу предсказать, будет ли какая-либо итерация занята 1 мин или 15 минут, поэтому огромная нагрузка на сервер появляется, когда несколько скриптов, выполняющихся в cron, работают одновременно – Mike

ответ

1

Вы можете проверить системное управление monit. Вы можете добавить это в ваш конфигурационный файл:

 


    # Monitoring the apache2 web services. 
    # It will check process apache2 with given pid file. 
    # If process name or pidfile path is wrong then monit will 
    # give the error of failed. tough apache2 is running. 
    check process apache2 with pidfile /var/run/apache2.pid 
    start program = "/etc/init.d/apache2 start" 
    stop program = "/etc/init.d/apache2 stop" 
    # Admin will notify by mail if below of the condition satisfied. 
    if cpu is greater than 60% for 2 cycles then alert 
    if cpu > 80% for 5 cycles then restart 
    if totalmem > 200.0 MB for 5 cycles then restart 
    if children > 250 then restart 
    if loadavg(5min) greater than 10 for 8 cycles then stop 
    if 3 restarts within 5 cycles then timeout 
    group server 

Это хороший инструмент, и вы можете найти, как выполнить свой собственный сценарий, когда условие выполняется.

Смежные вопросы