6.《DevOps》系列K8S部署CICD流水线之K8S通过Yaml部署动态Jenkins-slave,以及Jenkins平台基于Gitlab实现SSO授权认证

架构

服务器IP 服务名称 硬件配置
192.168.1.100 k8s-master 8核、16G、120G
192.168.1.101 k8s-node1 8核、16G、120G
192.168.1.102 k8s-node2 8核、16G、120G
192.168.1.103 nfs 2核、4G、500G

操作系统:Rocky9.3

jenkins版本:2.477

原理

Jenkins Master 接到构建任务后会动态在集群中的一个工作节点上拉起一个Jenkins Slave Pod来干活, 活干完后可及时释放Pod。

Jenkins-slave优势

动态伸缩

合理的使用资源,每次运行 Job 时,会自动创建一个 Jenkins Slave,Job 完成后,Slave 自动注销 并删除容器,资源自动释放,而且 Kubernetes 会根据每个资源的使用情况,动态分配 Slave 到空 闲的节点上创建,降低出现因某节点资源利用率高,还排队等待在该节点的情况。

服务高可用

当 Jenkins Master 出现故障时,Kubernetes 会自动创建一个新的 Jenkins Master 容器,并且将 Volume 分配给新创建的容器,保证数据不丢失,从而达到集群服务高可用。

扩展性好

当 Kubernetes 集群的资源严重不足而导致 Job 排队等待时,可以很容易的添加一个 Kubernetes Node 到集群中,从而实现扩展。

一、部署Jenkins

下载yaml文件

mkdir -p /home/k8s

cd /home/k8s

wget https://xmars-devops.oss-cn-shanghai.aliyuncs.com/AliCloud/jenkins.tar.gz

tar -zxvf jenkins.tar.gz

cd jenkins/

修改jenkins-pvc.yaml

  nfs:
    server: 192.168.1.103
    path: /home/k8s_nfs_data/jekins

将server,path更改成正确的即可,记得NFS有挂载/home/k8s_nfs_data/jekins

修改jenkins-ing.yaml

1.更改域名地址

2.ingressClassName:kong更改为nginx

修改jenkins-rbac.yaml

将两个kind类型为ClusterRole,ClusterRoleBinding的apiVersion:rbac.authorization.k8s.io/v1beta1更改为apiVersion:rbac.authorization.k8s.io/v1

部署

kubectl create -f .

二、配置jenkins

在自己的电脑上可以写入hosts文件,进入这个目录C:\Windows\System32\drivers\etc,复制hosts文件到桌面,然后写入你的IP地址和域名,然后再hosts文件粘贴回去

浏览器访问jenkins

密码查询方法,也可以通过日志查询

kubectl exec -it jenkins-xxxxx -n devops -- cat /var/jenkins_home/secrets/initialAdminPassword

或者

kubectl logs jenkins-746c7cb78b-f52ls -n devops

1.把密码粘贴上去

2.选择插件来安装,点击左上角无,再点击安装

3.创建一个用户

4.实列配置是域名地址就行,然后点击保存完成

三、解决403问题

左边点击Manage Jenkins

点击Security

下滑找到跨站请求伪造保护

勾选Enable proxy compatibility

然后点击保存

参考图,不同jenkins版本,设置位置可能不一样

四、插件安装

左边

评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

洋葱_学习过程

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值