jenkins 结合 rancher 部署 k8s 服务

本文介绍如何通过Rancher和Jenkins集成来改进K8s集群的服务部署流程。主要内容包括:生成Rancher API Token、安装Rancher CLI、安装kubectl客户端、配置Jenkins、创建Jenkins项目并实现自动化构建。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

公司测试环境使用了 rancher 来管理 k8s 集群,项目管理使用的是 rancher 的流水线,提交代码到gitlab上面会自动触发构建,但是使用了一段时间后发现还是有很多问题,

1.性能不好,失败率很高

2.自定义构建步骤很麻烦

3.速度很慢

感觉rancher 流水线不够灵活,所以在尝试结合jenkins 来部署 rancher 上面的服务。感觉比rancher 流水线要好不少。这里简单介绍一下.

为了方便,rancher jenkins 是在虚拟机中创建的,代码仓库用的是github,镜像仓库用的dockerhub

 

 

1. 生成rancher api token

把 Bearer Token: 保存下来

2. 安装rancher-cli

使用上一步骤创建的token 在jenkins 服务器上登录rancher

wget https://releases.rancher.com/cli2/v2.2.0/rancher-linux-amd64-v2.2.0.tar.gz
tar xf rancher-linux-amd64-v2.2.0.tar.gz
mv rancher-v2.2.0/rancher /usr/bin/rancher
rm -rf rancher-v2.2.0/


rancher login https://rancherIp/v3 --token BearerToken

 

3.安装kubectl client

远程下载

curl -LO https://storage.googleapis.com/kubernetes-release/release/v1.15.0/bin/linux/amd64/kubectl

或者百度云下载
链接:https://pan.baidu.com/s/1z73rbbYTjqpGnoJwDqRzZw
提取码:n3s9

chmod +x ./kubectl
sudo mv ./kubectl /usr/local/bin/kubectl
kubectl version

测试是否可以正常使用

[root@localhost software]# rancher kubectl get node
NAME        STATUS    ROLES                      AGE       VERSION
localhost   Ready     controlplane,etcd,worker   6d1h      v1.17.14

 

4.安装jenkins

jenkins实战1-jenkins+maven+git构建项目

 

5 使用jenkins 创建一个项目mytest

代码是 
https://github.com/yangzheng0/mytest.git
构建脚本 

version=`date +%Y%m%d%H%M%S`
docker build -t yangzheng123/mytest:$version .
docker push yangzheng123/mytest:$version
docker rmi yangzheng123/mytest:$version

rancher kubectl set image deployment/mytest mytest=yangzheng123/mytest:$version -n default

脚本步骤说明

先构建镜像,然后推送到dockerhub,再使用 rancher kubectl 命令替换k8s集群中的服务的镜像,就可以自动构建服务了。

6 rancher 创建一个服务 mytest  

这里的镜像地址是 https://hub.docker.com/repository/docker/yangzheng123/mytest

docker 镜像也可以写成自己仓库的镜像

建好后测试一下

rancher kubectl get deployment/mytest  -n default  -o yaml

7,jenkins 构建服务

服务自动构建中

访问 ip:port/mytest/
构建成功

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值