2

Я столкнулся с проблемой с aws autoscaling + sidekiq заняты работой. У меня есть 4 экземпляра в группе автомасштабирования, и в этих экземплярах работают несколько процессов Sidekiq. Все экземпляры с использованием одинаковых redis.Остановить Sidekiq изящно при завершении Autoscale Экземпляр EC2

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

Я добавил один скрипт в папку /etc/rc0.d, который будет убивать процессы sidekiq во время истечения срока действия, но все же мои задания идут в состоянии сбоя. Я пробовал с TERM и USR1 сигнал для завершения процесса sidkeiq, но то же самое произошло с этими сигналами.

Я использовал sidkeiq pro, также включил надежную выборку.

Кто-нибудь знает, как достичь заданий в оживленной очереди, следует вставить в очередь не в состоянии faliure, а в процессе killig sidekiq вручную или изящно?

ответ

1

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

Если вы еще этого не сделали, вам может потребоваться добавить сон к скрипту, чтобы гарантировать, что Sidekiq имеет достаточно времени для полного выхода.

+0

pls отправляет образец сценария и как вы использовали chkconfig для отвода в управление демона. Я использую эластичный beanstalk и sidekiq, но не волнуйтесь, ваш скрипт и демон plumbig будут действовать только как руководство для меня. спасибо – brg

+0

Мне не разрешено делиться кодом, но основная структура, которую я написал, заключается в том, что служба запускается при запуске Sidekiq, затем она выполняет изящное завершение Sidekiq, когда оно обнаруживает остановку хоста, перезагрузку и т. д. –

+0

Если ваш система использует chkconfig или что-то подобное, вы захотите создать сценарий в /etc/init.d/. Вы можете прочитать, как написать сценарий здесь: [link] (http://shahmirj.com/blog/beginners-guide-to-creating-a-daemon-in-linux) –