3W2H 解说DevOps

简介: 3W2H 解说DevOps

3W2H 解说DevOps

一、什么是DevOps

DevOps是Development和Operations两个词组合,是一组过程、方法与系统的统称,用于促进开发(技术研发部)、技术运营和质量保障(QA)部门之间的沟通、协作与整合。它是一种重视”软件开发人员(Dev)”和“IT运维技术人员(Ops)”之间沟通合作的文化、运动或惯例。透过自动化“软件交付”和“架构变更”的流程,来使得构建、测试、发布软件能够更加地快捷、频繁和可靠。它的出现是由于软件行业日益清晰地认识到:为了按时交付软件产品和服务,开发和运营工作必须紧密合作。

通过DevOps能构建一个自动化流程,使之更加快捷、频繁和可靠的完成一个IT从开发到运维的工作流。以IT自动化及其持续集成(CI)、持续部署(CD)为基础、来优化开发、测试、系统运维等所有环节。

二、WHY 为什么有DevOps

一个软件从立项到完成交付要经历,规划、设计、编码、测试、发布部署和运维等阶段。

一个简单的项目项目,一个程序员就能完成所有的阶段;随着软件产业的日益发展壮大,软件的规模也在逐渐变得庞大。软件的复杂度不断攀升,出现了精细化分工。出现了需求工程师、软件工程师、原型设计师、软件测试工程师及其软件运维工程师等。

随着项目复杂度增加,原先采用的瀑布模型已经不能满足客户的需求,一个团队并不能完成整个项目生命周期,需要开发团队、部署团队、运维团队协作完成;只能分功能、分时小步交付。就出现敏捷开发及CI/CD开发的方式。

工业软件复杂度提供,出现对交付质量更高的要求,为了提升质量和软件的可靠性出现DevOps,DevOps不时简单把开发工程师和测试工程师和运维工程师三者分开,而是通过流程更好的融合一起。

三、WHEN DevOps什么阶段更好的引入

DevOps的引入能对产品交付、测试、功能开发和维护起到意义深远的影响。在缺乏DevOps能力的组织中,开发与运营之间存在着信息“鸿沟”──比如运营人员要求更好的可靠性和安全性,开发人员则希望基础设施响应更快,而业务用户的需求则是更快地将更多的特性发布给最终用户使用。

DevOps经常被描述为“开发团队与运维团队之间更具协作性、更高效的关系”。由于团队间协作关系的改善,整个组织的效率因此得到提升,伴随频繁变化而来的生产环境的风险也能得到降低。

DevOps有诸多优点,无论中小的团队还是大型团队,应该越早引入对团队的开发越有利。甚至开发人员应该在自己的电脑上安装简化版的DevOps的工具,作者本人就在开发环境中用Windows Docker 完成开发环境的搭建,在Docker上搭建Msql、Nginx等,并完成负载均衡和高可以用实验。

四、HOW 如何使用DevOps

1.DevOps常用的工具

  • 项目管理工具(PM) :Jira、Wookteam、Zendao、Tapd、Bugzilla等
  • 代码管理工具 :Gitlab、GitHub、Gitee
  • 持续集成CI(Continuous Integration):Gitlab CI
  • 持续交付CD (Continuous Delivery):Gitlab CD
  • 镜像仓库: VMware Harbor,私服nexus
  • 容器:Docker
  • 编排:K8S
  • 服务治理:Consul
  • 系统监控工具:Prometheus、Zabbix、Observium Community
  • 自动发布工具:Jenkins

2.怎么选择工具
DevOps工具较多,选择适合当前企业是最恰当。下面以JAVA开发项目组为例:
1). 代码管理工具: GitHub
2). 构建工具:maven、Ant
3). 自动部署: Forever
4). 持续集成(CI):jenkins2.0及其Pipeline插件
5).容器: Docker
6). API测试工具 : JMeter、Postman 、SoapUI
**7). Web服务器:**Apache、Nginx、IIS

3.DevOps如何落地

1)、环境管理 一切皆代码。基础设施即代码。就是用一种描述性的语言,通过文本管理环境配置,并且自动化完成环境配置的方式。

2)、低风险的发布手段

  • 蓝绿部署
  • 灰度发布
  • 暗部署

五、HOW TO CHANGE(DevOps带来什么价值)

  • 对客户的价值:响应更快
    DevOps提升版本发布速度,发布周期用天衡量,对客户来说需求的响应速度更快。
  • 对产品的价值:提升质量
    每次减少发布范围,降低出错的概率,提升质量;出现问题,可以及时响应;通过回退,或者快速修复,提升产品质量。
  • 对团队的价值:激活组织,简化管理,提升效能
    通过合理的拆解,降低耦合度,通过职责明确提高团队积极性;减少吃大食堂,相互等待,上下文切换导致的效能降低。对团队同学 ,可以快速成长,承担责任也有很大帮助;打通开发、运维边界,减少上下文切换。另外通过合理的微服务拆分,单个任务的难度变低;对管理者可以释放低效的组织协同工作。

目录
相关文章
|
6月前
|
运维 监控 Devops
从零到一,云效DevOps带你走进自动化运维的奇妙世界
【6月更文挑战第11天】云效DevOps是阿里云的一站式研发协同平台,融合代码管理、自动化构建、持续集成/部署、自动化测试和监控告警,助力企业提升开发效率和应用质量。通过自动化运维,它能解决人工运维的低效、高错率问题,实现应用的自动部署和监控,减少人工干预。示例展示了使用Maven的自动化构建流程。云效DevOps还支持自动化测试和监控告警,以确保应用稳定性和快速问题响应。总的来说,云效DevOps为企业带来了高效、可靠的自动化运维新体验。
108 2
|
6月前
|
运维 监控 Devops
揭秘云效DevOps背后的那些不为人知的故事
【6月更文挑战第11天】云效DevOps,源于工程师对传统开发运维模式的反思,旨在通过自动化、智能化提升效率,解决效率低、沟通难、质量不稳定的问题。技术创新包括自动化构建、持续集成和全面监控告警。示例代码展示了自动化构建过程。用户反馈良好,助力企业实现高效开发运维,赢得市场竞争力。云效DevOps将持续为企业数字化转型贡献力量。
53 3
|
6月前
|
运维 监控 Devops
云效DevOps:不仅仅是工具,更是思维方式的转变
【6月更文挑战第11天】云效DevOps是软件行业的 game changer,超越技术工具层面,推动协作、自动化和持续改进的思维转型。它连接开发、测试、运维,强化团队协作,通过自动化提升效率和准确性,减少人为错误。示例展示了自动化构建过程,强调每次迭代都是改进机会,促进项目持续优化和竞争力提升。
183 3
|
7月前
|
监控 Devops 机器人
必须了解的DevOps和SRE工具合集!
随着DevOps和SRE的不断发展,出现了新一代工具。本文将详细研究2024年最具潜力的工具,它们正在改善持续集成和交付、监控与可观察性、基础设施/应用程序平台方面的未来。
|
敏捷开发 架构师 Devops
开放下载!《阿里巴巴 DevOps 实践手册》
覆盖 DevOps 演进史、核心理念与阿里巴巴 DevOps 最佳实践的全方位解析手册,揭开阿里巴巴高效研发的秘密!
59808 1
开放下载!《阿里巴巴 DevOps 实践手册》
|
Devops 持续交付
《阿里云产品手册2022-2023 版》——DevOps 持续交付
《阿里云产品手册2022-2023 版》——DevOps 持续交付
318 0
|
Devops
《阿里巴巴DevOps 最佳实践手册》下载
覆盖 DevOps 演进史、核心理念与阿里巴巴 DevOps 最佳实践的全方位解析手册,揭开阿里巴巴高效研发的秘密!
134 0
《阿里巴巴DevOps 最佳实践手册》下载
|
Devops
|
存储 监控 Kubernetes
2021年25佳DevOps工具, 你用了几个
2021年25佳DevOps工具, 你用了几个
365 0
2021年25佳DevOps工具, 你用了几个
|
运维 监控 Devops
我眼中的DevOps
DevOps 是由开发(developments)和运维(operations)两个单词组成,可以看做是开发、测试和运维之间的一个交集,通过一些列固化的流程来使得整个项目的开发周期变得更便捷和可靠。
我眼中的DevOps