Я разрабатываю веб-приложение (django / gunicorn / nginx), которое необходимо масштабировать в соответствии с нагрузкой. Приложение будет размещено на Linodes, поэтому я намерен использовать StackScripts (и, возможно, Puppet) для запуска новых экземпляров веб-сервера, а затем прикрепить их за NodeBalancer.
Похоже, что Nagios и Munin позволят мне отслеживать нагрузку, получать предупреждения, когда сервер находится под нагрузкой, и просматривать красивые графики. Но позволят ли мне эти приложения автоматизировать развертывание нового Linode? Похоже, я смогу написать обработчик событий Nagios, запускающий StackScript. Но я не уверен, что можно создать проверку, которая может определить, когда запускать новый экземпляр.
Спасибо.
Вы можете настроить проверку загрузки Nagios на повторную проверку несколько раз в течение заданного периода времени перед запуском обработчика событий и / или предупреждения. Если нагрузка достигает критического порога, проверяйте его раз в минуту в течение 10 минут, и если она продолжает показывать критическую нагрузку, запускайте обработчик событий / предупреждение.
Если действительно не проверяет историю, но проверяет, изменилось ли состояние по сравнению с последней проверкой.