Jenkins系统管理
# 配置共享仓库
Manage Jenkins => Configure System => Global Pipeline Libraries
在Jenkins中使用Groovy语法,共享库中存储的每个文件都是一个个groovy的类文件,每个文件(类)中包含一个或多个方法。每个方法包含groovy语句块,当代码数量增加,我们可以将代码打包成模块,然后再类似import的方式使用此模块中的方法。
- 配置共享仓库地址
# 全局工具
Manage Jenkins => Global Tool Configuration
这里主要是用来配置node节点的工具,比如jdk,mvn,docker 等一下工具,由于我这里用的是kubernetes做的运算节点
这里的配置用不到,配置也是很简单的,一般是自己安装环境,而不是使用自带的
# 插件管理
Manage Jenkins => Plugin Manager
优化插件下载仓库:https://mirrors.tuna.tsinghua.edu.cn/jenkins/updates/update-center.json
修改json
cp -a /var/lib/jenkins/updates/default.json /var/lib/jenkins/updates/default.json_bak
sed -i 's#updates.jenkins-ci.org/download#mirrors.tuna.tsinghua.edu.cn/jenkins#g' /var/lib/jenkins/updates/default.json
sed -i 's#www.google.com#www.baidu.com#g' /var/lib/jenkins/updates/default.json
2
3
- 安装常见的插件
Extended Choice Parameter
Workspace CleanupVersion
pipeline
git
Kubernetes
AnsiColor
Authentication Tokens API
Generic Webhook Trigger
Credentials
Build Timeout
build user vars
Checks API
Display URL API
Rebuilder
Timestamper
build user vars
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
# 节点管理
# 配置node节点
- 安装插件【ssh,ssh agent】
提一下:jenkins部署方式,这种节点不建议使用k8s部署,因为对应的 agents端口暴露不方便,要使用nodeport方式
- 配置端口,可以是别的未占用端口:50000
Manage Jenkins => Configure Global Security => Agents
# 添加节点
Manage Jenkins => Manage Node => New Node
- 添加node
- 配置节点信息
- 在宿主机上面启动node agent.jar包,加 & 后台运行
# 配置kubernetes节点
我这里安装的插件【Kubernetes】
Manage Jenkins => Manage nodes and clouds => Configure Clouds
- 准备证书签名请求
mkdir jenkins-cert && cd jenkins-certs
vi apiserver-csr.json
{
"CN": "k8s-apiserver",
"hosts": [],
"key": {
"algo": "rsa",
"size": 2048
},
"names": [
{
"C": "CN",
"ST": "beijing",
"L": "beijing",
"O": "system:masters",
"OU": "ops"
}
]
}
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
证书请求中的O 指定该证书的 Group 为 system:masters
而 RBAC 预定义的 ClusterRoleBinding 将 Group system:masters 与 ClusterRole cluster-admin 绑定,这就赋予了该证书具有所有集群权限 。
- 创建证书和私钥
cfssl gencert -ca=/opt/certs/ca.pem -ca-key=/opt/certs/ca-key.pem --profile=kubernetes apiserver-csr.json |cfssl-json -bare admin
- 生成pkc格式证书
openssl pkcs12 -export -out ./jenkins-admin.pfx -inkey ./admin-key.pem -in ./admin.pem -passout pass:secret123
- 配置凭证
下载 jenkins-admin.pfx
- Manage Jenkins => Configure Global Security => Agents
- Configure Clouds
Kubernetes地址 也可以使用rancher地址:https://rancher.yfklife.cn/k8s/clusters/c-l4sn5
,替换你的域名和最后的"c-l4sn5"
如果你的Jenkins是虚拟机部署,Jenkins通道可以不填写,使用默认端口
- 保存测试
运行正常