系统信息
# kubesphere version
v3.0.0
# k8s version
1.18.20
故障现象
根据使用 KubeSphere 创建DevOps工程建好 DevOps 工程之后,点击创建流水线,如下:
创建一条空的流水线,命名为java
,代码仓库可以先不加,高级设置全部不勾选,点击创建:
创建好之后,发现界面并没有我刚才创建的java
空的流水线。这里如果你是使用普通授权账户创建的流水线,界面上无任何报错信息,但如你是使用 admin 账户创建的流水线,则会显示如下形式报错信息。
根据上面的报错信息提示 Internal Server Error
和Jenkins
,看不到具体问题所在,我们需要查看具体服务或pod的日志做进一步故障定位。
故障排查
根据界面报错信息提示,我们看到 Jenkins 可能有些问题,我们看下ks-jenkins
下 pod 容器日志:
Jenkins 使用的是openldap
,不会直接创建用户。在安装时会对 openldap 初始化创建 admin 用户,看起来是 admin 用户没写到 OpenLDAP。
故障处理
在启用 devops 组件的集群上执行:
kubectl patch users admin -p '{"spec":{"password":"<yourpassword>"}}' --type='merge' && kubectl annotate users admin iam.kubesphere.io/password-encrypted-
参考文档
cannot create pipeline via ks