Одно задание cron для нескольких образов AWS EC2

У нас есть приложение Ruby on Rails, работающее на EC2, и включена функция автомасштабирования. Мы использовали всякий раз, когда управляли cron. Таким образом, новые экземпляры с изображением основного экземпляра создаются автоматически при скачках и сбрасываются при низком трафике. Но это также копирует задания cron во вновь созданные экземпляры.

У нас есть особое требование, в котором мы хотим ограничить cron одним экземпляром.

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


person Amit Patel    schedule 21.04.2016    source источник


Ответы (2)


В качестве обходного пути у вас может быть условие в cron, указывающее, что задание cron должно выполняться на основе условия, которое будет выбирать один экземпляр из вашей группы автомасштабирования. например, иметь только самый старый экземпляр, на котором запущен cron, или только экземпляр, имеющий «самый низкий» идентификатор экземпляра, или что угодно в качестве условия. вы можете добиться этого, если ваши экземпляры будут вызывать API AWS.

В качестве более правильного решения вы могли бы использовать одну хронифицированную лямбду для доступа к вашим экземплярам? теперь это возможно согласно этому страница

person Tom    schedule 21.04.2016

Лучше всего установить масштаб защиты. Это предотвращает завершение вашего экземпляра во время масштабирования событий.

Дополнительную информацию можно найти здесь, на AWS https://aws.amazon.com/blogs/aws/new-instance-protection-for-auto-scaling/

person Vaibhav Malushte    schedule 01.02.2017