• 【软件工程之美 - 专栏笔记】36 | DevOps工程师到底要做什么事情?



    专栏信息

    1. 专栏作者:宝玉

    2. 专栏发布平台:极客时间


    主要内容

    究竟什么是 DevOps?DevOps 到底要做什么事情?


    一、传统的运维模式以及面临的挑战

    在传统的瀑布模型开发中,软件生命周期中的运行维护这部分工作通常是交给运维工程师来完成的。

    在这里插入图片描述
    早些年这种运维模式运行的很好,但随着这些年互联网发展,有两个主要的因素对传统的运维模式产生了很大挑战。

    1. 第一,服务器规模快速增长和虚拟化技术的高速发展。

      这些年技术的快速发展,大型互联网公司的服务器数量越来越庞大,而中小公司都开始往云服务上迁移,基于 Docker 这样的虚拟化技术来搭建在线服务的基础架构。

      意味着以前的手动方式或者半自动的方式难以为继,需要更多的自动化和基于容器技术或者相关工具的二次开发

    2. 第二,高频的部署发布。

      敏捷开发和持续交付的概念兴起后,更新的频率越来越高,每周甚至每天都会有若干次的更新部署。


    二、什么是 DevOps?

    DevOps 可以理解为一种开发(Development)和运维(Operations)一起紧密协作的工作方式,从而可以更快更可靠的构建、测试和发布软件。

    采用 DevOps 的方式工作的话,会带来哪些好处呢?

    1. 整个软件的构建、测试和发布过程高度自动化
    2. 信息更加透明和易于测量
    3. 培养跨职能协作的文化

    DevOps 原则:自动化、信息透明可测量、构建协作文化。

    • 看起来很难,但也不需要有压力,因为要实践 DevOps,不需要你改变开发模式,瀑布模型或者敏捷开发都可以实施
    • 不需要靠管理层推动
    • 也不一定要让开发人员去学习运维知识或者运维去学习开发知识。而是通过了解 DevOps 的核心价值,也就是跨职能之间紧密协作,更快更可靠地构建、测试和发布软件,一点一点地做出改变。

    三、DevOps 工程师到底要做什么事情?

    1. 首先,DevOps 工程师要帮助团队建立基于持续集成和持续交付工作流程。

      关于持续集成和持续交付,不仅仅是工具的使用,同时还是基于工具之上的一整套的交付工作流程。

      这是 DevOps 工程师首先要去解决的问题.

    2. 其次,要建立一套基于日志的监控报警的系统,以及故障响应的流程。

      需要能建立一套基于日志的监控报警的系统,将应用程序还有运行环境的各项数据监控起来,设置报警的阈值。

    3. 然后,要构建基于云计算和虚拟化技术的基础设施。

      虽然并非每一个软件项目都是基于云计算或虚拟化技术来搭建的,但云计算和虚拟化技术方面的技术,其实是横跨开发和运维的。

    4. 最后,要形成 DevOps 的文化。

      DevOps 最核心的本质就是工作方式和协作的文化,而这样的文化需要有人引领,一点点去形成。


    四、其他摘抄

    • DevOps 一个很重要的基础就是自动化,通过对自动化的应用,是最简单有效的打破开发和运维之间壁垒的方式。
    • 当采用 DevOps 的工作方式,信息更加透明,通过日志和工具,数据也可以被更好测量。
    • DevOps 的核心文化是不同职能工种之间的紧密协作的文化。

    总结

    DevOps 可以理解为一种开发和运维一起紧密协作的工作方式,从而可以更快更可靠地构建、测试和发布软件。DevOps 的主要原则就是自动化、信息透明可测量、构建协作文化

  • 相关阅读:
    感谢信 | 企企通赋能鲜丰水果搭建特色数字化供应链协同系统,领跑中国水果连锁品牌
    磺化-β-环糊精两亲性蒽醚聚集诱导发光微球/AIE环糊精超分子微球/氧化硅修饰AIE微球
    Java Matcher对象中 find() 与 matches() 的区别
    【Javascript】函数隐藏参数ar
    用几分钟时间了解何为优质低代码开发平台
    [watevrCTF-2019]Cookie Store
    全网没有之一的JMeter 接口测试流程详解
    基于ReAct机制的AI Agent
    Netty 5新Buffer API详解
    DNS工作原理分析
  • 原文地址:https://blog.csdn.net/mek1986/article/details/126137288