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

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

开源工具与分类

包括版本控制&协作开发工具、自动化构建和测试工具、持续集成&交付工具、部署工具、维护工具、监控,警告&分析工具等。
原文链接: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. linux自由软件安装 ./config, make的理解

    在linux系统中安装软件的其中一种:源码安装的方法是,先输入./configure,然后输入make,最后make install.或许有人留意到没有,这些软件的根目录中开始是没有Makefile的 ...

  2. R的数据结构--向量

    向量:用于存储数值型.字符型或逻辑型数据的一维数组,只可以包含一种数据 向量的创建与运算 创建向量 # 创建简单向量 l <- c(2, 2, 1, 3, 8) # [1] 2 2 1 3 8 ...

  3. python之collections模块(OrderDict,defaultdict)

    前言: import collections print([name for name in dir(collections) if not name.startswith("_" ...

  4. Codeforces Round #587 (Div. 3) C. White Sheet

    链接: https://codeforces.com/contest/1216/problem/C 题意: There is a white sheet of paper lying on a rec ...

  5. HDU 6088 - Rikka with Rock-paper-scissors | 2017 Multi-University Training Contest 5

    思路和任意模数FFT模板都来自 这里 看了一晚上那篇<再探快速傅里叶变换>还是懵得不行,可能水平还没到- - 只能先存个模板了,这题单模数NTT跑了5.9s,没敢写三模数NTT,可能姿势太 ...

  6. nginx大概工作机制

    1.master和worker nginx启动后,会有2种进程:worker和master;worker可能有多个:

  7. 如何在 Laravel 中灵活的使用 Trait

    如何在 Laravel 中灵活的使用 Trait  Laravel/ 3个月前/  1740 /  4 / 更新于 3个月前   @这是小豪的第九篇文章 好久没有更新文章了,说好了周更结果还是被自己对 ...

  8. Window Service安装不成功

    1. 加Winsow Service 2. 加Setup Project    Add -> Project Output , 选中Primary output from Winsow Serv ...

  9. whoami/who/w/last/lastlog/users/finger

    whoami 显示当前有效的用户名称,相当于执行id -un命令 who 显示目前登录系统的用户信息 w 显示已经登陆系统的用户列表,并显示用户正在执行的指令 last 显示登入系统的用户 lastl ...

  10. 收藏一个RMQ模板

    int a[1100]; int dp[maxn][20]; void rmq_init(){ for(int i=0;i<n;i++) dp[i][0]=a[i]; for(int j=1;( ...