1. 首页 > 娱乐

常用的工具 开发运维 DevOps

"DevOps"是"Development"(开发)和"Operations"(运维)两个术语的组合,旨在代表公司应用开发和IT运维团队执行的任务的协作或共享方法。

DevOps描述了采用迭代软件开发、自

动化以及可编程基础设施部署和维护的过程。DevOps可以改变软件交付链、服务、工作角色、IT工具和最佳实践。

在没有等待时间、手动流程和冗长审查的情况下,DevOps项目可以从需求到实际软件的过程中更快地推进。

DevOps解决了IT专业化之间的沟通和优先级问题。传统的结构将开发和运维团队放在独立的领域中。这意味着当开发人员的代码交付功能时,他们满意了 —— 如果发布在生产环境中出现问题,就由运维团队来解决问题。

DevOps是一种思维方式,而不仅仅是一套工具。但在没有合适工具的情况下,在IT团队中进行任何操作都是困难的。DevOps从业者依赖于持续集成/持续交付(CI/CD)管道、容器和云主机。工具可以是开源的、专有的,或者是对开源技术的支持分发。

版本控制的源代码存储库使多个开发人员能够共同处理代码。开发人员 可以check out 和check in 代码,并在需要时还原到先前的代码版本。这些工具会记录对源代码所做的修改。如果没有跟踪,开发人员可能难以了解哪些更改是最近的,以及哪些代码版本可供最终用户使用。源代码管理的工具包括Git和GitHub。

源代码被编译成用于测试的二进制执行文件。二进制存储库支持版本控制的、基于对象的输出。二进制存储库的工具包括JFrog Artifactory和Nexus Repository。

CI/CD使DevOps团队能够通过在开发生命周期中自动化验证和交付应用程序来频繁地将应用程序提供给最终用户。持续集成工具初始化流程,使开发人员可以在共享存储库中创建、测试和验证代码,而无需手动工作 。持续交付通过执行生产级别的测试和配置设置来扩展这些自动步骤,以进行发布管理。持续部署更进一步,调用测试、配置和供应,以及监控和潜在的回滚能力。用于CI、CD或两者兼而有之的常见工具包括Jenkins、GitLab和CircleCI。

是在共享操作系统上运行软件的隔离运行时环境。容器提供了一种抽象,使代码能够在从开发到测试和暂存,然后到生产的不同基础设施上运行相同。Docker是最知名的容器化软件,而Microsoft提供了特定的Windows容器选项。容器编排器,如Kubernetes以及商业化的Kubernetes发行版Red Hat OpenShift和Amazon Elastic Kubernetes Service,可以自动部署、扩展和维护容器。

配置管理系统使IT能够根据脚本或模板进行软件、中间件和基础设施的配置和预配。DevOps团队可以通过配置管理工具为软件代码发布设置部署环境,并在服 务器、容器和虚拟机上执行策略。对部署环境的更改可以进行版本控制和测试,以便DevOps团队可以将基础设施作为代码进行管理。配置管理工具包括Puppet和Chef。

常同时采用云基础设施,因为它们可以自动化其部署、扩展和其他管理任务。AWS和Microsoft Azure是最常用的云服务提供商之一。许多云供应商还提供CI/CD服务。

监控工具使DevOps专业人员能够观察系统、网络和基础设施上的代码发布的性能和安全性。他们可以将监控与提供运营智能的分析工具相结合使 用。DevOps团队共同使用这些工具来分析代码更改对整体环境的影响。选择范围广泛,但包括New Relic One、Dynatrace、Prometheus、Datadog和Splunk等。

公共云提供商提供原生的DevOps工具集,可与其平台上的工作负载一起使用。一个不完整的列表包括AWS CodePipeline和CloudFormation、Azure DevOps和Pipelines,以及Google Cloud Deployment Manager。采用云的企业可以选择使用这些预先集成的服务或运行第三方工具。例如,一个企业可以使用HashiCorp Terraform或CloudFormation为其AWS工作负载创建基础设施即代码的模板。

DevOps作为服务是一种工具集的交付模型,促进了企业的软件开发团队和IT运营团队之间的协作。在这个交付模型中,提供商组装了一套工具,并处理了集成,以无缝地覆盖代码创建、交付和维护的整个过程。

本网站的文章部分内容可能来源于网络和网友发布,仅供大家学习与参考,如有侵权,请联系站长进行删除处理,不代表本网站立场,转载者并注明出处:https://jmbhsh.com/yule/36511.html

联系我们

QQ号:***

微信号:***

工作日:9:30-18:30,节假日休息