努力挣扎的生活 努力挣扎的生活
  • 前端文章

    • JavaScript
  • 学习笔记

    • 《JavaScript教程》
    • 《JavaScript高级程序设计》
    • 《ES6 教程》
    • 《Vue》
    • 《React》
    • 《TypeScript 从零实现 axios》
    • 《Git》
    • TypeScript
    • JS设计模式总结
  • 运维基础
  • 监控
  • 日志系统
  • gitlab安装
  • jenkins安装和管理
  • Jenkins工具集成
  • pipeline流水线
  • Docker
  • Kubernetes
  • Nexus
  • Rancher
  • Prometheus
  • ELK(EFK)
  • 虚拟化
  • Mysql
  • PostgreSQL
  • Redis
  • MongoDB
  • clickhouse
关于
  • 分类
  • 标签
  • 归档
  • 收藏
  • 更多
GitHub (opens new window)

yangfk

瑟瑟发抖的小运维
  • 前端文章

    • JavaScript
  • 学习笔记

    • 《JavaScript教程》
    • 《JavaScript高级程序设计》
    • 《ES6 教程》
    • 《Vue》
    • 《React》
    • 《TypeScript 从零实现 axios》
    • 《Git》
    • TypeScript
    • JS设计模式总结
  • 运维基础
  • 监控
  • 日志系统
  • gitlab安装
  • jenkins安装和管理
  • Jenkins工具集成
  • pipeline流水线
  • Docker
  • Kubernetes
  • Nexus
  • Rancher
  • Prometheus
  • ELK(EFK)
  • 虚拟化
  • Mysql
  • PostgreSQL
  • Redis
  • MongoDB
  • clickhouse
关于
  • 分类
  • 标签
  • 归档
  • 收藏
  • 更多
GitHub (opens new window)
  • Gitlab安装与仓库管理

  • Jenkins管理

    • jenkins安装
    • Jenkins系统管理
      • 配置共享仓库
      • 全局工具
      • 插件管理
      • 节点管理
        • 配置node节点
        • 添加节点
        • 配置kubernetes节点
    • Jenkins项目管理
    • Jenkins用户管理
  • jenkins工具集成

  • pipeline流水线学习

  • GitHub技巧

  • 扩展

//
  • DevOps
  • Jenkins管理
yangfk
2021-08-25

Jenkins系统管理

//

# 配置共享仓库

Manage Jenkins => Configure System => Global Pipeline Libraries

在Jenkins中使用Groovy语法,共享库中存储的每个文件都是一个个groovy的类文件,每个文件(类)中包含一个或多个方法。每个方法包含groovy语句块,当代码数量增加,我们可以将代码打包成模块,然后再类似import的方式使用此模块中的方法。

  • 配置共享仓库地址

jenkins_sharable1.jpg

# 全局工具

Manage Jenkins => Global Tool Configuration

这里主要是用来配置node节点的工具,比如jdk,mvn,docker 等一下工具,由于我这里用的是kubernetes做的运算节点

这里的配置用不到,配置也是很简单的,一般是自己安装环境,而不是使用自带的

jdk (opens new window)

mvn (opens new window)

docker (opens new window)

# 插件管理

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
1
2
3

jenkins_plugin.jpg

  • 安装常见的插件
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
1
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

jenkins_targetport.jpg

# 添加节点

Manage Jenkins => Manage Node => New Node

  • 添加node

jenkins_node.jpg

  • 配置节点信息

jenkins_node.jpg

jenkins_node.jpg

  • 在宿主机上面启动node agent.jar包,加 & 后台运行

jenkins_node.jpg

# 配置kubernetes节点

cfssl工具安装

K8s 部署Jenkins

我这里安装的插件【Kubernetes】

Manage Jenkins => Manage nodes and clouds => Configure Clouds

jenkins_nodes1.jpg

  • 准备证书签名请求

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"
        }
    ]
}
1
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

jenkins_secret.jpg

  • Manage Jenkins => Configure Global Security => Agents

jenkins_targetport.jpg

  • Configure Clouds

jenkins_secret.jpg jenkins_secret.jpg

Kubernetes地址 也可以使用rancher地址:https://rancher.yfklife.cn/k8s/clusters/c-l4sn5 ,替换你的域名和最后的"c-l4sn5"

如果你的Jenkins是虚拟机部署,Jenkins通道可以不填写,使用默认端口

jenkins_secret.jpg

  • 保存测试

jenkins_secret.jpg

运行正常

jenkins_secret.jpg

//
如果此文章对您有帮助,点击 -->> 请博主喝咖啡 (opens new window)
上次更新: 2023/05/25, 16:16:09
jenkins安装
Jenkins项目管理

← jenkins安装 Jenkins项目管理→

最近更新
01
Linux Polkit 权限提升漏洞(CVE-2021-4034)
03-28
02
postgreSQL维护
03-17
03
trivy系统漏洞扫描
02-25
更多文章>
Theme by Vdoing | Copyright © 2019-2025 yangfk | 湘ICP备2021014415号-1
  • 跟随系统
  • 浅色模式
  • 深色模式
  • 阅读模式
×
//