本文发表时间已超过一年。较旧的文章可能包含过时的内容。请检查页面中的信息自发布以来是否已变为不正确。

2016 年 1 月的容器世界状况

在新的一年开始之际,我们发出了一项调查,以评估容器世界的现状。我们准备发送二月版,但在我们这样做之前,让我们看一下来自 119 个回复(感谢您的参与!)的一月份数据。

关于这些数字的说明:首先,您可能会注意到这些数字加起来不等于 100%,这些选择在大多数情况下不是互斥的,因此给出的百分比是选择特定选择的所有受访者的百分比。其次,虽然我们试图接触到云社区的广泛横截面,但该调查最初是通过 Twitter 发送给 @brendandburns@kelseyhightower@sarahnovotny@juliaferraioli@thagomizer_rb 的关注者,因此受众可能不是一个完美的横截面。我们正在努力扩大我们的样本量(我有没有提到我们的二月份调查? 现在就来参加吧)。

现在,事不宜迟,数据来了

首先,很多人都在使用容器!71% 的人目前正在使用容器,而 24% 的人正在考虑很快使用它们。显然,这表明样本集存在一定的偏差。更广泛的社区中容器的使用率各不相同,但肯定低于 71%。 因此,请对所有其余的数字持保留态度。

那么人们使用容器做什么呢?超过 80% 的受访者使用容器进行开发,而只有 50% 的人使用容器进行生产。但是你们计划很快迁移到生产环境,因为 78% 的容器用户表示你们计划很快迁移到生产环境。

您在哪里部署容器?您的笔记本电脑是明显的赢家,有 53% 的人部署到笔记本电脑上。其次是 44% 的人在自己的虚拟机上运行(Vagrant?OpenStack?我们将在二月份的调查中深入探讨这个问题),其次是 33% 的人在物理基础设施上运行,31% 在公共云虚拟机上运行。

您如何部署容器?54% 的人正在使用 Kubernetes,很高兴看到这一点,尽管可能受到样本集的偏差影响(请参阅上述注释),更令人惊讶的是,45% 的人正在使用 shell 脚本。这是否是因为 Kubernetes 存储库中正在进行广泛(而且很棒)的 Bash 脚本编写?说吧,你可以告诉我真相…… 剩下的数字是,25% 的人正在使用 CAPS(Chef/Ansible/Puppet/Salt)系统,大约 13% 的人正在使用 Docker Swarm、Mesos 或其他系统。

最后,我们要求人们自由回答有关使用容器的挑战。一些最有趣的答案在这里分组和重现

开发复杂性
  • “孤立的开发环境/工作流程可能会碎片化,当调试容器时,可以轻松访问日志等工具,但有时不够直观,需要大量的知识才能掌握整个基础设施堆栈以及从部署/更新 Kubernetes 到底层网络等方面的最佳实践。”
  • “迁移开发人员工作流程。不熟悉容器、卷等的人只想工作。”
安全性
  • “网络安全”
  • “秘密”
不成熟
  • “缺乏全面的非专有标准(即非 Docker 标准),例如 runC/OCI”
  • “仍然处于早期阶段,工具很少,而且缺少许多功能。”
  • “CI 支持较差,很多工具仍处于非常早期的阶段。”
  • “我们以前从没这样做过。”
复杂性
  • “网络支持,为 Kubernetes 在裸机上为每个 pod 提供 ip”
  • “集群仍然太难了”
  • “设置 Mesos 和 Kubernetes 太他妈复杂了!!”
数据
  • “卷的灵活性不足(这与虚拟机、物理硬件等存在相同的问题)”
  • “持久性”
  • “存储”
  • “持久数据”

在此处下载完整的调查结果 此处(CSV 文件)。