DevOps(开发运维)常用的工具

news2025/1/17 15:58:11

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

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

DevOps通常采取的方法:

  • 连续集成和连续交付或连续部署(CI/CD)工具,重点是任务自动化;
  • 支持DevOps采用的系统和工具,包括实时监控、事故管理、配置管理和协作平台;
  • 与DevOps方法同时实施的云计算、微服务和容器。

DevOps 解决什么问题?

每家公司都面临着自己的挑战,但共同的问题包括发布时间过长、软件未达到期望和IT限制业务增长。

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

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

1.DevOps工具

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

2.代码存储库

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

3.二进制存储库

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

4.CI/CD管道引擎

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

5.容器

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

6.配置管理

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

7.云环境

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

8.监控

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

9.基于云的DevOps管道

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

10.即服务模型

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

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1340380.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

科荣 AIO ReportServlet 任意文件读取漏洞复现

0x01 产品简介 科荣AIO 企业⼀体化管理解决⽅案 通过ERPERP(进销存财务)、OAOA(办公⾃动化)、CRMCRM(客⼾关系管理)、UDPUDP(⾃定义平台),集电⼦商务平台、⽀付平台、ER…

计算机组成原理复习1

概论 文章目录 概论计算机系统计算机硬件系统计算机软件系统 计算机系统的层次结构计算机系统的工作过程冯诺依曼计算机结构冯氏机的特点 现代计算机现代计算机的组成计算机硬件的主要技术指标机器字长存储容量运算速度 计算机的历史与发展 计算机系统 计算机系统硬件软件 计…

安装DataEase(Linux线上安装)修改端口

问题一:端口更改 警告本解决方法仅仅应急,如果找到了更好的方法请通知我,感谢你的理解!!! 为了让mysql与dataease的端口不发生冲突,将 MySQL 外部运行端口参数 ${DE_MYSQL_PORT} 改为新端口&am…

解决 Nginx 反向代理中的 DNS 解析问题:从挑战到突破20231228

引言 在使用 Nginx 作为反向代理服务器时,我们可能会遇到各种配置和网络问题。最近,我遇到了一个有趣的挑战:Nginx 在反向代理配置中无法解析特定的域名,导致 502 错误。这个问题的解决过程不仅揭示了 Nginx 的一个不太为人知的功…

docker学习(二十、network使用示例host、none)

文章目录 一、host应用示例总结 二、none应用示例总结 network相关内容: docker学习(十八、network介绍) docker学习(十九、network使用示例bridge) docker学习(二十、network使用示例host、none&#xff0…

Dockerfile - 基于 SpringBoot 项目自定义镜像(项目上线全过程)

目录 一、Dockerfile 自定义项目镜像 1.1、创建 SpringBoot 项目并编写 1.2、打包项目(jar) 1.3、编写 Dockerfile 文件,构建镜像 1.4、运行镜像并测试 一、Dockerfile 自定义项目镜像 1.1、创建 SpringBoot 项目并编写 a)简…

在香橙派5 Plus上搭建Gitlab

作为一个码农,一定知道Github这个最大的成人交友网站。但是Github在国内不稳定,经常拉不下来代码,也就无法推送代码。为了更方便的使用,顺便更好地了解Git工具,决定在香橙派5 Plus上搭建一个属于自己的代码仓库。 1、…

MR实战:分科汇总求月考平均分

文章目录 一、实战概述二、提出任务三、完成任务(一)准备数据1、在虚拟机上创建文本文件2、上传文件到HDFS指定目录 (二)实现步骤1、创建Maven项目2、添加相关依赖3、创建日志属性文件4、创建学生实体类5、创建科目平均分映射器类…

文件过大放不了U盘?三个方法非常简单~

文件过大放不了U盘我们可以从文件过大这个角度来解决一下这个问题,可以借助一些工具把文件压缩后,体积变小后,再放入U盘,使得u盘得到高效的利用,下面是推荐的一些好用的软件。 一、嗨格式压缩大师 是一款可以压缩多种…

群起而攻之!纽约时报和多名作者七剑合璧,联合起诉 OpenAI 和微软

《纽约时报》控告OpenAI和微软侵犯版权,声称它们未经授权使用了该报数百万篇文章,用于训练其人工智能工具,包括OpenAI的ChatGPT和微软的Bing Chat(现更名为Copilot)。此诉讼引起了一些普利策奖获奖作者和其他非小说类作…

传统零售的巨变:新零售时代催生全新商业形态和供应链关系-亿发

智慧零售解决方案涵盖了新零售的各个方面。对于传统零售业而言,对新零售的接受是一个理解和感知的过程,而并非仅仅是技术的简单叠加。新零售的发展并非仅仅是传统零售业加入互联网或跨界混搭的模式,而是一个根本性的变革过程。 在实际发展中…

第三方软件测试公司有哪些服务形式?如何收费?

由于软件企业的增多,企业更加注重软件开发,因此会将软件测试工作交由第三方软件测试公司进行。第三方软件测试公司也就是专门做软件测评的外包公司,主要是发现软件漏洞和缺陷以便公正、客观评估软件质量,再出具一份软件测试报告。…

Spring Boot 入参校验及全局异常处理

版本依赖 JDK 17 Spring Boot 3.2.0 源码地址:Gitee Spring Boot validation spring-boot-starter-validation是基于hibernate-validator的实现,在Spring Boot项目中直接导入spring-boot-starter-validation即可。 Valid 和 Validated 的区别 适用范围…

事务的简介

一、什么是事务 事务是一组数据库的操作序列,包含一个或多个sql操作命令(增删改),事务将所有的操作命令看做一个不可分割的整体,向数据库系统提交或撤销操作,所有操作要么执行要么不执行。 ●事务是一种机…

P1019 [NOIP2000 提高组] 单词接龙 刷题笔记

P1019 [NOIP2000 提高组] 单词接龙 - 洛谷 | 计算机科学教育新生态 (luogu.com.cn) 思路来自 大佬 Chardo 的个人中心 - 洛谷 | 计算机科学教育新生态 (luogu.com.cn) 匹配 &#xff1a; 将 第一个字符串末尾 和第二个字符串第一个开始匹配 如果 j<i这段走完了 flag还没…

Vue学习day_01

指令: v-html: 设置元素的innerHTML v-show和v-if: 二者都是控制元素去隐藏起来&#xff0c;但是二者的原理是不一样的&#xff0c; v-show底层的原理是在切换底层css里面的display为none v-if底层的原理是移除节点或者是创建节点&#xff0c;"成本"是比较高的…

linux 防火墙查看放行端口,追加放行端口命令

linux 查看防火墙已经放行端口列表 firewall-cmd --list-ports 运行结果如下&#xff1a; linux 追加防火墙经放行端口&#xff08;如追加443&#xff09; firewall-cmd --zonepublic --add-port443/tcp --permanent 亲测有效&#xff01;

力扣刷题记录(20)LeetCode:198、213、337

198. 打家劫舍 我们从第一个开始分析&#xff1a; dp[i]:i表示索引&#xff0c;dp表示当前索引可以拿到的最高金额 索引为0时&#xff0c;可以拿到的最高金额为1&#xff1b; 索引为1时&#xff0c;可以拿到的最高金额就是在索引[0,1]之间取&#xff0c;为2 索引为2时&…

deepin系统安装达梦数据库

deepin系统安装达梦数据库 1.下载安装包和执行可执行文件2.解压缩可执行文件3.运行安装程序 2.初始化3.达梦管理工具 deepin系统安装达梦数据库 1.下载安装包和执行可执行文件 进入deepin系统桌面, 打开终端, 输入命令uname -a 检查cpu架构,前往达梦官网下载合适的安装包, 目前…

【linux】touch的基本使用

碎碎念 刚接触linux时候的几个最基础的命令之一&#xff0c;用来创建文件。如果使用touch --help的时候会发现作者对于touch的简介&#xff1a;Update the access and modification times of each FILE to the current time.用于修改文件的访问和时间戳 带我的leader属于那种…