Я использую monit уже некоторое время, и пока он мне очень нравится. Недавно я решил попробовать m / monit, и пользовательский интерфейс выглядит великолепно и очень информативно. Единственное, что я подвешиваю - это мониторинг серверов, которые автоматически масштабируются на Amazon AWS и накапливаются серверы завершения работы. Есть ли известный способ сохранить количество хостов в списке «живых» экземпляров. Я знаю, что есть API, но мне интересно, есть ли еще какие-то более глубокие решения
Что ж, это интересный вопрос. Это уже появлялось в списке рассылки Monit.
Я также использую M / Monit и Monit. У каждого хоста Monit есть уникальный идентификатор, сгенерированный при первом запуске Monit. В моих системах это установлено на /var/monit/id
. Когда этот хост регистрируется в M / Monit, он автоматически создается на панели инструментов M / Monit. Таким образом, масштабирование в EC2 происходит автоматически.
Я бы предложил использовать API для управления хостами, которые либо недолговечны, либо отключены на длительные периоды. Вы можете запустить удаление хостов из сам хозяин!
в Документация по API, есть способ удалить хост с помощью POST:
Опубликовать в http(s)://<mmonit_ip>:<mmonit_port>/admin/host/
с содержанием: "id=<hostid>&Delete=1"
Вы можете сделать это с помощью curl
.
Вы можете изменить идентификатор хоста в / var / lib / monit / id на имя хоста компьютера Linux, но вам нужно управлять схемой именования ваших серверов.
Таким образом, когда экземпляр в вашей AutoScalingGroup по какой-то причине умер, замена будет добавлена в m / monit с тем же именем.