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

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

开源工具与分类

包括版本控制&协作开发工具、自动化构建和测试工具、持续集成&交付工具、部署工具、维护工具、监控,警告&分析工具等。
原文链接: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. 2.PAT 1001 害死人不偿命的(3 n + 1 )猜想

    题目: 卡拉兹(Callatz)猜想: 对任何一个正整数 n,如果它是偶数,那么把它砍掉一半:如果它是奇数,那么把 ( 砍掉一半.这样一直反复砍下去,最后一定在某一步得到 n=1.卡拉兹在 1950 ...

  2. JavaScript 基础知识梳理——数据类型

    JavaScript的数据类型公有六种,ES6又新增了第七种Symbol类型的值. 数值(number) 字符串(string) 布尔值(boolean) undefined null 对象(obje ...

  3. LVM卷管理

    一.LVM是做什么的 LVM ( Logical Volume Manager ,逻辑卷管理器)LVM 是建立在磁盘和分区之上的一个逻辑层,用来提高磁盘分区管理的灵活性.LVM 可以对磁盘分区按照组的 ...

  4. Java笔记(第七篇 JDBC操作数据库)

    JDBC是连接数据库和java程序的桥梁,通过JDBC API可以方便地实现对各种主流数据库的操作.学习java语言,必须学习JDBC技术,因为JDBC技术实在java语言中被广泛使用的一种操作数据库 ...

  5. bcp导入导出sybase、sqlserver数据库数据

    常用数据备份格式为: bcp dbname..tablename out c:\temp\filename -Usa -Ppassword -Sservername -c 其中 dbname为数据库名 ...

  6. javascript内置对象一: Array数组

    在JavaScript中的任何事物,字符串,数组,函数等等都是对象. 理解:浏览器自己封装好的对象,可以直接使用. push   /pʊʃ/  增加 在末尾增加              unshif ...

  7. python中装饰器(语法糖)概念

    “”“” 什么是装饰器? """ 还是通过一个例子来慢慢说明 先看下面的例子 def func_1(x): return x*2 def fun_2(x): return ...

  8. POJ1961 Period && POJ2604 Power Strings 字符串循环节

    两道题都是求循环节的...但是一道是学哈希时做的,另一道是学$KMP$时做的 POJ2604 用的哈希...枚举长度的因数作为循环节的长度,然后暴力算出所有循环节位置的哈希值,看看是否相等. #inc ...

  9. Connect AS400 through firewall(JDBC will require ports: 449, 8470, 8471, and 8476)

    What TCP ports are used by ODBC to connect to the DB2/400?  8471/9471 http://search400.techtarget.co ...

  10. 树莓派安装QT(全部库包括)

    在网上现有的资料中大部分只有前两个命令,少量有三个命令,因此写下该博客 在树莓派上安装QT5的全部库,包括QtQuick.QtMultimedia库. sudo apt-get install qt5 ...