美文网首页
2019-10-18

2019-10-18

作者: 阿沐木 | 来源:发表于2019-12-26 09:13 被阅读0次

一、Devops整合gitlab 进行持续集成
gitlab CI已经集成到了git lab中,只需要在项目中添加一个gitlab-ci.yml文件即可进行持续集成,
1、相关概念
Pipeline
一次 Pipeline 其实相当于一次构建任务,里面可以包含多个流程,如安装依赖、运行测试、编译、部署测试服务器、部署生产服务器等流程。 任何提交或者 Merge Request 的合并都可以触发 Pipeline,如下图所示:

+------------------+           +----------------+
|                  |  trigger  |                |
|   Commit / MR    +---------->+    Pipeline    |
|                  |           |                |
+------------------+           +----------------+

Stages
Stages 表示构建阶段,说白了就是上面提到的流程。 我们可以在一次 Pipeline 中定义多个 Stages,这些 Stages 会有以下特点:
所有 Stages 会按照顺序运行,即当一个 Stage 完成后,下一个 Stage 才会开始
只有当所有 Stages 完成后,该构建任务 (Pipeline) 才会成功
如果任何一个 Stage 失败,那么后面的 Stages 不会执行,该构建任务 (Pipeline) 失败
因此,Stages 和 Pipeline 的关系就是:

+--------------------------------------------------------+
|                                                        |
|  Pipeline                                              |
|                                                        |
|  +-----------+     +------------+      +------------+  |
|  |  Stage 1  |---->|   Stage 2  |----->|   Stage 3  |  |
|  +-----------+     +------------+      +------------+  |
|                                                        |
+--------------------------------------------------------+

Jobs
Jobs 表示构建工作,表示某个 Stage 里面执行的工作。 我们可以在 Stages 里面定义多个 Jobs,这些 Jobs 会有以下特点:
相同 Stage 中的 Jobs 会并行执行
相同 Stage 中的 Jobs 都执行成功时,该 Stage 才会成功
如果任何一个 Job 失败,那么该 Stage 失败,即该构建任务 (Pipeline) 失败
所以,Jobs 和 Stage 的关系图就是:

+------------------------------------------+
|                                          |
|  Stage 1                                 |
|                                          |
|  +---------+  +---------+  +---------+   |
|  |  Job 1  |  |  Job 2  |  |  Job 3  |   |
|  +---------+  +---------+  +---------+   |
|                                          |
+------------------------------------------+

二、Devops-Service 使用Helm 进行微服务应用打包
Helm 使用称为 chart 的包装格式。chart 是描述相关的一组 Kubernetes 资源的文件集合。单个 chart 可能用于部署简单的东西,比如 memcached pod,或者一些复杂的东西,比如完整的具有 HTTP 服务,数据库,缓存等的 Web 应用程序堆栈。
chart 通过创建为特定目录树的文件,将它们打包到版本化的压缩包,然后进行部署。

三、整体流程

CI流程.png

相关文章

  • ES 故障

    2019-10-18 primary shard lost unassigned_info "can_alloca...

  • B Tree

    2019-10-18 https://leetcode-cn.com/tag/dynamic-programmin...

  • ES uasge

    2019-10-18 nested https://blog.csdn.net/laoyang360/articl...

  • Druid share

    2019-10-18 Druid share overloadtask dispatch/assign只在启动时l...

  • note

    2019-10-18 NLP 提升树 xgboot lightgbm sklearn->gbdt 添加正则 防止过...

  • 10月18日

    2019-10-18 毛雅亭 字数 484 · 阅读 14 2019-09-25 08:27 ...

  • 2019-10-21

    10.18 幸幸_b606 0.096 · 字数 77 · 阅读 10 2019-10-18 08:19 5:00...

  • 2019-10-20

    2019-10-18 朋友 我们认识许多人,有的点头之交,有的偶尔联系,有的常常见...

  • 和舒服的人在一起,就是最好的养生

    媒体:方圆杂志 2019-10-18 12:01 点击查看短片:恋人必看的温情爱情短片《love is》 找个相处...

  • Snail的ScalersTalk第五轮新概念朗读持续力训练Da

    • 标题: Snail的ScalersTalk第五轮新概念朗读持续力训练Day8 2019-10-18 • 正文...

网友评论

      本文标题:2019-10-18

      本文链接:https://www.haomeiwen.com/subject/nvwimctx.html