不要满足于使用世界上已存在的各种方法和技术,而应重点放在希望达到的效果上!

单单使用工具不难,困难的是在团队开发中熟练使用,并形成一套理想的工作流程,只有在团队中工具和思想才能发挥最大价值。

开源工具与分类

包括版本控制&协作开发工具、自动化构建和测试工具、持续集成&交付工具、部署工具、维护工具、监控,警告&分析工具等。
原文链接:https://www.ctl.io/developers/blog/post/60-best-open-source-tools-to-do-devops/

  • 版本控制&协作开发:GitHub、GitLab、BitBucket、SubVersion、Coding、Bazaar
  • 自动化构建和测试:Apache Ant、Maven 、Selenium、PyUnit、QUnit、JMeter、Gradle、PHPUnit
  • 持续集成&交付:Jenkins、Capistrano、BuildBot、Fabric、Tinderbox、Travis CI、flow.ci Continuum、LuntBuild、CruiseControl、Integrity、Gump、Go
  • 容器平台: Docker、Rocket、Ubuntu(LXC)、第三方厂商如(AWS/阿里云)
  • 配置管理:Chef、Puppet、CFengine、Bash、Rudder、Powershell、RunDeck、Saltstack、Ansible
  • 微服务平台:OpenShift、Cloud Foundry、Kubernetes、Mesosphere
  • 服务开通:Puppet、Docker Swarm、Vagrant、Powershell、OpenStack Heat
  • 日志管理:Logstash、CollectD、StatsD
  • 监控,警告&分析:Nagios、Ganglia、Sensu、zabbix、ICINGA、Graphite、Kibana

平台搭建

Jenkins

https://jenkins.io/zh/
持续集成工具,用于监控持续重复的工作,旨在提供一个开放易用的软件平台,使软件的持续集成变成可能。

GitLab

https://about.gitlab.com/
基于git的项目管理软件:开源的仓库管理系统项目,使用git作为代码管理工具,并在此基础上搭建web服务,拥有与Github类似的功能。

Kubernetes

https://kubernetes.io/zh/
用于管理云平台中多个主机上的容器化的应用,让部署容器化的应用简单并且高效,提供了应用部署,规划,更新,维护的机制。

Helm

https://helm.sh/
Helm是Kubernetes的一个包管理工具,用来简化Kubernetes应用的部署和管理。

etcd

https://github.com/coreos/etcd/
应用服务的注册,是一个具备高可用性和强一致性的键值存储仓库

Nginx

https://www.nginx.com/
轻量级的Web服务器/反向代理服务器及电子邮件(IMAP/POP3)代理服务器。

Harbor

https://goharbor.io/
Harbor是由VMware公司开源的企业级的Docker Registry管理项目,用于存储和分发Docker镜像的企业级Registry服务器。

代码提交与审核

Gerrit

https://www.gerritcodereview.com/
免费开源的代码审核系统,在传统源码管理协作流程中强制性引入代码审核机制

SVN

状态监控与运维

Prometheus

https://prometheus.io/
代码级的监控,可在各虚机、中间件、应用程序中使用工具收集资源消耗信息。

Grafana

https://grafana.com/
实时查看各项资源运营情况,可作为数据展示平台,利用Prometheus和Grafana可以定制出监控告警看板

WeaveScope

https://www.weave.works/oss/scope/
Docker和Kubernetes的可视化监控、故障诊断与检测工具

Zabbix

https://zabbix.org/
基于WEB界面的提供分布式系统监视以及网络监视功能的企业级的开源解决方案。

Ansible

Ansible是基于Python开发的自动化运维工具,,实现了批量的系统配置、程序部署、运行命令等功能;

日志平台

ELK(Logstash+ElasticSearch+Kibana)

统一日志平台,结合Logstash,ElasticSearch和Kibana三个组件,可以搭建一套高效的日志收集和分析系统。

Logstash

https://www.elastic.co/cn/products/logstash
开源的服务器端数据处理管道,能够同时从多个来源采集数据,转换数据,然后将数据发送到您最喜欢的 “存储库” 中。

Elasticsearch

https://www.elastic.co/cn/products/elasticsearch
开源、分布式、RESTful接口的全文搜索引擎。

Kibana

https://www.elastic.co/cn/products/kibana
开源的分析和可视化平台,设计用于和Elasticsearch一起工作来搜索、查看,并和存储在Elasticsearch索引中的数据进行交互。

Filebeats

https://www.elastic.co/cn/products/beats/filebeat
日志文件托运工具。

Others

JIRA & Confluence

Atlassian公司设计发布针对软件开发工程师和项目经理的企业软件,以其产品项目跟踪软件JIRA和团队协同软件Confluence而闻名。
JIRA是优秀的敏捷项目工具,协助您追踪问题,集成代码,规划,开发,发布高质量的软件产品。
Confluence将团队成员紧密的团结在一起,带领团队同心协力地在线编写文档,使团队成员工作更有效率。

DevOps - DevOps工具链的更多相关文章

  1. 一文解读DevOps工具链 (转)

    在列出DevOps 工具链之前,介绍一下什么是DevOps,虽然DevOps这个概念现在还没有标准的定义,但我们可以追溯一下其过去九年的历史发展过程(从2009年-2017年),列出几个相对明确又有所 ...

  2. DevOps最佳工具集实践

    在列出DevOps 工具链之前,介绍一下什么是DevOps,虽然DevOps这个概念现在还没有标准的定义,但我们可以追溯一下其过去九年的历史发展过程(从2009年-2017年),列出几个相对明确又有所 ...

  3. DevOps时代,企业数字化转型需要强大的工具链

    伴随时代的飞速进步,中国的人口红利带来了互联网业务的快速发展,巨大的流量也带动了技术的不断革新,研发的模式也在不断变化.传统企业纷纷效仿互联网的做法,结合DevOps进行数字化的转型. 通常提到Dev ...

  4. DevOps工具链

    Devops工具链 DevOps实际是一种文化上的变迁,代表了开发.运维.测试等环节之间的协作,因此DevOps工具是非常多种多样的,甚至可以由多种工具组成一个完整的DevOps工具链.此类工具可以应 ...

  5. 如何快速复制BAT级的DevOps工具链

    1.流水线改变世界 1910年,福特汽车在引入流水线生产之后,Model-T 的组装时间缩短了8倍,从12.5小时降到了1.5小时,这就是流水线改变世界的神话,造就了汽车上的国家! 那流水线怎么改变软 ...

  6. 从大厂DevOps工具链部署,看现代产品的生命周期管理

    目录 1. 认识DevOps 1.1. DevOps工具链 1.2. CI 持续集成(Continuous Integration) 1.3. CD(持续交付 & 持续部署) 1.4. Agi ...

  7. devops工具链概述

    1. devops工具链概述  1)devops工具篇 2) 持续集成 3) 持续交付 4) 持续部署 2. devops工具链概述

  8. 研发过程及工具支撑 DevOps 工具链集成

    https://mp.weixin.qq.com/s/NYm63nkCymIV3DbL4O01dg 腾讯重新定义敏捷 |Q推荐 小智 InfoQ 2020-09-03 敏捷开发奠基人 Robert C ...

  9. DevOps开源工具的三种分类整理

    原文地址:http://www.360doc.com/content/16/0322/07/31263000_544210096.shtml 随着开发运维一体化的DevOps运动在国内外蓬勃发展,De ...

  10. DevOps - 自动化工具

    章节 DevOps – 为什么 DevOps – 与传统方式区别 DevOps – 优势 DevOps – 不适用 DevOps – 生命周期 DevOps – 与敏捷方法区别 DevOps – 实施 ...

随机推荐

  1. 二叉堆的介绍和Java实现

    一.堆和二叉堆 堆,英文名称Heap,所谓二叉堆(也有直接称二叉堆为堆的),本质上是一个完全二叉树,前面也提到过,如果树接近于完全二叉树或者满二叉树,采用顺序存储代价会小一点,因此常见的二叉堆均是顺序 ...

  2. ActiveMQ初步安装使用(一)

    ActiveMQ 的官网 : http://activemq.apache.org ActiveMQ 扩展出: API 接受发送 MQ 的高可用 MQ 的集群容错配置 MQ 的持久化 延时发送 签收机 ...

  3. TypeError: Cannot read property '$$' of undefined at HTMLElement._attached.wx.getPlatform._touchstartHandlerForDevtools

    TypeError: Cannot read property '$$' of undefined     at HTMLElement._attached.wx.getPlatform._touch ...

  4. git 解决 error: failed to push some refs to 'https://github.com/xxxx.git'

    在github远程创建仓库后, 利用gitbash进行提交本地文件的时候出现如下错误 [root@foundation38 demo]# git push -u origin master Usern ...

  5. MyBatis日期用法技巧

    当你想在实体类中使用Java.util.Date类型,而且还想在数据库中保存时分秒时,你可以在xml中修改为: #{xxdate,jdbcType=TIMESTAMP} 就是将#{}中的jdbcTyp ...

  6. Fiddler 显示客户端请求时间,请求耗时,服务器地址

    # 效果图 打开 CustomRules.js (C:\Users\UsersName\Documents\Fiddler2\Scripts):打开 fiddler 时 windows 快捷键 -&g ...

  7. Educational Codeforces Round 33 (Rated for Div. 2) B题

    B. Beautiful Divisors Recently Luba learned about a special kind of numbers that she calls beautiful ...

  8. Python回归分析五部曲(三)—一元非线性回归

    (一)基础铺垫 一元非线性回归分析(Univariate Nonlinear Regression) 在回归分析中,只包括一个自变量和一个因变量,且二者的关系可用一条曲线近似表示,则称为一元非线性回归 ...

  9. Django基础之JsonResponse对象

    JsonResponse是HttpResponse的子类, 专门用来生成JSON编码的响应. from django.http import JsonResponse response = JsonR ...

  10. quartz中的corn表达式

    一个Quartz的CronTrigger表达式分为七项子表达式,其中每一项以空格隔开,从左到右分别是:秒,分,时,月的某天,月,星期的某天,年:其中年不是必须的,也就是说任何一个表达式最少需要六项! ...