AI实践哪家强?来 AICon, 解锁技术前沿,探寻产业新机! 了解详情
写点什么

来自 Datadog 的 Docker 全球使用调查报告

  • 2017-06-19
  • 本文字数:1788 字

    阅读完需:约 6 分钟

2017 年 4 月,美国云应用监控服务提供商 Datadog 发布了一份全新的全球 Docker 使用调查报告(Datadog 分别在 2015 年 2016 年发布了另外两份报告)。Docker 或许是过去几年被谈论得最多的基础设施技术。这份报告对 Docker 在生产环境的使用情况和采用速度进行了调查。

这份报告对 10000 家公司和 1.85 亿个容器进行取样,是目前为止规模最大最准确的有关 Docker 使用情况的调查。报告的主要内容如下。

最近一年 Docker 采用率增加了 40%

在 2016 年 3 月初,有 13.6% 的 Datalog 客户使用了 Docker。一年之后,这个数字增长到了 18.8%。在 12 个月内增长了将近 40%。

由 Datadog 监控的 15% 主机运行了 Docker

两年前,Docker 只有 3% 的市场份额,现在增长到了 15%。从下图可以看到,Docker 增长率在一开始有所波动,但在 2015 年秋天开始趋于稳定。从那个时候开始,Docker 的采用率一直呈稳定的线性增长,由 Datadog 监控的六分之一机器几乎都运行了 Docker。

大公司仍然是主要的使用者

大公司的增长趋于放缓,但在 Docker 方面,从 2015 年发布的第一份报告开始一直保持领先。一个公司使用的主机越多,就越有可能使用 Docker。将近 60% 的企业使用了 500 台或更多的主机,他们被归类为 Docker 玩家或 Docker 采用者。

据上一份报告显示,使用了大量主机的企业是推动 Docker 采用的主要力量,而最近的数据表明,使用了中等数量(100 到 499 台)主机的企业也成为重要的贡献者。大中型公司的采用率现在几乎趋于一致。

编排引擎正在崛起

随着 Docker 逐步成为生产环境不可或缺的组成部分,企业正在寻找能够帮助他们有效管理和编排容器的工具。截止 2017 年 3 月,使用了 Docker 的 Datalog 客户中有 40% 也使用了 Kubernetes、Mesos、Amazon ECS、Google Container Engine 或其他编排引擎。有些企业使用 Docker 内置的编排引擎,不过它们未能生成可识别的度量指标,所以无法对其进行可靠的统计。

对于同时使用了 Docker 和 AWS 的企业来说,他们更倾向于选择 Amazon ECS,正如所预期的那样:超过 35% 的公司使用了 ECS。不过也有很大一部分使用了其他编排引擎,特别是 Kubernetes。

采用者的容器数量在 9 个月内增长到 5 倍

从使用 Docker 的第 1 个月到第 9 个月,采用者的容器平均数量几乎增长到了原先的 5 倍。采用率呈线性增长,而且在第 10 个月后没有下降的势头。另一些数据表明,这种增长模式从上一份报告以来一直保持稳定。

使用范围最广的镜像分别是 NGINX、Redis 和 Elasticsearch

最常用的 Docker 镜像如下:

  • NGINX:似乎 Docker 被用来运行多种 HTTP 服务器,从 2015 开始对 Docker 镜像的使用情况进行跟踪以来,NGINX 一直是最有力的竞争者。
  • Redis:这个非常流行的键值数据存储引擎经常被用来作为内存数据库、消息队列或缓存。
  • Elasticsearch:全文检索越来越流行,首次进入前 3 名。
  • Registry:使用 Docker 的公司当中有 18% 也使用了 Registry,Registry 用于保存和分发其他 Docker 镜像。Registry 几乎在每一份报告中都名列前茅。
  • Postgres:越来越流行的开源关系型数据库,采用量首次超过了 MySQL。
  • MySQL:在 Docker 基础设施里使用很广的开源关系型数据库。如果把 MySQL 和 Postgre 的数字加在一起,可见在 Docker 中运行关系型数据库是非常常见的。
  • etcd:分布式键值存储引擎,用于为 Docker 集群提供一致性的配置。
    1. Fluentd:这个开源的“统一日志层”被设计用于解耦数据源和后端的数据存储。这是 Fluentd 第一次出现在排名清单里,取代了 Logspout 的位置。
    2. MongoDB:广泛使用的 NoSQL 数据存储。
    3. RabbitMQ:在 Docker 环境里广泛使用的消息代理。

一台主机上一般会同时运行 7 个容器

中型公司会在每一台主机上运行 7 个容器,而在 9 个月前只有 5 个。这一现象说明 Docker 一般是被作为轻量级的容器来共享计算资源,而不仅仅是作为可感知、版本化的运行时环境。另外,有 25% 的公司平均同时运行超过 14 个容器。

容器的重置速度比虚拟机快 9 倍

容器的平均生存周期是 2.5 天,而传统的云虚拟机是 23 天。

容器编排对容器的生存周期有重要的影响,自动启动和关闭容器导致了更高的重置率。使用了编排引擎的企业,一般的容器存活时间不会超过 1 天,而没有使用编排引擎的企业,他们的容器平均存活时间为 5.5 天。

容器的短存活期和高密度意味着需要更好的基础设施监控。监控方案必须是基于主机的,而不是基于角色的。Docker 将促使监控方式不断地发生变化。

2017-06-19 19:002927
用户头像

发布了 322 篇内容, 共 151.5 次阅读, 收获喜欢 148 次。

关注

评论

发布
暂无评论
发现更多内容

oeasy 教您玩转linux010101查看内核uname

o

刘华:弹性便是一切

刘华Kenneth

架构 DevOps 敏捷 弹性

我的缺点就是做事太认真

escray

学习 面试

oeasy教您玩转linux010102查看发行版

o

这么理解业务架构就对了!

周金根

BIZBOK 业务架构

我,一个当代普通大学生的自述

有梦的咸鱼

个人成长 大学生日常 个人感悟 讨论写作

一款高仿 Eyepetizer | 开眼短视频的 MVVM 开源项目

vipyinzhiwei

android kotlin 短视频 eyepetizer 开眼

【数据结构与算法】力扣实战之移动零、盛最多的水、爬楼梯

三钻

算法 大前端 LeetCode 数据结构与算法

LeetCode题解:25. K 个一组翻转链表,迭代,JavaScript,详细注释

Lee Chen

大前端 LeetCode

阿里内部流传的Mybatis笔记终于流传出来了,赶紧收藏

简爱W

深入浅出Vert.x架构

dinstone

面试28k职位,老乡面试官从HashCode到HashMap给我讲了一下午!「回家赶忙整理出1.6万字的面试材料」

小傅哥

数据结构 面试 hashmap 红黑树

我能讲明白哪些技术?

escray

学习 面试 沟通

Golang领域模型-六边形架构

奔奔奔跑

微服务 领域驱动设计 架构设计 Go 语言

Flink中的数据传输-5

小知识点

scala 大数据 flink

架构师训练营高可用作业

qihuajun

架构师训练营高可用学习总结

qihuajun

我在项目中不可或缺么?

escray

学习 面试

都2020了,你的APP还不能运行小程序?

FinClip

小程序生态 私有小程序技术

MySQL系列(二):MySQL是怎么处理并发操作的?

z小赵

MySQL 数据库 事务

再谈引入YAPI接口平台的好处

Man

DevOps YAPI API接口管理

Java 约束注解

HeGuang

如何提升系统可用性

码猿外

可用性 持续交付 工程能力 团队文化

学会反射后,我被录取了(干货)

苹果看辽宁体育

Java 后端 反射

JavaScript基础语法

Java

乘风破浪,Spring Boot入门

Simon郎

Spring Boot

国产数据库的经济民族

郭华

数据库 商业

MySQL备份与恢复场景示例

Simon

MySQL

牛逼操作,ThreadLocal还能当缓存用

简爱W

Java

第11周作业

小胖子

透过兴趣爱好看本质

escray

学习 面试

来自Datadog的Docker全球使用调查报告_语言 & 开发_Datadog_InfoQ精选文章