jenkins结合k8s构建流水线如何提升运行性能和构建效率

jenkins结合k8s构建流水线如何提升运行性能和构建效率_第1张图片


一、调节jenkins从节点的内存和cpu

Jenkins是目前最主流的CI/CD工具,我们常用jenkins对接kubernetes实现DevOps。那配置的Jenkins Slave模板生成的jenkins slave pod是实际拉取代码,构建代码的从节点,如果jenkins slave pod用的是默认的配置,很可能会出现性能问题,如下图:

jenkins结合k8s构建流水线如何提升运行性能和构建效率_第2张图片

 如果配置的cpu和内存限制太小很可能出现代码构建速度慢,构建时候内存不够:

如果出现上面问题可以适当调节CPU和内存限制,数值可调大些。

二、生产环境从多个维度对Jenkins进行优化?

1、插件数量不要安装太多,可以选择性安装需要的插件

2、jenkins的master节点不构建任务,通过标签的方式调用k8s api生成jenkins从节点,在从节点构建任务,任务构建完成从节点自动删除,节省资源

3、尽量使用私有服务器,如使用nexus、gitlab、harbor增加构建速度

4、取消jenkins的定时清理工作空间任务

 一些项目在构建时往需要下载一些依赖库,但是 yarn install会等很长一段时间,经过测试,在不删除工作空间的情况下,构建时会优先使用本地缓存,构建速度会大幅度提升,但是jenkins有定时清理工作空间的功能,需要关掉它。

5、jenkins任务并发执行

   jenkins并发工作流编排有利于提高执行效率 缩短构建时间。

1)   设置不同stage段并发执行

stage('a and b') {

     parallel {

     stage("a"){

        steps {

                  }

    stage("b"){

        steps {

            }         

        }

    }

  }

2)   设置同一个stage段并发执行

stage('start a') {

        steps {

          parallel(

              a:{

               },

              b:{ 

               },

              c:{ 

               },

              d:{

               }

        }

 }

微信公众号

jenkins结合k8s构建流水线如何提升运行性能和构建效率_第3张图片

作者微信:luckylucky421302

jenkins结合k8s构建流水线如何提升运行性能和构建效率_第4张图片

精彩文章推荐

K8s 常见问题

k8s超详细解读

K8s 超详细总结!

K8S 常见面试题总结

k8s控制器Deployment详细介绍:资源清单编写技巧

k8s安装隐患如何优化?从以下维度分享

使用k3s部署轻量Kubernetes集群快速教程

基于Jenkins和k8s构建企业级DevOps容器云平台

k8s原生的CI/CD工具tekton

K8S二次开发-自定义CRD资源

基于Jenkins+git+harbor+Helm+k8s+Istio构建DevOps流水线

基于k8s+Prometheus+Alertmanager+Grafana构建企业级监控告警系统

k8s开启临时容器ephemeral进行debug调试

k8s Ingress Controller更新策略:灰度发布

k8s之nginx-Ingress-controller如何做高可用应对大并发请求?

jenkins结合k8s构建流水线如何提升运行性能和构建效率_第5张图片

                   点亮,服务器10年不宕机84a767afdffe42756eaf7c8d44cc794e.gif

882bdf224628c5cbc32c07ad22b42481.gif 点击阅读 | 了解更多

你可能感兴趣的:(java,redis,大数据,python,mysql)