前言:前面写过2篇文章,介绍jenkins通过slave节点部署构建并发布应用到虚拟机中,本篇介绍k8s(k3s)环境下,部署jenkins,通过流水线脚本方式构建发布应用到k8s(k3s)集群环境中,本篇文章使用的环境是k3s+rancher2.6.3

1、jenkins环境部署(k8s or k3s)

  • 环境介绍:

    192.168.231.132 单主机独立节点,装k3s用的mysql,nginx等,装有Docker

    192.168.231.133 k3s master node节点

    192.168.231.134 k3s node节点

  • 通过rancher管理仓库,添加helm chart仓库(https://charts.jenkins.io

  • 通过“应用市场”安装jenkins,名称为:jenkinsbuild

  • 创建一个ingress,访问jenkins;映射8080端口

  • 修改hosts文件,指定域名映射(jenkins.local.com)

  • 通过域名访问http://jenkins.local.com/; jenkins安装成功

  • 查看jenkins安装日志,里面有提示命令,通过命令获取admin用户的密码

    获取jenkins用户admin的密码:

    kubectl exec --namespace jenkinsdemo -it svc/jenkinsbuild -c jenkins -- /bin/cat /run/secrets/additional/chart-admin-password && echo

    密码:yaOYPVt3yYB3AQe2F1ymzw

    可以通过命令,在k8s主机节点,映射端口,访问jenkins

    映射端口访问jenkins:

    kubectl --namespace jenkinsdemo port-forward svc/jenkinsbuild 8080:8080

  • Jenkins2.346设置中文
    Manage Jenkins -> Manage Plugins 依次点击,进入插件管理页面

    搜索 "local“ ,按照以下步骤安装 Locale 和 Localization: Chinese (Simplified) 插件

    Manage Jenkins -> Configure System 依次点击,进入系统配置页面
    在Locale -> Default Language 设置框中填入 “zh_cn” ,如果勾选了下面的复选框则表示忽略浏览器的设置,强制用户使用该语言显示,然后 点击 apply,这时再回到jenkins首页,显示语言已经修改为中文了

  • Jenkins BlueOcean插件安装

  • k8s安装jenkins方式:1.helm方式,添加jenkins仓库,更新安装;2.自己创建k8s的deployment的文件,部署jenkins;本篇不再介绍这两种方式

2、Jenkins流水线测试

  • 新建一个item,流水线项目

  • 编写流水线项目的脚本

  • 运行构建项目,报错:Waiting for next available executor

  • 管理Jenkins-》节点配置---》选择默认节点:Built-In Node

  • 配置执行者数量>0

  • 再次构建项目,成功

  • 安装docker插件,为后续流水线构建做准备

本篇先到这里,本篇介绍jenkins在k3s环境下的部署,与简单测试,下篇继续流水线构建相关的内容

jenkins流水线部署springboot应用到k8s集群(k3s+jenkins+gitee+maven+docker)(1)的更多相关文章

  1. jenkins流水线部署springboot应用到k8s集群(k3s+jenkins+gitee+maven+docker)(2)

    前言:上篇已介绍了jenkins在k3s环境部署,本篇继续上篇讲述流水线构建部署流程 1.从gitlab上拉取代码步骤 在jenkins中,新建一个凭证:Manage Jenkins -> Ma ...

  2. 使用Rancher Server部署本地多节点K8S集群

    当我第一次开始我的Kubernetes之旅时,我一直在寻找一种设置本地部署环境的方式.很多人常常会使用minikube或microk8s,这两者非常适合新手在单节点集群环境下进行操作.但当我已经了解了 ...

  3. 使用Kubeadm创建k8s集群之部署规划(三十)

    前言 上一篇我们讲述了使用Kubectl管理k8s集群,那么接下来,我们将使用kubeadm来启动k8s集群. 部署k8s集群存在一定的挑战,尤其是部署高可用的k8s集群更是颇为复杂(后续会讲).因此 ...

  4. 使用Kubeadm创建k8s集群之节点部署(三十一)

    前言 本篇部署教程将讲述k8s集群的节点(master和工作节点)部署,请先按照上一篇教程完成节点的准备.本篇教程中的操作全部使用脚本完成,并且对于某些情况(比如镜像拉取问题)还提供了多种解决方案.不 ...

  5. 企业运维实践-还不会部署高可用的kubernetes集群?使用kubeadm方式安装高可用k8s集群v1.23.7

    关注「WeiyiGeek」公众号 设为「特别关注」每天带你玩转网络安全运维.应用开发.物联网IOT学习! 希望各位看友[关注.点赞.评论.收藏.投币],助力每一个梦想. 文章目录: 0x00 前言简述 ...

  6. 从0到1搭建k8s集群系列1:安装虚拟机及docker

    前言 本系列文章记录了本人学习k8s集群搭建的过程,从k8s基本组件的安装.到部署mysql服务到k8s集群.部署web项目到k8s集群以及安装可视化界面管理工具kuboard. 因为k8s的组件安装 ...

  7. [k8s]jenkins配合kubernetes插件实现k8s集群构建的持续集成

    另一个结合harbor自动构建镜像的思路: 即code+baseimage一体的方案 - 程序员将代码提交到代码仓库gitlab - 钩子触发jenkins master启动一次构建 - jenkin ...

  8. K8S(08)交付实战-交付jenkins到k8s集群

    k8s交付实战-交付jenkins到k8s集群 目录 k8s交付实战-交付jenkins到k8s集群 1 准备jenkins镜像 1.1 下载官方镜像 1.2 修改官方镜像 1.2.1 创建目录 1. ...

  9. kubernetes实战-交付dubbo服务到k8s集群(六)使用blue ocean流水线构建dubbo-consumer服务

    我们这里的dubbo-consumer是dubbo-demo-service的消费者: 我们之前已经在jenkins配置好了流水线,只需要填写参数就行了. 由于dubbo-consumer用的gite ...

随机推荐

  1. Linux文本管理命令

    touch命令: 创建空文件:touch newfile 也可以使用重定向符(>)创建空文件: > newfile 刷新文件时间: touch 已经存在的文件 cp命令:文件的复制 选项: ...

  2. Linux操作系统(4):磁盘分区、挂载

    Outline: ① lsblk :查看所有设备挂载情况 ② df -h :查询系统整体磁盘使用情况 ③ du -h /目录 :查询指定目录的磁盘占用情况 ④ mount :查询系统中已经挂载的设备 ...

  3. git的工作原理和git项目创建及克隆

    Git基本理论(重要)三个区域Git本地有三个工作区域:工作目录(Working Directory).暂存区(Stage/Index).资源库(Repository或Git Directory).如 ...

  4. 洛谷 P1714 切蛋糕 单调队列

    这个题比较显然,要用前缀和来做.但只用前缀和是过不去的,会TLE,所以需要进行优化. 对于每个前缀和数组 b 中的元素,都可以找到以 b[i] 结尾的子段最大值 p[i],显然,最终的 ans 就是 ...

  5. day06 Socket_线程API_线程并发安全

    使用多线程实现多客户端连接服务端 流程图 服务端代码改造: package socket; import java.io.BufferedReader; import java.io.IOExcept ...

  6. MLX90640 红外热成像仪测温模块简要介绍说明

    MLX90640 红外热成像仪测温模块简要介绍说明 (1) A 型和 B 型的区别 区别主要有以下几点 视场角不同: A 型为 110*75° , B 型为 55*35° ,通俗一点讲就是 A 型是广 ...

  7. 2022-7-19 第五组 pan小堂 封装和 this

    this关键字 this关键字由来和使用: A:this:代表所在类的对象引用方法被哪个对象调用,this就代表那个对象 B:什么时候使用this呢 ? 局部变量和成员变量重名 set 和 get 方 ...

  8. 常用的函数式接口Consumer接口练习字符串拼接输出

    题目 下面的字符串数组当中有多条信息,请按照格式"姓名: XX 性别: XX"的格式将信息打印出来,要求将 打印姓名的动作为第一个Consumer接口的Lambda实例,将打印性别 ...

  9. 彻底搞懂kubernetes调度框架与插件

    调度框架 [1] 本文基于 kubernetes 1.24 进行分析 调度框架(Scheduling Framework)是Kubernetes 的调度器 kube-scheduler 设计的的可插拔 ...

  10. boot issue

    Q:生产过程中不小心把 boot文件删除了 ,或者升级kenerl时发现版本不兼容,需要回退,此时没有快照备份情况如何操作? A:boot 主要文件是内核和grub引导文件   修复方法: 1.进入救 ...