Плагин jenkins kubernetes - Ожидание подключения агента (1/100) - PullRequest
0 голосов
/ 03 сентября 2018

В чем проблема Основываясь на приведенной ниже конфигурации, я сделал 2 тестовых случая:

  1. Я использую мои заданные изображения, есть 2 контейнера, которые будут созданы в одном модуле, включая мой определяемый контейнер, плагин jenkins kubernetes автоматически создаст контейнер JNLP, но фактическая команда выполняется в контейнере JNLP, а не в моем указанном контейнере.
  2. Я пытаюсь расширить образы jnlp-slave (получить их с офисного сайта), имя контейнера - "jnlp" на страницах плагина kubenetes (изображения создаются с помощью файла офисного докера) https://hub.docker.com/r/jenkins/jnlp-slave/~/dockerfile/"), Сначала я разрешу Базовые изображения Jenkins / Slave работают хорошо, затем попробуйте расширить его, как мне нужно. но когда я пытаюсь использовать по умолчанию один, он всегда запрашивает «Ожидание подключения агента (1/100)», кажется, ждет подключения клиента JNLP, я ввожу динамическое изображение, которое создает плагин jenkins kubernetes, я обнаружил, что нет любое отношение процесса к "ENTRYPOINT [" jenkins-slave "]", я проверял логи jenkins, это подсказывало ниже информацию. Буду очень рад любой подсказке.

Created Pod: kube-com-mini-fqt9p in namespace kube-system
Waiting for Pod to be scheduled (0/100): kube-com-mini-fqt9p
Container is waiting kube-com-mini-fqt9p [jnlp]: ContainerStateWaiting(message=null, reason=ContainerCreating, additionalProperties={})
Waiting for Pod to be scheduled (1/100): kube-com-mini-fqt9p
Waiting for agent to connect (1/100): kube-com-mini-fqt9p
Waiting for agent to connect (2/100): kube-com-mini-fqt9p
Waiting for agent to connect (3/100): kube-com-mini-fqt9p
Waiting for agent to connect (4/100): kube-com-mini-fqt9p
Waiting for agent to connect (5/100): kube-com-mini-fqt9p
Waiting for agent to connect (6/100): kube-com-mini-fqt9p
Waiting for agent to connect (7/100): kube-com-mini-fqt9p
Waiting for agent to connect (8/100): kube-com-mini-fqt9p
Waiting for agent to connect (9/100): kube-com-mini-fqt9p
Waiting for agent to connect (10/100): kube-com-mini-fqt9p
Waiting for agent to connect (11/100): kube-com-mini-fqt9p
Waiting for agent to connect (12/100): kube-com-mini-fqt9p
Waiting for agent to connect (13/100): kube-com-mini-fqt9p
Waiting for agent to connect (14/100): kube-com-mini-fqt9p

=============================================== =============== ENV:

$ kubectl version
Client Version: version.Info{Major:"1", Minor:"11", GitVersion:"v1.11.2", GitCommit:"bb9ffb1654d4a729bb4cec18ff088eacc153c239", GitTreeState:"clean", BuildDate:"2018-08-07T23:17:28Z", GoVersion:"go1.10.3", Compiler:"gc", Platform:"linux/amd64"}
Server Version: version.Info{Major:"1", Minor:"11", GitVersion:"v1.11.2", GitCommit:"bb9ffb1654d4a729bb4cec18ff088eacc153c239", GitTreeState:"clean", BuildDate:"2018-08-07T23:08:19Z", GoVersion:"go1.10.3", Compiler:"gc", Platform:"linux/amd64"}

Jenkins Version :Jenkins ver. 2.138

Jenkins kubernetes Plugin : 1.12.3

Что я сделал:

  1. Хорошо работает кластер Kubernetes
  2. Главный сервер Jenkins независим от кластера Kubernetes.
  3. Jenkins kubernetes plugi успешно прошел проверку учетных данных и подключения kubernetes.
  4. Добавлено облако kubernetes с пометкой POD.
  5. Скомбинировал метку с заданием Дженкинса «Ограничить, где можно запустить этот проект»

FROM jenkins/slave:3.23-1-alpine
MAINTAINER Oleg Nenashev <o.v.nenashev@gmail.com>
LABEL Description="This is a base image, which allows connecting Jenkins agents via JNLP protocols" Vendor="Jenkins project" Version="3.23"

COPY jenkins-slave /usr/local/bin/jenkins-slave

ENTRYPOINT ["jenkins-slave"]

как запустить работу:

Jenkins запускает задания по команде curl (не в конвейере), плагин jenkins kubernetes может запускать задания с моими заданными изображениями.

1 Ответ

0 голосов
/ 05 сентября 2018

Проблема была исправлена ​​с помощью следующих действий:

  1. Переименуйте имя вашего контейнера в jnlp в плагине kubernetes.

  2. Сохраняйте JNLP, настроенный правильно в ваших изображениях ENTRYPOINT Из конкретных изображений
    (COPY Дженкинс-раб / США / местный / бен / Дженкинс-раб ENTRYPOINT ["Дженкинс-Раб"])

  3. Пусть "command to run" и аргументы для передачи в команду пусты.

...