“ jx引导”在“ openshift-3.11”提供程序中失败,并且“ tekton管道控制器” pod进入“ crashloopbackoff”状态

问题描述

摘要

我已经有一个在openshift 3.11提供程序中运行的“静态jenkins服务器”类型jenkins-x的设置。集群崩溃了,我想在集群中重新安装jenkins-x,但是现在不支持“静态jenkins服务器”。

所以我试图通过“ jx引导”安装“ jenkins-x”,但是安装失败,并且“ tekton管道控制器” pod进入“ crashloopbackoff”状态。

重现行为的步骤:

jx-requirements.yml:

autoUpdate:
      enabled: false
      schedule: ""
    bootConfigURL: https://github.com/jenkins-x/jenkins-x-boot-config.git
    cluster:
      clusterName: cic-60
      devEnvApprovers:
      - automation
      environmentGitOwner: cic-60
      gitKind: bitbucketserver
      gitName: bs
      gitServer: http://rtx-swtl-git.fnc.net.local
      namespace: jx
      provider: openshift
      registry: docker-registry.default.svc:5000
    environments:
    - ingress:
        domain: 172.29.35.81.nip.io
        externalDNS: false
        namespaceSubDomain: -jx.
        tls:
          email: ""
          enabled: false
          production: false
      key: dev
      repository: environment-cic-60-dev
    - ingress:
        domain: ""
        externalDNS: false
        namespaceSubDomain: ""
        tls:
          email: ""
          enabled: false
          production: false
      key: staging
      repository: environment-cic-60-staging
    - ingress:
        domain: ""
        externalDNS: false
        namespaceSubDomain: ""
        tls:
          email: ""
          enabled: false
          production: false
      key: production
      repository: environment-cic-60-production
    gitops: true
    ingress:
      domain: 172.29.35.81.nip.io
      externalDNS: false
      namespaceSubDomain: -jx.
      tls:
        email: ""
        enabled: false
        production: false
    kaniko: true
    repository: nexus
    secretStorage: local
    storage:
      backup:
        enabled: false
        url: ""
      logs:
        enabled: false
        url: ""
      reports:
        enabled: false
        url: ""
      repository:
        enabled: false
        url: ""
    vault: {}
    velero:
      schedule: ""
      ttl: ""
    versionStream:
      ref: v1.0.562
      url: https://github.com/jenkins-x/jenkins-x-versions.git
    webhook: lighthouse

预期的行为:

jx名称空间下的所有Pod应该都已启动并正在运行,并且jenkins-x应该正确安装

实际行为:

Tekton管道控制器容器进入“ CrashLoopBackOff”状态,并显示错误

状态在“ jx”命名空间中的豆荚:

NAME                                           READY     STATUS             RESTARTS   AGE
jenkins-x-chartmuseum-5687695d57-pp994         1/1       Running            0          1d
jenkins-x-controllerbuild-78b4b56695-mg2vs     1/1       Running            0          1d
jenkins-x-controllerrole-765cf99bdb-swshp      1/1       Running            0          1d
jenkins-x-docker-registry-5bcd587565-rhd7q     1/1       Running            0          1d
jenkins-x-gcactivities-1598421600-jtgm6        0/1       Completed          0          1h
jenkins-x-gcactivities-1598423400-4rd76        0/1       Completed          0          43m
jenkins-x-gcactivities-1598425200-sd7xm        0/1       Completed          0          13m
jenkins-x-gcpods-1598421600-z7s4w              0/1       Completed          0          1h
jenkins-x-gcpods-1598423400-vzb6p              0/1       Completed          0          43m
jenkins-x-gcpods-1598425200-56zdp              0/1       Completed          0          13m
jenkins-x-gcpreviews-1598421600-5k4vf          0/1       Completed          0          1h
jenkins-x-nexus-c7dcb47c7-fh7kx                1/1       Running            0          1d
lighthouse-foghorn-654c868bc8-d5w57            1/1       Running            0          1d
lighthouse-gc-jobs-1598421600-bmsq8            0/1       Completed          0          1h
lighthouse-gc-jobs-1598423400-zskt5            0/1       Completed          0          43m
lighthouse-gc-jobs-1598425200-m9gtd            0/1       Completed          0          13m
lighthouse-jx-controller-6c9b8994bd-qt6tc      1/1       Running            0          1d
lighthouse-keeper-7c6fd9466f-gdjjt             1/1       Running            0          1d
lighthouse-webhooks-56668dc58b-4c52j           1/1       Running            0          1d
lighthouse-webhooks-56668dc58b-8dh27           1/1       Running            0          1d
tekton-pipelines-controller-76c8c8dd78-llj4c   0/1       CrashLoopBackOff   436        1d
tiller-7ddfd45c57-rwtt9                        1/1       Running            0          1d

错误日志:

2020/08/24 18:38:00 Registering 4 clients
2020/08/24 18:38:00 Registering 3 informer factories
2020/08/24 18:38:00 Registering 8 informers
2020/08/24 18:38:00 Registering 2 controllers
{"level":"info","caller":"logging/config.go:108","msg":"Successfully created the logger."}
{"level":"info","caller":"logging/config.go:109","msg":"Logging level set to info"}
{"level":"fatal","logger":"tekton","caller":"sharedmain/main.go:149","msg":"Version check Failed","commit":"821ac4d","error":"kubernetes version \"v1.11.0\" is not compatible,need at least \"v1.14.0\" (this can be overridden with the env var \"KUBERNETES_MIN_VERSION\")","stacktrace":"github.com/tektoncd/pipeline/vendor/knative.dev/pkg/injection/sharedmain.MainWithConfig\n\tgithub.com/tektoncd/pipeline/vendor/knative.dev/pkg/injection/sharedmain/main.go:149\ngithub.com/tektoncd/pipeline/vendor/knative.dev/pkg/injection/sharedmain.MainWithContext\n\tgithub.com/tektoncd/pipeline/vendor/knative.dev/pkg/injection/sharedmain/main.go:114\nmain.main\n\tgithub.com/tektoncd/pipeline/cmd/controller/main.go:72\nruntime.main\n\truntime/proc.go:203"}
After downgrading the tekton image from "0.11.0" to "0.9.0" the tekton pipeline controller pod is into running state. And a new tekton pipeline webhook pod got created and it is into "Crashloopbackoff"

Jx版本:

Version        2.1.127
Commit         4bc05a9
Build date     2020-08-05T20:34:57Z
Go version     1.13.8
Git tree state clean

诊断信息:

jx诊断版本的输出为:

Running in namespace: jx
Version        2.1.127
Commit         4bc05a9
Build date     2020-08-05T20:34:57Z
Go version     1.13.8
Git tree state clean
NAME                          VERSION
Kubernetes cluster            v1.11.0+d4cacc0
kubectl (installed in JX_BIN) v1.16.6-beta.0
helm client                   2.16.9
git                           2.24.1
Operating System              "CentOS Linux release 7.8.2003 (Core)"

Please visit https://jenkins-x.io/faq/issues/ for any kNown issues.

Finished printing diagnostic information

Kubernetes集群: openshift-3.11

Kubectl版本:

Client Version: version.Info{Major:"1",Minor:"11+",GitVersion:"v1.11.0+d4cacc0",GitCommit:"d4cacc0",GitTreeState:"clean",BuildDate:"2018-10-15T09:45:30Z",GoVersion:"go1.10.2",Compiler:"gc",Platform:"linux/amd64"}

操作系统/环境:

NAME="CentOS Linux"
VERSION="7 (Core)"
ID="centos"
ID_LIKE="rhel fedora"
VERSION_ID="7"
PRETTY_NAME="CentOS Linux 7 (Core)"
ANSI_COLOR="0;31"
CPE_NAME="cpe:/o:centos:centos:7"
HOME_URL="https://www.centos.org/"
BUG_REPORT_URL="https://bugs.centos.org/"

CENTOS_MANTISBT_PROJECT="CentOS-7"
CENTOS_MANTISBT_PROJECT_VERSION="7"
REDHAT_SUPPORT_PRODUCT="centos"
REDHAT_SUPPORT_PRODUCT_VERSION="7"

我需要在“ openshift-3.11”中通过“ jx boot”安装“ jenkins-x”,该版本使用认的kubernetes版本-1.11.0,但“ jx boot”至少需要1.14.0。请建议是否有任何解决方法可以在openshift-3.11上获取jenkins-x

解决方法

如错误消息所示(在崩溃循环中),kubernetes version "v1.11.0" is not compatible,need at least "v1.14.0"使它无法安装在OpenShift 3上(因为它随Kubernetes 1.11.0一起提供)。似乎jenkins-X随附的Tetkon Pipelines v0.14.2至少需要Kubernetes 1.14.0(而类似Tekton Pipelines v0.15.0的更高版本则需要Kubernetes 1.16.0)。

{"level":"fatal","logger":"tekton","caller":"sharedmain/main.go:149","msg":"Version check failed","commit":"821ac4d","error":"kubernetes version \"v1.11.0\" is not compatible,need at least \"v1.14.0\" (this can be overridden with the env var \"KUBERNETES_MIN_VERSION\")","stacktrace":"github.com/tektoncd/pipeline/vendor/knative.dev/pkg/injection/sharedmain.MainWithConfig\n\tgithub.com/tektoncd/pipeline/vendor/knative.dev/pkg/injection/sharedmain/main.go:149\ngithub.com/tektoncd/pipeline/vendor/knative.dev/pkg/injection/sharedmain.MainWithContext\n\tgithub.com/tektoncd/pipeline/vendor/knative.dev/pkg/injection/sharedmain/main.go:114\nmain.main\n\tgithub.com/tektoncd/pipeline/cmd/controller/main.go:72\nruntime.main\n\truntime/proc.go:203"}

理论上,在控制器部署可能中设置KUBERNETES_MIN_VERSION可以使其正常工作,但尚未经过测试,并且很可能控制器在使用不可用的功能时将无法正常运行在1.11.0中。除此之外,我没有其他解决方法。

相关问答

Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其...
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。...
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbc...