加入收藏 | 设为首页 | 会员中心 | 我要投稿 东莞站长网 (https://www.0769zz.com/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 服务器 > 安全 > 正文

三个生产环境中使用Docker的案例

发布时间:2021-02-24 00:06:34 所属栏目:安全 来源:网络整理
导读:《三个生产环境中使用Docker的案例》要点: 本文介绍了三个生产环境中使用Docker的案例,希望对您有用。如果有疑问,可以联系我们。 在2017年1月17日的Helsinki的首届Docker线下见面会中,Solita、Zalando和Pipedrive公司分别介绍了Docker在生产环境中的实践,
副标题[/!--empirenews.page--]

《三个生产环境中使用Docker的案例》要点:
本文介绍了三个生产环境中使用Docker的案例,希望对您有用。如果有疑问,可以联系我们。

Docker

在2017年1月17日的Helsinki的首届Docker线下见面会中,Solita、Zalando和Pipedrive公司分别介绍了Docker在生产环境中的实践,包括案例及相应的输入输出.同时,也介绍了Docker在生产环境中的优点、缺点和痛点.

Solita的使用场景

首先,Solita公司的Heikki Simperi介绍了他们公司如何利用Docker来处理多种app和芬兰国家铁路管理系统(VR)的关系,以及他们在使用Docker过程中遇到的问题.

Solita在Docker上运行了多种app,包括火车司机导航系统、通知系统和交通控制app.Heikki特别提到在铁路管理系统中减少系统停机维护时间的重要性.他的原话是:“anything over a 3-5 min downtime causes delays for trains,but nobody dies.”

他们在使用Docker过程中遇到的大部分问题大致包含以下几个方面:构建镜像、创建私有仓库、移除或者启动容器以及app中存在的bug.总的来说,他们使用Docker过程中一直是稳定的,并且是零停机维护.

他们之前遇到的问题在升级Docker版本之后或减少或解决.他们正期待Docker1.12稳定版本在RedHat官方渠道上的发布.

Zalando的使用场景

随后,Rami Rantala介绍了Zalando公司的各个团队和项目中是如何使用Docker用于部署生产系统.

在Zalando Helsinki的办公地,这里有超过100多名工作人员和多个团队,他们负责不同的生产系统、相关探索研究、持续交付等工作,采用敏捷开发的方式开发他们的平台.

每个自主团队均有独立的AWS账号,而且无视了不可以在生产环境运行Docker的建议.据Rami介绍,在Zalando内,任何运行在AWS上的程序都采用了Docker运行,Docker被认为是唯一允许用于部署生产环境的工具.他们同样有独立的Docker资源库(Pierone),他们自主的Docker基础镜像和每个实例运行一个全栈容器.

有很多领域还存在改进的空间,包括如下内容:部署太慢,他们丢失了Docker中层通信的优势,每个实例运行一个容器的代价很高,导致存在数千个实例;另一个问题在于Docker经常拖垮Pierone.

他们目前正调研使用Kubernetes,它看起来可以降低成本,对AWS账号和基础设施要求更低,更高效的利用容器间通信和快速简单的部署.他们在技术周进行了技术演练,并计划在第二季度用于生产环境灰度发布.

Pipedrive的使用场景

最后,Renno Reiurm讨论了Pipedrive公司在使用Docker中的收获与痛点.这是家致力于帮助小微企业控制复杂销售流程的公司,成立于2010年,目前拥有30000家付费客户,并有200多名雇员和Tallinn、Tartu和New York有三处办公地.

Pipedrive采用Docker并感受到了随着业务增长,Chef带来的各种问题.由于很少去编写配置单,使得容易遗忘Chef的工作原理,而学习一门新的语言和工具又存在一个准入门槛.

他们最初的Docker平台是在Vagrant虚机环境中,后来他们迁移到定制化docker宿主机,最近迁移到了Docker4Mac.

Docker构建的第一个版本使用的是Codeship Docker CI beta版本,并且首次使用了Tutum(Docker Cloud)作为编排服务.

这次测试使用有很多缺点,包括Codeship的CI处理速度很慢,Docker构建本身就需要15分钟.此外,Docker Tutum集群的部署需要10分钟.有时候,他们慢得都不能确认它是否还在工作.他们还遇到了稳定性的问题,包括‘‘数据丢失’’和‘‘服务宕机’’.

由于需要提高CI过程的速度,并且提高Docker基础设施的可靠性,Docker基础设施2.0诞生了.

在运行Docker时,管道驱动的缺点包括:构建、测试和部署容器所需的时间;消费者只需要连接到健康服务;日常维护Jenkins工作,以前容器处理10,000个连接和连续的高负载.

使用Docker的好处包括:应用程序的演进–他们变得足够通用,可以再多个地区和环境中运行;从想法到上线可以从两周减少到一天;服务器与服务之间的管理是异步的.

Pipedirve容器采用持续增长:从去年10月以来,有70家公司的Docker服务,90个Docker容器镜像,500个容器运行,3200个容器部署.Pipedrive上每天有30个容器部署,1个新增容器产生.

Renno对Docker化提出的建议包括:小心对待操作系统、阅读GitHub上的问题、阅读源码、保持最新的数据和性能测试.

优点、缺点和痛点

最后,Jari Kolehmainen的想法引发了关于Docker的演讲:优点、缺点和痛点,这让人想到了如何在生产环节中使用Docker时避免“缺点和痛点”.其中一种方法是使用Kontena容器和微服务平台——就像它在任何云上工作一样,易于设置和使用.

Jari提到,在生产环境中使用Docker的第一步是“像一个过山车,有起有伏”,但它的好处超过了这个,而“最终你将会取得巨大的成功”.

对于那些还没有在生产环境中运行Docker的人来说,也许您正在测试环境中运行它,那么第一步就是选择正确的路径,这对于向生产转移是至关重要的.通常情况下,这条路是预先确定的,无论是项目限制(你必须使用数据中心或一些云服务等),但如果你可以自由选择,那么你就有三个主要的选择:DIY,租一个真正的云服务,或者你可以使用一个预制的平台,比如Kontena.

在DIY模式中,你有一个引擎,比如Docker引擎,你试着调整并与你的团队或你自己建立真正的“汽车”.

一般来说,这听起来像是一件有趣的事情,你可以控制所有的事情,而且它是有效的.花了一些时间在实际的引擎上调优后,然后你就可以把所有的东西都放在生产环境上,有时候你可能会得到一辆有引擎的汽车,有很多管道胶带、空调控制系统,但是你永远不知道它什么时候会坏.

Jari的建议是“不要做”.在生产环境中,如果你是运行Docker的新手,DIY选项可能是一个有用的学习工具,但最好不要自己动手,因为你很可能只希望通过DIY过程完成自己的工作.

云租赁服务包括AWS、Azure、Kubernetes等提供商提供的一切服务,所有这些都是不错的选择.就像坐出租车一样,你只需要支付一笔钱,你就可以让整个系统准备好,而不需要维护任何东西.这可能比其他的方案更适合于个人使用.

但是,如果您的项目需要在一个数据中心或者某个没有这些选项的地方运行,那么第三个选项很可能是正确的.

推荐的平台包括:Docker集群(新)、Kubernetes、Kontena和DCOS.当你不想自己动手的时候,所有这些都是不错的选择.你可以选择其中一种或另一种,但不推荐DIY.

(编辑:东莞站长网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!