生活不止有苟且,还有N个免费DevOps开源工具

简介:

你喜欢免费的东西吗?获得开发者社区支持的自动化,开源的工具是大家梦寐以求的。这里列举了 N多款最棒的开源工具,可以帮助你很好的实行 DevOps。对的,生活不止有眼前的苟且,还有诗和远方的田野,当然,还有免费的DevOps开源工具。

screenshot

标题一:开发工具

1.版本控制系统 Git

Git是一个开源的分布式版本控制系统,用以有效、高速的处理从很小到非常大的项目版本管理。

2.代码托管平台 GitLab

GitLab是一个利用Ruby on Rails开发的开源应用程序,实现一个自托管的Git项目仓库,可通过Web界面进行访问公开的或者私人项目。

3.代码评审工具 Gerrit

Gerrit是一个免费、开放源代码的代码审查软件,使用网页界面。利用网页浏览器,同一个团队的软件程序员,可以相互审阅彼此修改后的程序代码,决定是否能够提交,退回或者继续修改。它使用Git作为底层版本控制系统。

screenshot

二:自动化构建和测试

1.Apache Ant

Apache Ant是一个将软件编译、测试、部署等步骤联系在一起加以自动化的一个工具,大多用于Java环境中的软件开发。

2.Maven

Maven 除了以程序构建能力为特色之外,还提供 Ant 所缺少的高级项目管理工具。由于 Maven 的缺省构建规则有较高的可重用性,所以常常用两三行 Maven 构建脚本就可以构建简单的项目,而使用 Ant 则需要十几行。事实上,由于 Maven 的面向项目的方法,许多 Apache Jakarta 项目现在使用 Maven,而且公司项目采用 Maven 的比例在持续增长。

3.Selenium (SeleniumHQ)

ThoughtWorks公司的一个集成测试的强大工具。

screenshot

三:持续集成&交付

1.Jenkins

Jenkins 的前身是 Hudson,它是一个可扩展的持续集成引擎。

2.Capistrano

Capistrano 是一个用来并行的在多台机器上执行相同命令的工具,使用用来安装一整批机器。它最初是被开发用来发布 Rails 应用的。

四:部署工具

(一)容器平台

1.Docker

screenshot

Docker 是一个开源的应用容器引擎,让开发者可以打包他们的应用以及依赖包到一个可移植的容器中,然后发布到任何流行的 Linux 机器上,也可以实现虚拟化。

2.Ubuntu(LXC)

LXD 是 ubuntu 基于 LXC 技术的重构,容器天然支持非特权和分布式。LXD 与 Docker 的思路不同,Docker 是 PAAS,LXD 是 IAAS。LXC 项目由一个 Linux 内核补丁和一些 userspace 工具组成。这些 userspace 工具使用由补丁增加的内核新特性,提供一套简化的工具来维护容器。

(二)配置管理

1.Chef

Chef 是一个系统集成框架,为整个架构提供配置管理功能。

2.Puppet

Puppet,您可以集中管理每一个重要方面,您的系统使用的是跨平台的规范语言,管理所有的单独的元素通常聚集在不同的文件,如用户, CRON作业,和主机一起显然离散元素,如包装,服务和文件。

3.CFengine

Cfengine(配置引擎)是一种 Unix 管理工具,其目的是使简单的管理的任务自动化,使困难的任务变得较容易。Cfengine 适用于管理各种环境,从一台主机到上万台主机的机群均可使用。

(三)微服务平台

1.OpenShift

OpenShift 是由红帽推出的一款面向开源开发人员开放的平台即服务(PaaS)。 OpenShift通过为开发人员提供在语言、框架和云上的更多的选择,使开发人员可以构建、测试、运行和管理他们的应用。

2.Cloud Foundry

screenshot

Cloud Foundry 是VMware于2011年4月12日推出的业界第一个开源PaaS云平台,它支持多种框架、语言、运行时环境、云平台及应用服务,使开发人员能够在几秒钟内进行应用程序的部署和扩展,无需担心任何基础架构的问题。

(四)服务开通

1.Puppet

Puppet,您可以集中管理每一个重要方面,您的系统使用的是跨平台的规范语言,管理所有的单独的元素通常聚集在不同的文件,如用户, CRON作业,和主机一起显然离散元素,如包装,服务和文件。

2.Docker Swarm

Docker Swarm 是一个Dockerized化的分布式应用程序的本地集群,它是在Machine所提供的功能的基础上优化主机资源的利用率和容错服务。具体来说,Docker Swarm支持用户创建可运行Docker Daemon的主机资源池,然后在资源池中运行Docker容器。Docker Swarm可以管理工作负载并维护集群状态。

五:维护

日志记录

1.Logstash

screenshot

Logstash 是一个应用程序日志、事件的传输、处理、管理和搜索的平台。你可以用它来统一对应用程序日志进行收集管理,提供 Web 接口用于查询和统计。

2.CollectD

collectd 是一个守护(daemon)进程,用来收集系统性能和提供各种存储方式来存储不同值的机制。比如以RRD 文件形式。

六:监控、警告&分析

1.Nagios

Nagios 是一个监视系统运行状态和网络信息的监视系统。Nagios能监视所指定的本地或远程主机以及服务,同时提供异常通知功能等。

2.Ganglia

Ganglia 是一个跨平台可扩展的,高性能计算系统下的分布式监控系统,如集群和网格。它是基于分层设计,它使用广泛的技术,如XML数据代表,便携数据传输,RRDtool用于数据存储和可视化。

====================================分割线================================
文章转载自 开源中国社区[http://www.oschina.net]

目录
相关文章
|
8月前
|
运维 Devops 调度
DevOps-ChatBot:DevOps开源端到端智能AI助手
随着ChatGPT等通用大模型以及各类垂直领域大模型的出现,各个领域的产品交互模式、用户信息获取模式都在逐步发生改变。但通用大模型自身存在的生成内容不可靠、信息内容不及时、领域任务不完善的问题始终存在,面向DevOps这个对于事实的准确性、信息的及时性、问题的复杂性、数据的安全性要求都比较高的领域,大模型该如何赋能?为此,我们发起并开源DevOps-ChatBot端到端AI智能助手,专为软件开发的全生命周期而设计:通过DevOps垂类知识库 + 知识图谱增强 + SandBox执行环境等技术来保障生成内容的准确性、及时性并让用户交互修改代码编译执行,确保答案的可靠性;通过静态分析技术 + RA
526 1
DevOps-ChatBot:DevOps开源端到端智能AI助手
|
8月前
|
运维 监控 Devops
|
8月前
|
Devops 网络安全 Docker
百度搜索:蓝易云【DevOps系列文章之Docker部署web ssh工具sshwifty教程。】
同时,了解DevOps和Docker的基本原理和概念也对你进行部署和管理这样的工具非常有帮助。你可以进一步研究Docker容器化技术和相关的DevOps实践,以更好地理解和应用这些概念。
106 0
|
jenkins Devops 持续交付
【devops】五、Integrate工具——容器部署Jenkins(上)
【devops】五、Integrate工具——容器部署Jenkins(上)
155 1
|
Java Devops jenkins
【devops】三、Build阶段工具——配置maven
【devops】三、Build阶段工具——配置maven
141 0
|
Devops 开发工具 git
【devops】二、Code阶段工具——容器部署Gitlab
【devops】二、Code阶段工具——容器部署Gitlab
137 0
|
Kubernetes Devops Docker
【devops】十、Kubernetes编排工具(中)
【devops】十、Kubernetes编排工具(中)
189 1
|
存储 Kubernetes Devops
【devops】十、Kubernetes编排工具(上)
【devops】十、Kubernetes编排工具(上)
210 1
|
5月前
|
Prometheus 监控 安全
|
7月前
|
运维 Devops 测试技术
DevOps:文化、工具与实践的深度融合
【6月更文挑战第21天】DevOps融合文化、工具与实践,促进开发与运维协作,加速软件交付。核心包括共享文化、自动化工具(如Git、Jenkins)与流程优化(敏捷、自动化、微服务)。DevOps助力团队协作,提高效率,降低运维成本,驱动企业持续创新与成长。