Недостающие задания в jenkins при развертывании kubernetes имеют много реплик

У меня есть развертывание jenkins в kubernetes с 2 репликами, предоставляемыми в качестве сервиса под nginx-ingress. После создания проекта следующее обновление не даст для него никакого результата, как если бы оно никогда не было создано, третье обновление снова покажет созданный проект.

Новичок в Дженкинс и Кубернетес, так что не совсем уверен, что происходит.

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

П.Д .: Я уменьшаю реплику до 1, и она работает как задумано, но я пытаюсь сделать этот проект отказоустойчивым.

Всего 1 ответ


Насколько мне известно, Дженкинс не поддерживает HA в дизайне. Вы не можете увеличить его, просто добавив больше реплик. Вот такой же вопрос к вам о переполнении стека .

Nginx - это балансировка нагрузки между двумя репликами созданных вами экземпляров jenkins. Эти два экземпляра не знают друг друга и имеют отдельные данные, поэтому вы можете переключаться между двумя совершенно разными экземплярами jenkins.

Один из способов решить эту проблему - установить сходство сеанса на входящем объекте:

nginx.ingress.kubernetes.io/affinity-mode: cookie

таким образом, ваш сеанс браузера придерживается одного модуля.

Также не забудьте разделить $JENKINS_HOME между этими $JENKINS_HOME например, используя тома NFS.

И дайте мне знать, если вы найдете это полезным.


Есть идеи?

10000