做这个实验目标是往kubernetes集群里交付dubbo服务,采用jenkins+maven+gitee实现,jenkins使用的是v2.303.1,maven使用3.6.3+jre8u91。整个项目的拓扑图如下:

主机

作用

host11

zk节点、为整个集群提供dns、nginx为k8s集群提供proxy

host12

zk节点、nginx为k8s集群提供proxy

host21

k8s-node、zk节点、etcd节点

host22

k8s-node、etcd节点

host200

harbor仓库节点、httpd为集群提供资源配置清单文件,nfs为pod提供持久化存储

[kubernetes] 交付dubbo之jenkins持续交付dubbo-server_docker

[kubernetes] 交付dubbo之jenkins持续交付dubbo-server_docker_02

​​01 在jenkins创建流水线​​

 1)新建任务

[kubernetes] 交付dubbo之jenkins持续交付dubbo-server_git_03

2)名称为dubbo-demo,选择流水线,并确定

[kubernetes] 交付dubbo之jenkins持续交付dubbo-server_docker_04

3)保留30份,并使用参数化构建过程

[kubernetes] 交付dubbo之jenkins持续交付dubbo-server_git_05

4)添加参数,这里我们一共需要添加10个参数

4.1 设置app_name 和 image_name

  • ​app_name: app名字​

参数类型:字符参数
变量名: app_name
变量的默认值:
描述:dubbo-service

Cop

[kubernetes] 交付dubbo之jenkins持续交付dubbo-server_maven_06

  • ​image_name: 镜像名字​

参数类型:字符参数
变量名: image_name
变量的默认值:
描述:app/dubbo-demo-service

4.2 设置变量 git_repo 和 git_version

  • ​git_repo: 代码的git地址,这里xxx需要替换为自己的用户名​

参数类型:字符参数
变量名: git_repo
变量的默认值:
描述:git@gitee.com:xxxxxx/dubbo-demo-service.git
  • ​git_ver: 拉取代码哪个分支​