CI/CD流程的监控、设计与管理
立即解锁
发布时间: 2025-08-24 02:17:24 阅读量: 2 订阅数: 6 

### CI/CD 流程的监控、设计与管理
#### 1. 监控需求
监控是收集数据以识别、测量、验证、可视化并针对以下方面发出警报的过程:
- 可用性
- 资源使用/容量
- 性能
- 安全漏洞
- 事件(过期事件、管道事件、系统事件等)
监控工具会针对异常事件生成警报,帮助开发人员解决问题。用于监控 CI/CD 管道的工具应具备以下灵活性:
- 监控 CI/CD 过程的关键绩效指标(KPI)
- 在(自定义)仪表板上可视化趋势
- 通过设置上下阈值来定义 KPI 跟踪
- 当 KPI 趋势超过或低于预定义阈值时发出警报
- 对 ALM 平台/集成基础设施进行系统监控,验证 CPU 使用情况、存储使用情况等
##### 1.1 监控 KPI 的要求
定义 KPI 是一回事,检索指标、使其可视化并监控 KPI 则是另一回事。监控工具必须足够灵活,能够以自定义的时间范围(如一个月、一周或一天)可视化 KPI。通过定义阈值来确定 KPI 是否达到临界或不理想状态。时间序列数据库与交互式分析和监控工具的组合是实现这一目标的理想选择,例如 InfluxDB 和 Grafana 的组合。
##### 1.2 持续监控的要求
监控管道的系统必须始终提供当前状况的状态。即时反馈同样适用于监控。信息反馈可以通过两种方式进行:一种是基于拉取的方式,使用自定义仪表板可视化 KPI;另一种是基于推送的方式,通过生成警报主动通知团队趋势突破情况。
##### 1.3 管理基础设施组件生命周期的管道要求
基础设施并非静态配置,它由具有特定生命周期的各种组件组成,例如需要打补丁的 PaaS/IaaS 服务或需要轮换的机密信息。证书管理就是一个具体的例子。如果证书管理没有完全自动化,通常会很繁琐。某些系统会使用大量证书,这些证书的过期时间各不相同。团队必须清楚了解每个证书的过期时间,因此这一过程应该自动化。可以通过预定的管道检查即将过期的证书,除了通知团队证书过期外,管道甚至可以自动请求并安装新证书。
##### 1.4 监控 ALM 平台/集成服务器的要求
监控管道涉及使用指标来确定 KPI,并判断管道的执行是否正常。然而,还需要监控管道运行的基础设施。检查 CPU 使用情况是否良好、磁盘空间是否充足,或者验证与外部系统的连接是否正常,这些都是典型的监控方面。可以使用 Splunk 等工具来监控集成基础设施。
#### 2. 可持续性要求
可持续计算是一种新兴趋势,专注于减少信息技术行业产生的碳足迹。全球比特币网络目前的年能源消耗约为 142 TWh,大致相当于纽约州一年的电力消耗。不仅比特币网络的二氧化碳足迹巨大,人工智能、大数据和其他计算密集型过程等趋势也对环境产生了重大影响。
可持续计算在 IT 系统的架构设计、实施和运营中成为一个重要因素,包括持续集成和持续交付管道。
##### 2.1 定义可持续性目标
优化管道处理过程,使二氧化碳足迹较低,同时仍能提供所需的功能。团队必须认识到,例如旧硬件和未充分利用的服务器容量在能源消耗方面并非最优,执行一次不必要的管道运行都是多余的。建议添加可持续性要求,因为可持续计算将持续存在。
#### 3. 治理要求
治理涉及在 CI/CD 过程中管理组织和团队。
##### 3.1 让整个团队参与 CI/CD 实施
避免陷入只让一两个人负责 CI/CD 的“陷阱”。相反,鼓励所有团队成员做出贡献。让团队中的每个人承担一个小的用户故事,以激发他们对管道持续贡献的积极性。
##### 3.2 衡量团队的 CI/CD 成熟度
不同的 DevOps 团队在 CI/CD 方面的成熟度水平不同。持续交付成熟度模型有助于确定团队在各个主题上的得分。有许多可用的模型可用于衡量团队的 CI/CD 成熟度,这种评估通常以问卷的形式进行。每年对团队进行评估是一种良好的实践。
##### 3.3 确定最合适的成熟度水平
开始进行 CI/CD 和管道开发的团队必须明确自己的目标。持续交付成熟度模型也可以帮助确定团队想要达到的成熟度水平。在开始时进行这一评估,并创建一个包含 CI/CD 里程碑的路线图。
##### 3.4 衡量业务组织中的 CI/CD
有时,公司的组织方式可能会对 CI/CD 产生抑制作用。流程和支持部门可能尚未为 CI/CD 做好准备,或者 DevOps 团队的水平与特定的 CI/CD 目标不匹配。评估团队和整个组织有助于了解组织的 CI/CD 成熟度水平。应定期进行这种评估,以验证成熟度的变化,从而在 CI/CD 迁移过程中进行调整。
#### 4. BPMN 2.0 元素概述
| BPMN 元素 | BPMN 名称 | 描述 |
| --- | --- | --- |
| 开始事件 | 开始事件 | 启动流程。在 BPMN 模型中使用开始事件是可选的。 |
| 结束事件 | 结束事件 | 结束流程。在 BPMN 模型中使用结束事件是可选的。 |
| 错误结束事件 | 错误结束事件 | 以错误结束流程。 |
| 消息中间捕获事件 | 消息中间捕获事件 | 作为启动任务的触发器。例如,用于识别启动管道的触发器。 |
| 定时器中间捕获事件 | 定时器
0
0
复制全文
相关推荐










