建设一个service-account绑定到rbac内里,rbac主要就是配置一些权限让jenkins会见到k8s,service-connout主要是让pod会见到apiserver,它去apiserver调治建设pod
这是我jenkins的地点,假如警惕的需要将id_rsa.pub给我
deployment参数详解:
主要来陈设jenkins的容器的设置
查察建设的storage class
[root@k8s-master1 jenkins]# kubectl get sc NAME PROVISIONER AGE managed-nfs-storage fuseim.pri/ifs 22hservice参数:
这里主要就是利用nodeport去开放一个端口,别的一般出产情况都利用ingress,ingress需要关联service,还要利用nginx做反向署理,将这个域名通过slb宣布出去
[root@k8s-master1 jenkins]# kubectl apply -f .
四、jenkins pipeline及参数化构建
jenkins pipeline是一套插件,支持在jenkins中实现集成和一连交付管道;
pipeline通过特定语法对简朴到巨大的传输管道举办建模;
声明式:遵循与Groovy沟通语法。pipeline{}
剧本式:支持Groovy大部门成果,也长短常表达和机动的东西。node{}
*jenkins pipeline的界说被写入一个文本文件,称为jenkinsfile。
去Manage jenkins去安装插件,找到manage plugins ,点击Available检索pipeline,举办安装,安装后选择install without restart
此刻去建设一个流水线举办测试一下
陈设完之后可以利用log查察登录的暗码
一般最好进去的时候不安装插件,第一默认利用的海外的源,下载插件的时候很慢,我们需要做做一些优化
先建设一个test的pipeline的语法流水线,熟悉一下怎么宣布任务
在这里就可以看到语法的名目,这里分为两种,以pipeline开头的也啼声明式语法,主要遵循的Groovy的沟通语法来实现的pipeline {}
这个也是较量主流的方法。
测试一个hello的语法,默认提供的pipeline,举办利用
直接build,这个就能构建
当我们构建完成后,这里会显示一个执行的步调显示一个详细的内容,可以看到jenkins的事情目次,默认传统陈设jenkins的目次为/root/.jenkins下,而作为在k8s陈设jenkins需要思量数据的耐久化了,因为pod碰着不确定的因素举办重启之后,那么这个pod的数据就会丢失,所以针对这个问题,我们就需要将这个pod的事情目次挂载到耐久卷上,这样的话,纵然pod重启飘移到其他的节点也能读取到相应的数据了。
可以看到k8s的耐久化目次是在这个jobs目次下,将我们构建的内容和数据都放在这里了。 [root@k8s-node3 ~]# ll /ifi/kubernetes/default-jenkins-home-pvc-0d67f7f5-2b31-4dc8-aee2-5e7b9e0e7e19/jobs/test/ 总用量 8 drwxr-xr-x 3 1000 1000 50 1月 13 11:36 builds -rw-r--r-- 1 1000 1000 1021 1月 13 11:36 config.xml -rw-r--r-- 1 1000 1000 2 1月 13 11:36 nextBuildNumber