DevOps介绍
一、了解DevOps需要先了解CI和CD。CI:持续集成。CD:持续交付或持续部署。
二、DevOps是一组过程、方法和系统的统称。用于促进开发、技术运营和质量保障(QA)部门之间的沟通、协作与整合。它不是某一特定软件、工具或平台的名字。
三、在DevOps流程下,运维人员会在开发期间就介入到开发过程中,了解开发人员使用的系统架构和技术路线,从而制定适当的运维方案。而开发人员也会在运维的初期参与到系统部署中,并提供系统部署的优化建议。具体的实施就是为了促进开发与运维人员之间的沟通,增进彼此的感情。
四、DevOps相对的技术是最容易实现的,随后便是流程的指定与落地,最困难反而是程序员的思维转变(解决方案:洗脑)。
五、DevOps越来越火离不开虚拟化、容器和微服务的发展,他们的发展为DevOps提供的很好的前提条件。
(1)微服务:微服务架构下,不同工程师可以对各自负责的模块进行处理,比如开发、测试、部署、迭代。所谓微服务就是将黑盒化的产品进行拆分(解耦),从一个提供多种服务的整体,拆分为各自提供不同服务的多个个体。如下图:
(2)虚拟化:虚拟化就是把一台物理计算机虚拟成多台逻辑计算机,每个逻辑计算机里面可以运行不同的操作系统,相互不受影响,这样就可以充分利用硬件资源。
(3)容器:容器其实就是虚拟化技术的进阶。物理机的硬件资源有限,一旦拆分不合理将影响所有的拆分出来计算机(资源)。而容器技术就是拆分一部分不影响主机的资源(Docker)让我们进行使用,在拆分出来的资源上进行环境拆分,可以部署资源限制内的多套不同环境进行运行,实现环境隔离互不影响,本质就是多个相互隔离的进程。