Kubernetes jenkins pod создает шаблон в неправильном пространстве имен
У нас есть архитектура master-slave от jenkins и используется плагин Kubernetes Jenkins. PodTemplate выглядит так, как показано ниже
podTemplate(label: 'builder-pod', cloud: 'kubernetes', containers: [
containerTemplate(
name: 'jnlp',
image: "${artifact_repo}/jenkins-slave",
ttyEnabled: true,
privileged: false,
alwaysPullImage: false,
workingDir: '/var/jenkins_home',
resourceRequestCpu: '1000m',
resourceRequestMemory: '1Gi',
resourceLimitMemory: '1.1Gi',
)
], volumes: [hostPathVolume(mountPath: '/var/run', hostPath: '/var/run')], namespace: 'jenkins') { //podtemplate
node('builder-pod') {
container('jnlp') {
По какой бы то ни было причине, строитель-стручок создается в default
пространство имен вместо jenkins
Пространство имен
Есть идеи, что может быть не так? Заранее спасибо.
3 ответа
Вы всегда можете форсировать пространство имен, включив его в определение своего контейнера:
containerTemplate(
name: 'jnlp',
namespace: 'jenkins',
image: "${artifact_repo}/jenkins-slave",
ttyEnabled: true,
privileged: false,
alwaysPullImage: false,
workingDir: '/var/jenkins_home',
resourceRequestCpu: '1000m',
resourceRequestMemory: '1Gi',
resourceLimitMemory: '1.1Gi',
)
Что касается того, почему он не загружается в правильное пространство имен, есть ли у вас где-нибудь конфигурация плагина kubernetes по умолчанию? Существуют настройки как для общей цели пространства имен, так и для отдельных целей пространства имен шаблона контейнера. Если у вас нет ни одного, вышеуказанное решение для установки значения пространства имен может быть единственным способом
Проверьте имя с:
kubectl config get-contexts
А затем измените пространство имен контекста перед развертыванием вашего модуля
kubectl config <NAME> set-context --namespace=jenkins
Вам необходимо проверить в интерфейсе администратора Jenkins конфигурацию плагина Kubernetes, вы можете переопределить некоторые параметры из пользовательского интерфейса.