摘要

DevOps 是一系列做法和工具,可以使 IT 和软件开发团队之间的流程实现自动化。其中,随着敏捷软件开发日趋流行,持续集成 (CI) 持续交付 (CD) 已经成为该领域一个理想的解决方案。在 CI/CD 工作流中,每次集成都通过自动化构建来验证,包括编码、发布和测试,从而帮助开发者提前发现集成错误,团队也可以快速、安全、可靠地将内部软件交付到生产环境。

KubeSphere——Hospital-System自动部署实战_kubernetes

一、项目介绍

HospitalSystem: 医院管理系统

1.1 平台简介

KubeSphere——Hospital-System自动部署实战_软件开发_02

1.2 系统模块

yygh-parent
|---common                                  //通用模块
|---hospital-manage                         //医院后台[9999]   
|---model									//数据模型
|---server-gateway							//网关 [80]
|---service									//微服务层
|-------service-cmn							//公共服务[8202]
|-------service-hosp						//医院数据服务[8201]
|-------service-order						//预约下单服务[8206]
|-------service-oss							//对象存储服务[8205]
|-------service-sms							//短信服务[8204]
|-------service-statistics					//统计服务[8208]
|-------service-task						//定时服务[8207]
|-------service-user						//会员服务[8203]

====================================================================

yygh-admin									//医院管理后台[9528]
yygh-site									//挂号平台[3000]

1.3 内置功能

二、项目架构图

KubeSphere——Hospital-System自动部署实战_微服务_03

三、系统中间件的服务部署

KubeSphere——Hospital-System自动部署实战_微服务_04

四、微服务的Pipline自动部署

KubeSphere——Hospital-System自动部署实战_kubernetes_05

KubeSphere——Hospital-System自动部署实战_软件开发_06

KubeSphere——Hospital-System自动部署实战_解决方案_07

KubeSphere——Hospital-System自动部署实战_kubernetes_08

KubeSphere——Hospital-System自动部署实战_软件开发_09

修改maven让他从阿里云下载镜像

  • 使用admin登陆ks
  • 进入集群管理
  • 进入配置中心
  • 找到配置,
  • 修改这个配置。加入maven阿里云镜像加速地址

KubeSphere——Hospital-System自动部署实战_微服务_10

已经下载过的jar包,下一次流水线的启动,不会重复下载。

KubeSphere——Hospital-System自动部署实战_解决方案_11

  • 给每一个微服务准备一个 deploy.yaml(k8s的部署配置文件)
  • 传入 deploy.yaml 的位置就能部署:kubectl apply -f xxxx
  • 一定在项目里面(his,不是流水线项目),找到配置--密钥,配置一个阿里云的访问账号密码

KubeSphere——Hospital-System自动部署实战_软件开发_12

KubeSphere——Hospital-System自动部署实战_微服务_13

五、webhook

  • 1、每个项目,都有流水线文件
  • 2、每次修改完项目,手动点击运行
  • 3、希望,每次修改完项目,代码推送,流水线能自动运行

写代码并提交------> gitee ---------> 给指定的地方发请求(webhook)------> kubesphere平台感知到 -----> 自动启动流水线继续运行--->测试环境---->生产环境

KubeSphere——Hospital-System自动部署实战_软件开发_14

博文参考

面向云原生应用的容器混合云,支持 Kubernetes 多集群管理的 PaaS 容器云平台解决方案 | KubeSphere

创建您的第一个Pipeline