Я пытаюсь настроить Jenkins в кластере Digital Ocean Kubernetes. Я использую входной контроллер NGINX, так как хочу получить доступ к своему серверу из поддомена (jenkins.example.com). Пока все работает нормально, мой пользовательский интерфейс в указанном домене защищен специальным сертификатом. Я начал сталкиваться с проблемами при попытке подключить своих агентов (или подчиненных, как я читал в другом месте?) к серверу.
Что я пробовал
Я попытался настроить балансировщик нагрузки, но не смог заставить его работать, так как я использую Digital Ocean, и большинство документов, которые я нашел, были для GKE / EKS и других, у которых есть собственный внутренний LB. Я также попытался проложить маршрут /агенты
на имя порта службы, а затем на другую службу с типом «ClusterIP», но безуспешно (не найдено в Jenkins).
Моя текущая конфигурация
Дженкинс-deployment.yaml
apiVersion: приложения/v1
вид: развертывание
метаданные:
имя: Дженкинс-деп
этикетки:
приложение: Дженкинс
спецификация:
реплики: 1
селектор:
метки соответствия:
приложение: Дженкинс
шаблон:
метаданные:
этикетки:
приложение: Дженкинс
спецификация:
контейнеры:
- имя: Дженкинс
изображение: Дженкинс/Дженкинс: lts-jdk11
imagePullPolicy: Ифноптресент
порты:
- контейнерПорт: 8080
- контейнерПорт: 50000
Дженкинс-service.yaml
апиВерсия: v1
вид: сервис
метаданные:
имя: Дженкинс-SVC
этикетки:
приложение: Дженкинс
спецификация:
тип: NodePort
селектор:
приложение: Дженкинс
порты:
- имя: уи
протокол: TCP
порт: 8080
целевой порт: 8080
порт узла: 32500
- название: агенты
протокол: TCP
порт: 50000
целевой порт: 50000
порт узла: 32501
Дженкинс-ingress.yaml
Версия API: networking.k8s.io/v1
вид: Вход
метаданные:
имя: Дженкинс-Ингресс
спецификация:
тлс:
- хозяева:
- jenkins.example.com
secretName: tls-секрет
правила:
- хост: jenkins.example.com
http:
пути:
- дорожка: /
тип пути: префикс
серверная часть:
оказание услуг:
имя: Дженкинс-SVC
порт:
имя: уи
#- путь: /агенты
# тип_пути: префикс
# бэкенд:
# оказание услуг:
# имя: jenkins-svc
# порт:
# имя: агенты
Суть в следующем: как сделать порт Jenkins 50000 доступным для подключения агентов к моему серверу? Или как я могу изменить настройки Jenkins, чтобы приспособиться к такой конфигурации?