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

简介:
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集群提供一致性的配置。 Fluentd:这个开源的“统一日志层”被设计用于解耦数据源和后端的数据存储。这是Fluentd第一次出现在排名清单里,取代了Logspout的位置。MongoDB:广泛使用的NoSQL数据存储。RabbitMQ:在Docker环境里广泛使用的消息代理。

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

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

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

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

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

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



本文转自d1net(转载)

相关文章
|
6天前
|
监控 关系型数据库 MySQL
zabbix7.0.9安装-以宝塔安装形式-非docker容器安装方法-系统采用AlmaLinux9系统-最佳匹配操作系统提供稳定运行环境-安装教程完整版本-优雅草卓伊凡
zabbix7.0.9安装-以宝塔安装形式-非docker容器安装方法-系统采用AlmaLinux9系统-最佳匹配操作系统提供稳定运行环境-安装教程完整版本-优雅草卓伊凡
81 30
|
6天前
|
存储 虚拟化 Docker
|
2月前
|
数据库 Docker 容器
docker容器为啥会开机自启动
通过配置适当的重启策略,Docker容器可以在主机系统重启后自动启动。这对于保持关键服务的高可用性和自动恢复能力非常有用。选择适合的重启策略(如 `always`或 `unless-stopped`),可以确保应用程序在各种情况下保持运行。理解并配置这些策略是确保Docker容器化应用可靠性的关键。
319 93
|
6天前
|
开发工具 虚拟化 git
自学软硬件第755 docker容器虚拟化技术youtube视频下载工具
docker容器虚拟化技术有什么用?怎么使用?TubeTube 项目使用youtube视频下载工具
|
1月前
|
网络协议 API Docker
Docker+consul容器服务的更新与发现
通过本文的介绍,我们详细探讨了如何结合Docker和Consul来实现容器服务的更新与发现。通过Consul的服务注册和发现功能,可以高效地管理和监控容器化服务,确保系统的高可用性和可扩展性。希望本文能帮助您在实际项目中更好地应用Docker和Consul,提高系统的可靠性和管理效率。
73 23
|
1月前
|
Ubuntu API 网络虚拟化
ubuntu22 编译安装docker,和docker容器方式安装 deepseek
本脚本适用于Ubuntu 22.04,主要功能包括编译安装Docker和安装DeepSeek模型。首先通过Apt源配置安装Docker,确保网络稳定(建议使用VPN)。接着下载并配置Docker二进制文件,创建Docker用户组并设置守护进程。随后拉取Debian 12镜像,安装系统必备工具,配置Ollama模型管理器,并最终部署和运行DeepSeek模型,提供API接口进行交互测试。
395 15
|
3月前
|
监控 NoSQL 时序数据库
《docker高级篇(大厂进阶):7.Docker容器监控之CAdvisor+InfluxDB+Granfana》包括:原生命令、是什么、compose容器编排,一套带走
《docker高级篇(大厂进阶):7.Docker容器监控之CAdvisor+InfluxDB+Granfana》包括:原生命令、是什么、compose容器编排,一套带走
359 78
|
2月前
|
Ubuntu NoSQL Linux
《docker基础篇:3.Docker常用命令》包括帮助启动类命令、镜像命令、有镜像才能创建容器,这是根本前提(下载一个CentOS或者ubuntu镜像演示)、容器命令、小总结
《docker基础篇:3.Docker常用命令》包括帮助启动类命令、镜像命令、有镜像才能创建容器,这是根本前提(下载一个CentOS或者ubuntu镜像演示)、容器命令、小总结
229 6
《docker基础篇:3.Docker常用命令》包括帮助启动类命令、镜像命令、有镜像才能创建容器,这是根本前提(下载一个CentOS或者ubuntu镜像演示)、容器命令、小总结
|
3月前
|
监控 Docker 容器
在Docker容器中运行打包好的应用程序
在Docker容器中运行打包好的应用程序
|
3月前
|
搜索推荐 安全 数据安全/隐私保护
7 个最能提高生产力的 Docker 容器
7 个最能提高生产力的 Docker 容器
362 35