介绍DevOps、CI/CD管道和作为代码的基础结构

举报
kaliarch 发表于 2022/09/04 19:55:41 2022/09/04
【摘要】 DevOps的一些基础知识对我来说,深入了解DevOps文化和工具的感觉真的很好,因为作为一名专业人员,每一个新知识都有可能对我有所改善。在我看来,DevOps是关于集成和改进的。在集成方面,我们有DevOps的基础,它将开发团队和运营团队聚集在一起,构建一个更加高效、可靠和协作的环境,可以将其转化为更好的软件。这只有通过集成大量的工具和服务才能实现,无论是用于通信、开发、测试、部署等等,...

DevOps的一些基础知识

对我来说,深入了解DevOps文化和工具的感觉真的很好,因为作为一名专业人员,每一个新知识都有可能对我有所改善。在我看来,DevOps是关于集成和改进的。在集成方面,我们有DevOps的基础,它将开发团队和运营团队聚集在一起,构建一个更加高效、可靠和协作的环境,可以将其转化为更好的软件。这只有通过集成大量的工具和服务才能实现,无论是用于通信、开发、测试、部署等等,如果使用得当,这些工具和服务可以相互对话,并在整个过程中带来大量自动化。
在改进方面,不仅要不断寻求更快、更便宜地交付软件,还要不断寻求传播一种文化心态,在整个开发过程中改进沟通和反馈,允许更多的试验,减少浪费,优化速度、成本和交付。这种集成和持续改进的总和关注于最终客户和团队,为每个相关人员带来更多的价值。

但是DevOps的心态是如何以及为什么开始的呢?嗯,我在这个行业的时间不够长,无法讲述多年来软件开发和发布是如何工作的个人经历,但通过一些研究和阅读Phoenix项目以及现在的DevOps手册,我可以想象这是多么昂贵、耗时和无效率,对于一些组织来说,将开发人员、QA、运营和安全作为独立的领域来处理,每个领域都在等待另一个领域的混乱输出是多么昂贵、耗时和无效率。
2009年,在O’Reilly Velocity Conference上,Patrick Debois观看了John Allspaw和Paul Hammond的“每天10+部署:Flickr上的开发和运营”演讲后,他确信其他IT专业人员和项目经理对该行业处理软件开发的方式也有同样的沮丧,并在DevOps术语的起源地比利时根特组织了第一次“DevOps Days”。当然,有一个更广泛的历史背景,涉及敏捷方法学、精益制造和其他将DevOps原则结合在一起的参与者,但这里的重点是展示为什么以及如何从试图让自己的工作更好的特定专业人员离开到试图通过共享方法学、工具和服务来让每个人的生活更好的社区的一些基本知识。

CID/CD Pipelines

DevOps团队的主要活动之一是构建持续集成(CI)和持续交付(CD)流水线。这些流水线是什么?简而言之,它们是使用各种工具和服务配置的自动化步骤,这些工具和服务正在等待触发器执行并产生可能在下一步中使用的输出。
CI管道的重点是在中央存储库中合并代码,并对其进行测试,以确保其满足构建到最终用户应用程序特性中的需求。CD管道将通过测试并被批准交付的集成代码交付给市场。
为什么重要?管道带来了自动化,更好的质量保证,更多的生产部署,并增加了试验的可能性。所有这些都导致了高质量的软件交付和创新。

基础结构即代码(Iac)

拥有一种更简单的方法来管理基础设施,并在其中尽可能多地实现自动化,这也是DevOps实践者的一个关键属性。想一个人在管理多个云服务上手动提供的所有基础设施时会开始遇到问题。然而,与云服务提供之前相比,未知需求的高预付成本、获得所需的所有硬件、配置硬件和维护基础设施的各个方面的时间增加了,这并不是什么大问题。
作为代码的基础设施是管理多个云提供商的基础设施,甚至是管理单个提供商中的许多服务的一种令人惊讶的方式。将其全部作为代码允许自动化,以方便复制、更快的伸缩、减少错误和更好地控制当前环境状态。
Hashicorp的Terraform是目前主要的IaC软件。它于2014年发布,从那里许多组织开始支持它,现在有大量的提供商和模块可以作为代码构建基础设施,从部署一个生产就绪的Kubernetes集群到创建一个github存储库。

除了主要是资源供应器的Terraform之外,还有其他IaC工具,如Ansible可以用来管理启动配置,Packer可以在多个云提供商中使用相同的基本代码创建机器映像,以及许多其他工具,每个工具都有一些特殊性,可以根据上下文使它们变得有用。
如果它是代码,为什么不像对待应用程序代码那样对待它,用验证、测试、代码模式构建一个合适的CI/CD管道,并只有在所有这些都通过时才部署它呢?对我来说,这是基础设施作为代码的主要好处之一。

【版权声明】本文为华为云社区用户原创内容,未经允许不得转载,如需转载请自行联系原作者进行授权。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。