Kubesphere-DevOps-记一次流水线排错

发布时间 2023-04-20 17:02:41作者: BelChance

Devops可插拔插件的安装

按照官方文档教程进行安装:
https://kubesphere.io/zh/docs/v3.3/pluggable-components/devops/

创建Devops流水线

具体操作略
测试流水线比较简单,只有一个步骤
image
git 拉取的是https://gitee.com/leifengyang/yygh-parent.git

流水线报错

总是出现这个警告,随即页面的网络就会变差,流水线会不能被查看
image

Get "http://devops-jenkins.kubesphere-devops-system/crumbIssuer/api/json/api/json": dial tcp 10.233.12.73:80: connect: connection refused

寻找解决方案

经过搜索,社区也有人出现同样的问题,但是解决方案不是特别明晰。
https://kubesphere.io/forum/d/7821-jenkinsdial-tcp-102333522680-connect-connection-refused
在github上也搜到了相关的issue。
https://github.com/kubesphere/ks-devops/issues/715
LinuxSuRen提到 默认的jvm设置很低
image
我来到ks-installer.yaml查看相应的配置参数。

  devops:
    enabled: true
    jenkinsJavaOpts_MaxRAM: 2g
    jenkinsJavaOpts_Xms: 1200m
    jenkinsJavaOpts_Xmx: 1600m
    jenkinsMemoryLim: 2Gi
    jenkinsMemoryReq: 1500Mi
    jenkinsVolumeSize: 8Gi

在3.3的k8sp文档里,我没有找到参数的解释,我对这方面的知识也不是很了解。
在早期文档里找到了部分参数的解释:
https://v2-1.docs.kubesphere.io/docs/zh-CN/installation/install-devops/

#DevOps Configuration
devops_enabled: true # 是否安装内置的 DevOps 系统(支持流水线、 S2i 和 B2i 等功能),若机器配置充裕建议安装
jenkins_memory_lim: 8Gi # Jenkins 内存限制,默认 8 Gi
jenkins_memory_req: 4Gi # Jenkins 内存请求,默认 4 Gi
jenkins_volume_size: 8Gi # Jenkins 存储卷大小,默认 8 Gi
jenkinsJavaOpts_Xms: 3g # 以下三项为 jvm 启动参数
jenkinsJavaOpts_Xmx: 6g
jenkinsJavaOpts_MaxRAM: 8g
sonarqube_enabled: true # 是否安装内置的 SonarQube (代码静态分析工具)
#sonar_server_url: SHOULD_BE_REPLACED # 安装支持对接外部已有的 SonarQube,此处填写 SonarQube 服务的地址
#sonar_server_token: SHOULD_BE_REPLACED  # 此处填写 SonarQube 的 Token

解决方案

解决方案,就是——升配。
看了早期文档与现在的默认配置的对比,我决定调整我的devops参数配置。
调整为如下配置

  devops:
    enabled: true
    jenkinsJavaOpts_MaxRAM: 4g
    jenkinsJavaOpts_Xms: 2400m
    jenkinsJavaOpts_Xmx: 3200m
    jenkinsMemoryLim: 4Gi
    jenkinsMemoryReq: 3000Mi
    jenkinsVolumeSize: 8Gi

从此流水线运行正常……要是还出现不正常,我就再来这里开坑再填