DevOps 工具集

1.版本控制工具

GitHub:Github 被认为是世界上最大、最先进的开发平台之一。数以百万计的开发人员和公司在 GitHub 上构建、发布和维护他们的软件。它的一些显着特点是:

协作编码

自动化 / CI & CD

安全性,包括面向企业客户的附加功能

项目管理

Bitbucket:Bitbucket 是一个非常受欢迎的平台,拥有超过 1000 万注册用户。虽然它是一个托管代码的平台,但它不仅仅是代码管理。团队可以从单一平台规划项目、协作处理代码、测试和部署。它的一些特点是:

更紧密的 Jira 和 Trello 集成。

集成 CI/CD 以构建、测试和部署。

拉取请求并更有效地批准代码审查。

通过 IP 白名单和两步验证确保您的代码在云端的安全。

GitLab:它是一个用于快速软件交付的一体化 DevOps 工具。它使团队能够执行从规划到 SCM 到交付到监控和安全的所有任务。以下是它的一些特点:

单一界面、单一对话线程和单一数据存储可有效管理项目——单一事实来源。

CI/CD 可实现稳健、可扩展和端到端的自动化,从而高效地协同工作——持续一切。

用于自动化安全、代码质量和漏洞管理的内置功能以及严格的治理,您的 DevOps 速度永远不会减慢。
GitLab
GitLab基于Git,为软件开发提供版本控制、持续交付(CD)服务、部署和管道功能。由于其强大的持续交付(CD)服务,大多数用户更喜欢使用GitLab进行源代码管理。如果希望在自己的服务器上集成持续集成(CI)/持续交付(CD),GitLab是一种可行的方法,因为用户实际上可以在其服务器上托管GitLab。GitLab是免费和开源的,并提供无限数量的免费私人存储库。

GitLab还允许用户安装私有实例,还提供容器注册服务。

2. 容器管理工具

Docker: Docker 是一种轻量级工具,旨在通过集成方法简化和加速 SDLC 中的各种工作流程。docker 容器镜像是一个独立的可执行包,其中包含运行应用程序所需的一切。它的一些主要功能有助于它成为 DevOps 工具中不可或缺的一部分:

适用于各种应用的标准化包装格式。

在各种 Linux 和 Windows Server 操作系统上运行的容器运行时。

开发人员使用 Docker 进行构建、测试和协作。

Docker Hub 用于探索来自社区和经过验证的发布者的数百万张图像。

使用 Docker App 打包、执行和管理分布式应用程序。

Kubernetes:Kubernetes 是一种开源 DevOps 工具,用于自动化部署和管理容器化应用程序,可能是最流行的容器编排工具之一。将其与其他 DevOps 工具区分开来的功能包括:

更改您的应用程序或其配置并同时监控应用程序运行状况——自动推出和回滚。

它为一组 Pod 提供自己的 IP 地址和单个 DNS 名称——服务交付和负载平衡。

自动安装您选择的存储系统。

自愈能力。

Mesos:Apache Mesos 是一个用于管理计算机集群的 DevOps 工具。它是一个分布式系统内核,用于跨整个数据中心和云环境进行资源管理和调度。其特点包括:

提供原生支持以使用 Docker 和 AppC 映像启动容器。

通过可插拔的调度策略,支持云原生和遗留应用程序在同一个集群中运行。

在 Linux、OSX 和 Windows 等跨平台上运行。

轻松扩展到 10,000 个节点。
3、构建工具
构建阶段主要是为了保持打包的一致性,自动执行容易出错的活动,生成早期质量信号。目前业内比较常用的构建工具包括 Maven/Gradle、MSBuild、Rake、JFrog Artifactory、Sonatype Nexus 和 NuGet
4、测试工具

测试阶段主要是检测内部质量,建立对已部署构件的信心。目前业内常用的测试工具包括 JUnit、xUnit.net、Selenium、Jasmine 和 Cucumber

5、持续集成和部署(CI/CD)

CI 工具的存在是为了快速反馈和减少缺陷、等待。目前业务比较常用的 CI 工具包括 Jenkins、CircleCI、Travis CI、Concourse、AWS CodePipeline 和 Azure Pipelines。

Jenkins

Jenkins 是一个免费的开源自动化服务器。Jenkins 可用来自动化软件开发过程中非人类参与的工作,基于 CI 和 CD 的技术理念。这是一个基于服务器的系统,可在 servlet 容器(例如 Apache Tomcat)中运行。

CircleCI

CircleCI 是世界上最大的共享 CI/CD 平台,也是代码从构思到交付过程的中央枢纽。

作为最常用的 DevOps 工具之一,CircleCI 每天处理超过 100 万个构建,因此收集了大量关于工程团队工作方式以及代码运行方式的数据。Spotify、Coinbase、Stitch Fix 和 BuzzFeed 等公司使用 CircleCI 来提升工程团队的生产力、发布更好的产品并更快地将产品推向市场。

Travis CI

TravisCI 是一项托管 CI 服务,用于构建和测试 GitHub 上托管的软件项目。Travis CI 为私有项目提供各种付费计划,并提供了开源的免费方案。TravisPro 提供了在客户自己的硬件上定制化部署专有版本的能力。

Concourse

Concourse 是用 Go 编写的自动化系统。人们经常将它用于 CI/CD,其卖点是强大的可伸缩性,可以提供很简单或者很复杂的自动化管道。

AWS CodePipeline

AWS CodePipeline 是一项完全托管的 CD 服务,可帮助你自动化发布管道,以实现快速、可靠的应用程序和基础架构更新流程。

6、配置管理工具

Chef:Chef 是由 Erlang 和 Ruby 构建的用于自动化和配置管理的开源 DevOps 工具。它的特点是:

“Cookbooks”,它有助于以特定于域的语言进行基础设施编码。

轻松与 Amazon AWS、MS Azure、GCP 等云平台集成。

配置为代码。

Puppet: Puppet 负责以简单的方式管理和自动化您的基础设施和复杂的工作流程。此 DevOps 工具的特点是:

通过跨各种操作系统和平台提取配置详细信息,自动化和简化关键的手动任务。

当您拥有 100 台、1000 台服务器或混合环境时,或者当您必须计划扩展您的基础架构时,将所有服务器维护在某种状态变得很困难 - Puppet 可以帮助您节省时间和金钱,有效地扩展并有效地做到这一点.

Ansible:Ansible 提供简单的 IT 自动化,可以结束重复性任务,并让团队腾出时间从事更具战略性的工作。专注于两个关键用例:

配置管

编排 - Ansible 的模块库和易于扩展性,使得在不同环境中编排不同的指挥变得简单,所有这些都使用一种简单的语言。

猜你喜欢

转载自blog.csdn.net/yebichao/article/details/129459419