通过jenkins交付微处事到kubernetes(13)

pipeline理会
1、首先去安装这几个插件
Git Parameter 可以实现动态的从git中获取所有分支
Git 拉代替码
Pipeline 适才安装的pipeline,来实现这个pipeline流水线的宣布任务
Config File Provider 主要可以将kubeconfig设置文件存放在jenkins里,让这个pipeline引用这个设置文件,好比构建的slave镜像内里有kubectl,那么毗连k8s必定需要授权,直接拷贝这个呼吁必定欠好使,并且像helm -v3版本也是通过kubeconfig来毗连k8s-api来陈设的任务,这两个呼吁都是通过kubeconfig去读取的k8s,所以我们需要将这两个呼吁给他们权限来毗连k8s,所以需要筹备一个kubeconfig文件,能让这个两个东西可以读到,可是这两个呼吁都是在slave的pod中,所以我们需要利用这个插件将kubeconfig文件由jenkins来生存,然后再通过jenkins特定的语法让它拿到,让它生存到slave中,形成一个动态的文件,动态的加进去,然后helm,kubectl通过这个文件就能直接毗连k8s集群了,这样的长处主要是安详,也可以直接将这个kubeconfig文件打到镜像中,也可以,可是这样也不是很安详,别人一旦拿到这个kubeconfig文件久相当于把kubectl的权限给别人了,可以会见k8s集群了,这样就不安详了,所以我们照旧按插件的方法去安装这个,动态的放在jenkins中照旧较量好的
kubernetes 动态的去建设署理,好让k8s毗连到jenkins,可以动态的去伸缩slave节点
Extended Choice Parameter 举办对选择框插件举办扩展,可以多选,扩展参数构建,并且陈设微处事还需要多选,好比同时宣布两个微处事,三个微处事,不行能每宣布一个要点一下,这样必定是不现实的。
2、参数寄义
// 民众
def registry = "192.168.30.27" 好比镜像客栈的地点
// 项目
def project = "microservice" 项目标名称
def git_url = "http://192.168.30.28/root/ms.git" 微处事的gitlab的项目标git地点
def gateway_domain_name = "gateway.zhaocheng.com" 微处事内里有几个对外提供处事,指定域名
def portal_domain_name = "portal.zhaocheng.com" 微处事内里有几个对外提供处事,指定域名,因为不是所有的微处事都是提供域名的,所以要为需要设置的提供一个域名
// 认证
def image_pull_secret = "registry-pull-secret" 当helm去陈设应用的时候,我们需要拉取去在拉取客栈的镜像与k8s举办认证,那么这个就是在k8s中去建设好的,也就是建设k8s登录harbor信息的一个认证,一般会在yaml中界说imagePullSecrets,镜像拉取的认证
可以通过kubectl create secret docker-registry registry-pull-secret --docker-server=192.168.30.27 --docker-username=admin --docker-password=Harbor12345 --docker-email=admin@ooo.com -n ms 呼吁去建设
def harbor_registry_auth = "e5402e52-7dd0-4daf-8d21-c4aa6e47736b" 也就是拉取镜像时需要docker login登录一下才可以拉,一般私有的需要指定这个密钥
def git_auth = "a65680b4-0bf7-418f-a77e-f20778f9e737" 这个是拉取git的时候需要指定的认证需要生存一下
// ConfigFileProvider ID
def k8s_auth = "7ee65e53-a559-4c52-8b88-c968a637051e" 这就是k8s的认证,这个也就是生存在kubeconfig中
这些都是界说的民众的变量,这些变量主要是让剧本合用于一个通用性,将一些变换的值传入进去这样主要可以让项目动态的去适配了

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:https://www.heiqu.com/wsddpg.html