zoukankan      html  css  js  c++  java
  • K8s+jenkins实现提升效率 —— 一些小记录

    尝试下K8s + jenkins的组合,非常方便。在这里记录一下:

    kubernetes版本:

    1.10 +

    deployment.yaml

    apiVersion: v1
    kind: Service
    metadata:
    name: jenkins
    labels:
    app: jenkins
    spec:
    type: NodePort
    ports:
    - port: 8080
    name: jenkins-web
    - port: 8081
    name: jnlp
    selector:
    app: jenkins
    ---
    apiVersion: apps/v1
    kind: StatefulSet
    metadata:
    name: jenkins
    spec:
    serviceName: "jenkins"
    replicas: 1
    selector:
    matchLabels:
    app: jenkins
    template:
    metadata:
    labels:
    app: jenkins
    spec:
    containers:
    - name: nginx
    image: jenkins/jenkins:lts-alpine
    ports:
    - containerPort: 8080
    name: jenkins-web
    - containerPort: 8081
    name: jenkins-jnlp
    volumeMounts:
    - name: jenkins-data
    mountPath: /var/jenkins_home
    volumeClaimTemplates:
    - metadata:
    name: jenkins-data
    spec:
    accessModes: [ "ReadWriteOnce" ]
    resources:
    requests:
    storage: 1Gi`
     
    执行kubectl create xxx.
    然后就是正常的等待jenkins配置(注意,jenkins 2.60 的dockerhub版本并不支持kubernetes插件安装,如果不用插件用人肉配置也ok,但鉴于jenkins 2.153版本已经出现且支持kubernetes的插件安装,故采用了jenkins新版)
     
    当然,为了体现出kubenetes的优势,请把executor number设为0.
     
    其次kubernetes配置(如果是本机kubenetes,插件会自动识别并且填好所有东西,如果是非本机的集群,就需要人肉补充了):
     
     
    大功告成!用3个job测试一下:
    job1,job2,job3: 
     
     
    在executor为0的情况下,会创建3个container来跑这3个job,跑完回收~
     
    效果图:
    executor为0,但3个job在执行:
  • 相关阅读:
    你要结婚了丶
    20150806这是个悲伤的日子。
    今天是我的生日。
    这是从word发的第一篇博客。
    【关于JavaScript】自动计算的实例
    【关于JavaScript】常见表单用户名、密码不能为空
    【关于php】Appserv中关于DW配置站点问题
    【关于php】Appserv的安装注意事项
    【无题】写在5月18日
    HTML中如何添加日历插件(JQUERY)
  • 原文地址:https://www.cnblogs.com/spillage/p/10429125.html
Copyright © 2011-2022 走看看