kubesphere v4.1.2 , ks-devops 默认使用 oidc 的方式登陆 jenkins console,配置的具体步骤参考: https://github.com/kubesphere-extensions/ks-extensions/blob/main/devops/README_zh.md#%E8%AE%BF%E9%97%AE-jenkins
但 oidc 的登陆方式比较繁琐。可进行如下设置,使用jenkins 自带的local 数据库进行登陆,较为方便。
首先,修改如下configmap:
kubectl -n kubesphere-devops-system edit cm jenkins-casc-config
将其中的 securityRealm 部分(应该有2处)修改为如下配置:
securityRealm:
local:
allowsSignup: false
之后保存更改
然后,重启 devops-jenkins 工作负载:
kubectl -n kubesphere-devops-system rollout restart deploy devops-jenkins
等待 devops-jenkins pod 运行后,浏览器访问 http://<master-ip>:30180 ,即可打开 jenkins console.
执行以下步骤,获取jenkins admin的用户名和密码:
root@stonetest2:~# kubectl -n kubesphere-devops-system get secret devops-jenkins -o yaml
apiVersion: v1
data:
jenkins-admin-password: cTNSbm1Xa3hlWHQ0cm1FMGhEVVhkaA==
jenkins-admin-token: MTE0NTg4MjI4MDA3OTkxMDYwNjM3ODYyMjA0NjExMDYzMQ==
jenkins-admin-user: YWRtaW4=
kind: Secret
将其中的 jenkins-admin-user 和 jenkins-admin-password base64 解码:
echo "cTNSbm1Xa3hlWHQ0cm1FMGhEVVhkaA==" | base64 -d
使用解码后的用户名和密码,即可登陆 jenkins console。
注意:
- ks-devops 扩展的values.yaml 尚不支持修改
securityRealm
为 local, 所以当 ks-devops 扩展更新/升级后,会将上述更改重置, 需按照此流程再执行一遍
- 将 ks-devops 扩展的 values.yaml 修改为 local 并不会生效,这会导致 devops-jenkins 无法启动,别这么做!