【问题标题】:Setting up taints on pod template in Kubernetes Plugin on Jenkins在 Jenkins 上的 Kubernetes 插件中在 pod 模板上设置污点
【发布时间】:2018-08-07 05:34:04
【问题描述】:

我想在由 Kubernetes 插件动态旋转的 Jenkins 从属 pod 上应用容忍度。我看到 Kubernetes 插件在 Jenkins UI 上没有提供任何选项来添加容忍度,如下图所示。谁能告诉我,在这种情况下,如何将容忍度添加到从属 pod(由 kubernetes 插件生成)。

P.S.:- 我不想使用标签,我只想使用宽容。而且我不确定是否要在 Jenkinsfile 中添加 podTemplate 并在此 podTemplate 中指定容忍度。因为这将迫使我对每个作业的 Jenkinsfile 都做同样的事情,如果多个开发人员准备各自的管道,这很乏味而且不可能。

【问题讨论】:

    标签: jenkins kubernetes jenkins-plugins jenkins-pipeline


    【解决方案1】:

    据我所知,到目前为止,不可能为 jenkins 的由 kubernetes 插件启动的 slave 添加容忍。而且在这种情况下,也无法在 podTemplateSpec 中添加容限(podTemplateSpec - 是定义 github 存储库中提到的 pod 和容器模板的替代选项kubernetes 插件的:- https://github.com/jenkinsci/kubernetes-plugin ) 的 Jenkinsfile。

    【讨论】:

      【解决方案2】:

      您实际上可以直接在 jenkins 的配置中添加污点。

      https://github.com/jenkinsci/kubernetes-plugin/pull/311#issuecomment-386342776

      您可以将其添加到容器下的“pod 的原始 yaml”中,并相应地更新标签的标准。

      我自己用过这个,确实有效。

      (这是上面链接中的 yaml)

      apiVersion: v1
      kind: Pod
      metadata:
        labels:
          jenkins/kube-default: true
          app: jenkins
          component: agent
      spec:
        nodeSelector:
          werkint.com/entity: other
        tolerations:
        - key: werkint.com/entity
          operator: Equal
          value: other
          effect: NoSchedule
      

      【讨论】:

      • 绝对!,在你的推荐下我也试过了,确实有效。非常感谢 :)。如果可能的话,还请从您在答案中提到的链接中复制粘贴 yaml。可能会更有帮助。再次感谢。
      【解决方案3】:

      api版本:v1 种类:豆荚 元数据: 标签: 詹金斯/kube-默认:真 应用程序:詹金斯 组成:代理 规格: 节点选择器: 詹金斯奴隶:詹金斯奴隶 容忍度: - 关键:“efk_taint” 运算符:“存在” 效果:“NoSchedule”

      【讨论】:

        猜你喜欢
        • 2016-02-20
        • 1970-01-01
        • 2019-03-31
        • 1970-01-01
        • 1970-01-01
        • 2019-08-27
        • 1970-01-01
        • 2019-02-23
        • 2018-10-05
        相关资源
        最近更新 更多