短生命周期容器在生产环境中的应用实践-阿里云开发者社区

开发者社区> 晚来风急> 正文

短生命周期容器在生产环境中的应用实践

简介:
+关注继续查看

本文是东京OpenStack Summit大会系列采访的一部分,被采访者是Ian Lewis,谷歌云平台工程师,主要阐述了短生命周期容器的概念,作用和如何将它应用到生产环境当中。

原生云计算(Cloud-native computing)依赖于短生命周期的容器而不是固定的服务器。在短生命周期的容器中运行应用,解决了资源困乏的挑战,但同时也引入了需要新的实践和工具去匹配这个动态环境的问题。谷歌的Ian Lewis将在这个月东京举办的OpenStack Summit上分享如何在短生命周期的容器中记录并追踪它们。

我们联系了Ian,学习了DevOp团队是如何将短生命周期容器应用到实践中,如何采用新的架构模型并且将应用迁移到容器中,Ian提供了一些很好的点子,包括如何存储数据、为什么服务发现是必要的、OpenStack开发了什么新的开源项目和如何帮助团队实现将应用转移到短生命周期的容器中。

Q: 为什么容器应该是短生命周期的,短生命周期的容器可以解决什么问题?

使用容器一个最主要的好处是在集群中它们可以很容易的运行和管理,而不用考虑它们在什么样的实体机上运行。这就允许你在运维需要时,透明的将一个正在运行的应用迁移到不同的硬件上。这种迁移容器的灵活性意味着你不能在本地一台特定的机器上存储状态,因为移动的过程可能会在任何时候发生。你需要做到无论应用在什么地方运行都可以访问到存储状态信息。

Q: 实践中什么是短生命周期?

通常来说,短生命周期的意思是你的应用不能在本地存储数据,数据包括从应用数据到日志数据。你的应用应该可以重启并工作在一个新的容器镜像中。数据需要被存储在容器外部,意味着存储需要使用专门的服务。

Q: 可任意支配和短生命周期的容器听起来很酷,只需要运行、迁移和撤销操作,但如果内容已经存储在容器中并且一些端点(Endpoint)已经被容器暴露,怎么办呢,例如:会话状态、API路径和数据库连接端点。那会话状态和数据库连接也消失了?

容器本身并不是管理状态、API路径和连接的银弹。你仍然需要容器的编排管理系统和网络来使它满足高可用性。这也是为什么谷歌发明Kubernetes来解决这些问题的原因。

Q: 传统的部署方式依赖于持久化服务器,那应该如何重构服务器和应用来实现迁移型的容器呢?

我认为有两个比较大的变化。第一是在主机外和容器外存储状态。第二是应用应该有方法完成服务发现。容器迁移意味着需要一种方式,实现无论服务端实际在哪里运行,客户端都能连接到它。

Q: 你有什么好的架构模型推荐吗?

使用容器时,我会推荐面向服务的架构。好处在于当这个服务运行得足够小,并且能够互相独立地扩展或收缩时,容器会非常容易被感知到。

Q: 我该如何创建一个短生命周期的容器环境而不是持久化的容器环境呢,什么基础设施和开发框架可以使用来安全的部署、迁移和处理容器?

可以尝试使用集群管理工具如Kubernetes(或者Container Engine)。Kubernetes是一个容器编排管理工具,它在集群的服务端调度容器,让容器知道它们适合的运行时间,这些时间可能不会和服务端在同一个时间点。使用Kubernetes也许是不错的选择。

Q: 容器如何在OpenStack中执行?

容器编排管理引擎如Docker Swarm和Kubernetes将会在OpenStack中成为一等重要的资源,通过一个叫Magnum的API服务来实现。Magnum会创建服务端集群如同虚拟机安装了一个集群管理工具,使用Magnum来操控容器就容易很多。

Q: 在OpenStack最新的发布版本和路径中,有没有关于容器管理编排和调度的?

关于这块还有很多开发仍在进行中,还有很多新的特性。Magnum会被包括在OpenStack Liberty中,在这个月发布。其他工具如Kolla,它用于在容器中部署OpenStack,还有通过Application Catalog服务使应用开发更容易的Murano,同样值得期待。


本文作者:何炜

来源:51CTO

版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。

相关文章
阿里云服务器怎么设置密码?怎么停机?怎么重启服务器?
如果在创建实例时没有设置密码,或者密码丢失,您可以在控制台上重新设置实例的登录密码。本文仅描述如何在 ECS 管理控制台上修改实例登录密码。
8420 0
生产环境中的容器之工作流
本文讲的是生产环境中的容器之工作流,【编者的话】很多公司已经在生产环境里大规模使用容器。前一篇文章里介绍了Spotify,DramaFever,Built.io和IIIEPE如何以及为什么使用容器。本文继续深入讨论这几个公司的工作流。
1669 0
单例模式在生产环境jedis集群中的应用
背景:不久前单位上线一款应用,上了生产环境之后,没过多久,便吃掉了服务器所有的内存,最后导致网站服务挂了。   在解决了这一问题之后,我发现这其实是典型的一单例模式,现分享一下。 之前存在问题的老代码如下: 这是导致问题所在的那个关键方法 public synchronized sta...
1205 0
TOC制约理论在生产中的应用案例分析
TOC制约理论在生产中的应用 丰田生产方式通过看板来指导生产,而TOC通过DBR(drum鼓,buffer缓冲,R rope绳子)和BM(buffer management缓冲管理)来指导生产(如图6-95所示)。
909 0
视觉生产技术探索和应用
在这个人工智能已经普及的时代,各行各业都充斥着AI的身影。阿里云视觉平台是基于阿里巴巴视觉智能技术实践经验,面向视觉智能技术企业和开发商(含开发者),为其提供高易用、普惠的视觉API服务,帮助企业快速建立视觉智能技术的应用能力的综合性视觉AI能力平台。本节达摩院资深算法专家星瞳(谢宣松)将带你了解视觉生产的相关技术和应用。
380 0
Servlet第六篇【Session介绍、API、生命周期、应用、与Cookie区别】
什么是Session Session 是另一种记录浏览器状态的机制。不同的是Cookie保存在浏览器中,Session保存在服务器中。用户使用浏览器访问服务器的时候,服务器把用户的信息以某种的形式记录在服务器,这就是Session 如果说Cookie是检查用户身上的”通行证“来确认用户的身份,那么Session就是通过检查服务器上的”客户明细表“来确认用户的身份的。
1202 0
流批一体生产应用!Bigo 实时计算平台建设实践
本文由 Bigo 计算平台负责人徐帅分享,主要介绍 Bigo 实时计算平台建设实践的介绍
1915 0
+关注
9380
文章
243
问答
文章排行榜
最热
最新
相关电子书
更多
《2021云上架构与运维峰会演讲合集》
立即下载
《零基础CSS入门教程》
立即下载
《零基础HTML入门教程》
立即下载