接管新kubernetes集群,把应用发布到新环境

Summary
  • 介绍如何新增kubernetes环境,并且把环境分配给指定项目
  • 介绍如何新增流水线,并且通过流水线把特定分支的代码发布到指定的环境
  • 介绍集成环境与正式环境的区别,以及演示上线前测试的镜像同步过程

接管新kubernetes集群,把应用发布到新环境

任务演示视频

  • 演示新增uat和prod两个kubernetes环境,并把应用通过流水线先发布到uat环境进行上线前测试,然后再发布到prod环境进行正式发布的过程

新增并分配环境

  • 新增两个kubernetes环境:

    • uat环境(集成环境): 用于生产上线前测试用途,上线前测试就是指发布到正式环境之前,先保证集成环境的所有微服务与正式环境的所有微服务版本完全一致来进行测试,测试通过后再发布到正式环境。
    • prod环境(正式环境): 用于应用的生产发布用途,在集成环境完成测试后再发布到正式环境。
  • 关于集成环境正式环境参见: 正式环境通过镜像同步方式进行上线前测试

新增流水线,并发布到新环境

  • 新增一条release流水线,把流水线的集成环境设置为uat环境,正式环境设置为prod环境。

    • 新增release流水线将会自动在代码仓库中创建release分支
    • 修改release分支的代码,并推送到代码仓库,自动触发release流水线
  • 关于分支、流水线与环境的关系参见: 分支流水线环境的关系

上线前测试与正式发布过程

  • release流水线应用发布执行过程

    1. 获取prod生产环境除tp1-new-demo微服务之外的模块镜像,更新uat环境中对应的模块镜像,来完成镜像同步操作
    2. 在uat环境发布tp1-new-demo的新版本微服务,此时uat环境中所有微服务的版本将会跟prod环境将要发布的微服务版本完全一致
    3. 流水线弹出确认要发布到正式环境的提示,在完成uat环境的上线前测试之后,手工点击确认来发布到prod环境
    4. tp1-new-demo的新版本微服务发布到prod环境
  • 关于镜像同步原理可以参见: 正式环境通过镜像同步方式进行上线前测试