Недостающие задания в jenkins при развертывании kubernetes имеют много реплик - PullRequest
0 голосов
/ 24 марта 2020

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

Новичок в jenkins и kubernetes, так не совсем уверен в том, что происходит.

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

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

1 Ответ

0 голосов
/ 24 марта 2020

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

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

Один из способов решить эту проблему - установить сходство сеанса на входе. object:

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

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

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

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

...