DevOps全流程

DevOps全流程

面试速记

DevOps 是一种融合开与运维的软件研发实践方法,规划从需求调研到开发,测试,部署等全流程,通过Jenkins 和Kubernetes 等自动化工具集成部署实现从代码编写到部署的无缝衔接,加速软件交付周期。我在实习中涉及到的工作有参与需求评审和开发排期会议,独立开发测试,并通过流水线部署与测试合作完善系统。

DevOps 是一种软件开发和运维的实践方法,是为了实现更高效、快速、可靠的软件交付。DevOps 的核心理念是融合软件开发与测试部署的流程,从而实现从代码编写到部署的无缝衔接。

主要阶段

规划

  • 需求收集 :与业务部门沟通,收集需求和反馈。-->客户提出优化需求,市场部门调研
  • 需求分析 :确定需求的可行性和优先级。-->开会探讨需求上是否合理,技术上是否可以实现
  • 制定计划 :制定项目计划、里程碑和交付时间表。-->开发,测试,部署排期

开发

  • 代码编写:开发人员根据需求编写代码。
  • 版本控制:使用 Git 等工具进行代码版本管理,确保代码的可追溯性和协作开发。

构建

  • 自动化构建:使用构建工具(如 Maven、Gradle等)将代码编译成可部署的软件包。
  • 持续集成(CI):通过自动化工具(如 Jenkins)实现代码提交后的自动构建和测试。
  • -->通过流水线部署代码到dev测试环境进行测试

测试

  • 单元/集成测试 :开发人员编写和运行单元测试,确保代码模块的正确性和测试多个模块之间的交互是否正常。-->开发人员在开发阶段就做好接口测试及模块调用测试
  • 性能测试:评估系统的性能是否满足要求。
  • 安全测试 :检查系统是否存在安全漏洞。-->测试人员对系统整体进行测试,找出开发遗漏部分

部署

  • 自动化部署:使用部署工具将软件包部署到服务器。
  • 持续部署(CD):通过自动化流程将通过测试的代码自动部署到生产环境。

运维

  • 日志管理:收集、分析和存储系统日志,便于问题排查。
  • 故障响应:快速响应和处理系统故障,确保系统的高可用性。-->出现故障通过日志记录报错迅速排查bug

反馈

  • 反馈优化:收集用户对系统的反馈,了解用户体验。根据反馈不断优化开发和运维流程。

DevOps 的关键实践:

  1. 持续集成(CI):频繁地将代码合并到主分支,并自动运行构建和测试。
  2. 持续部署(CD):自动将通过测试的代码部署到生产环境。
  3. 微服务架构:将系统拆分为多个独立的微服务,便于开发和部署。
  4. 容器化:使用容器技术(如 Docker)实现应用的快速部署和隔离。
相关推荐
萧瑟余晖2 小时前
Spring Batch核心模型与快速上手详解
java·spring·batch
szxinmai主板定制专家2 小时前
X86 工控机 vs RK3588 异构主控:AMR 控制器 BOM、散热、长期运维对比
运维·stm32·单片机·嵌入式硬件·fpga开发·am62x
缓慢更新2 小时前
AI 辅助生成单测:从接口定义到用例的流水线
java·服务器·前端·网络·数据库·人工智能
叼烟扛炮3 小时前
Linux 学习笔记(四十一):TCP 并发演进——从单进程到多线程服务器
linux·运维·服务器·网络·笔记·学习·tcp/ip
Decay__3 小时前
09_MySQL 闪回与时间点恢复 —— binlog 回放、mysqlbinlog、PITR 与误删恢复
运维·数据库·sql·mysql·架构
久曲健的测试窝3 小时前
2026软件测试工具选型指南:双模式如何化解UI脚本维护难题
运维·人工智能·科技·aigc
LMT流氓兔4 小时前
第五单元——第十六课:给书店助手加上网页界面
java·开发语言·jvm·人工智能·oracle·langchain·1024程序员节
NailiConveyor5 小时前
柔性物流方案如何适配工厂升级?自动化输送流水线定制要点
大数据·运维·自动化·制造·业界资讯
wangbing11255 小时前
平台介绍-modbus设备调试
java
Lsetea5 小时前
Certbot webroot申请SSL证书总是404:Nginx挑战目录与路径映射检查
运维·nginx·https·ssl证书·certbot