Jenkins Master与Slave分布式

重点涉及到知识点的文档:

一、先决条件

  1. Kubernetes集群
  2. 已部署Jenkins
  3. 已安装Jenkins Kubernetes插件

代理是使用JNLP启动的,因此期望映像自动连接到Jenkins主服务器。为此,将自动注入一些环境变量

  • JENKINS_URL:Jenkins网络界面网址
  • JENKINS_SECRET:用于认证的密钥
  • JENKINS_AGENT_NAME:Jenkins代理的名称
  • JENKINS_NAME:Jenkins代理的名称(不推荐使用。仅在此处是为了向后兼容

二、安装Kubernetes插件

系统管理 -> 插件管理 -> 可选插件 -> Kubernetes plugin
在这里插入图片描述

等待安装完重启Jenkins即可。

三、Kubernetes云配置

系统管理 -> 节点管理 -> Configure Clouds -> Kubernetes配置集群
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

1、 添加 Kubernetes 集群认证:

kubernetes
https://kubernetes.default.svc.cluster.local

Kubernetes 命名空间: slave Pod创建的名称空间

凭据 可不填写

在这里插入图片描述

点击测试:如上图提示 连接到Kubernetes 1.19, 我的k8s版本是1.19最新的版本OK,集群认证成功。

2、 添加 Jenkins 集群认证:

http://jenkins-pipeline.jenkins.svc.cluster.local:8080

在这里插入图片描述

在这里插入图片描述
在这里插入图片描述
点击应用保存即可。

四、创建一个Job测试(流水线)

在这里插入图片描述
在这里插入图片描述

pipeline {
   agent { label 'jnlp-slave'}    //jnlp-slave在上面配置的文件标签
    environment {
        DISABLE_AUTH = 'true'     //定义变量 DISABLE_AUTH
        DB_ENGINE    = 'sqlite'      //定义变量 DB_ENGINE 
    }

    stages {	    //阶段(相当于一个部门)
        stage('Build') {    //脚步(相当于一个部门中的人员数据库、架构、运维、安全)	
            steps {  //脚步内的步骤(职责人员执行自己负责的任务)
                echo "Database engine is ${DB_ENGINE}"
                echo "DISABLE_AUTH is ${DISABLE_AUTH}"
                sh 'printenv'
            }
        }
    }
}

构建测试(可在黑屏观看是否有Pod生成):
在这里插入图片描述
在这里插入图片描述

五、将slave生成在Jenkins的名称空间下

1、修改kubernetes云配置

在这里插入图片描述

2、多次点击构建测试是否默认为10个

在这里插入图片描述
在这里插入图片描述
OK

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值