当前位置: 首页 > 科技观察

如何在OpenStack环境下布置容器

时间:2023-03-15 00:10:50 科技观察

容器技术目前在计算领域非常火热。他们可以帮助我们高效、实用地完成应用部署工作。但是,当复杂度更高的应用被拆分到多个容器中时,情况就变得更加复杂了。面对这种情况,容器机制往往需要能够更有效地相互配合,而这也正是容器编排方案诞生的意义所在。编排机制可以简化容器系统的管理难度,从而保证不同的容器能够顺利连接,并以合适的方式进行协作,最终实现我们给它们的功能预期。云环境中的容器编排工具种类繁多,那么问题来了——管理员应该如何选择最适合自己的方案呢?Gigaspaces的创始人兼CTONatiShalom和他的几位同事就这个话题进行了讨论,希望通过本次OpenStack温哥华峰会帮助管理员找到上述问题的答案。他们的谈话将集中讨论几种不同的容器编排工具之间的差异,包括Kubernetes、Heat、Fleet、MaestroNG和TOSCA。此外,他们还将针对不同的用例提供最佳实践,从而真正帮助您选择理想的解决方案。Nati将在本次温哥华OpenStack峰会上以主题演讲的形式带来更多信息,我们将重点关注他如何看待容器、编排机制以及OpenStack未来的发展方向。Q:如何从最简洁的表述入手,您希望与会者能从本次OpenStack峰会中得到哪些启示?答:本次对话主要关注各种流行的编排解决方案,旨在概述主要差异和潜在的协同作用——然后深入探讨最佳实践并讨论如何为特定任务选择合适的工具。由于我们的时间有限,我们恐怕无法提供每个工具的实例或在整体用户体验水平上比较它们,而是专注于解决通常导致语义的各种编排选项之间的差异差异。要回答这个问题——云管理员需要先梳理出几个关键的开放性问题。这些问题中的每一个都可能导致手头任务的某种最佳工具/解决方案。我会根据你的具体环境对这些问题进行分类,然后参考你用来管理这些环境的具体工具。最后一件事是考虑您需要什么级别的编排机制——它是一个特定的面向项目的编排机制吗?无论是永久性解决方案还是长期或全球通用的解决方案,都是结合应用栈综合评估的。因此,作为第一步,您需要考虑您的操作环境是纯OpenStack、纯容器,还是可能包含传统基础架构(例如vSphere或物理硬件)的混合模型。如果你选择纯OpenStack环境,那么你最好的选择一定是Heat。将它与其他互补堆栈相结合可以很好地完成日常任务,例如软件配置、监控、任务流和策略管理。其中一些可能是OpenStack下的项目直接提供的,在某些情况下,你可能更倾向于使用其他相关的开源项目。如果你有迁移到纯容器环境的计划,那么最好的解决方案很可能是Docker。就目前的情况来看,我们需要集成大量互补的栈来实现通用的日志记录、监控和任务流程管理——比如Kubernetes可以为微服务架构提供一套先进的编排解决方案。如果您的环境是包含容器、配置管理工具(如Puppet、Chef和SaltStack)、私有云(如OpenStack和VMware)或公共云(如Amazon和Google)的混合系统,那么理想的选择应该是基于TOSCA的编排解决方案——它也不对特定类型的基础设施和工具链施加任何限制。显然,上述结论不包括已经在Chef或Puppet等工具上投入巨资的现有客户。在这种情况下,我们最好的解决方案是选择那些能够以内置方式支持此类框架的编排工具——毫无疑问。接下来的问题是,你是希望这种编排方案只针对单个产品/项目,还是希望选择适用于大多数应用的通用机制,后者的具体效果当然更好。许多产品本身就有自己的编排解决方案,并且是针对应用程序的特定用例量身定制的——最明显的例子是CloudFoundry/Bosh和Hadoop/Yarn的组合。其他编排工具一般都是通用的解决方案,内置各种应用的模板,在某些情况下也能有很好的表现。比如一些编排工具是专门针对NFV等网络应用进行优化调整的,而另一些则主要针对大数据用例,所以即使我个人更喜欢选择省力省心的通用编排工具,但我有承认专用场景对于我自己的目标工作负载来说是最特殊的。另一个重要的考虑因素是嵌入的能力。使用编排工具作为另一个产品的组成部分并不像为您自己的数据中心操作系统选择编排工具那么简单。在这种情况下,我通常会考虑可以最小化运行时负担的轻量级解决方案,这些解决方案通常只属于一个代码库。您可能还需要决定是要选择一种编排工具,它可以解决整个生命周期中的所有部署后层(包括监控、自我修复和自动扩展),还是只强调安装或配置过程。一些编排工具主要局限于处理安装过程,但其他编排工具涵盖整个应用程序生命周期中更广泛的部署后管理任务——包括监控、更新策略、扩展和自我修复等待。最后,了解您的堆栈在网络、DevOps工具链、监控和语言级别的情况非常重要。许多DevOps环境由一系列开源项目组成,每个项目负责日志记录、监控和生命周期的其他方面。这种类型的工具集发展迅速。一些编排工具内置了此类工具的集成机制,但在将新工具集成到整体系统中时,其实际效果仍然有限。当这些工具恰好是它们自己的集群的一部分时尤其如此,因此我们需要在应用程序编排和特定工具编排之间找到更明确和可行的高层关系。考虑到这一点,我们最终需要编排空间的编排工具——最明显的例子是应用程序编排和网络编排,或者应用程序编排和大数据编排,其中应用程序编排机制需要与工具编排交互并分配一些对后者的责任。#p#Q:您认为不同格式之间存在趋同趋势吗?或者,其中一两个最终会压倒云环境中的其他替代方案吗?A:从我的角度来看,我敢说未来很可能会形成三个阵营并存的局面:1.纯粹的Docker(或者大部分由Docker组成)——这样的工具会用Go语言编写,会作为扩展出现现有的Docker项目。在这个阵营中,大多数占主导地位的框架很可能会由Docker自己提供(例如Swarm、Compose或Machine等)。2.特定基础设施——这些工具将主要负责提供映射到特定基础设施的核心功能。本次训练营主要针对那些打算纯粹在特定环境中部署应用程序的观众。AmazonCloudFormation和OpenStackHeat是这一类的典型代表。3、混合型——针对各种环境,其编排机制天然具有混合属性,包括大量Docker以外的其他技术栈,如Chef、Puppet、Ansible等,或者云,如VMware、OpenStack、AWS计划。我认为在这个阵营中,TOSCA很可能是最重要的特定编程选项,这也是由其内置的中立性决定的。问:纵观这场在温哥华举行的范围广泛的OpenStack峰会,最令您兴奋的是什么?您认为未来会出现在我们面前的哪些重大发展问题?A:在NFV(即网络功能虚拟化)和客户用例类别中,看到客户如何实际使用OpenStack是非常令人兴奋的。我当然希望听到更多关于OpenStack开发路线图的信息——只有当我们了解未来版本的计划时,才能进行更有针对性的讨论。***回答一个问题,网络:峰会一直是与开发人员和决策者建立联系的独特场所,在这里我们可以了解与人们接触和为OpenStack项目新闻做出贡献相关的兴奋.Q:作为OpenStack这样的项目,在以后的发展过程中需要注意哪些关键内容?Liberty版本会带来哪些新特性,尤其是在编排方面?A:我个人认为,如果OpenStack能够找到正确的路径,如果能引导更多的云服务提供商为其提供或增加支持,包括AWS、谷歌和微软Azure等,这个项目未来的成功将更有保证。被视为OpenStack的竞争对手。同样,如果OpenStack项目能够激励人们以类似于其他流行的开源项目的方式为其提供原生支持,那么它的未来也会更加光明。我认为到目前为止,大部分的焦点都集中在OpenStack作为Amazon替代品的可能性上。在我个人看来,这样的战略思考可能会导致OpenStack在大多数实际项目中没有立足之地。我认为VMware对OpenStack的支持就是一个很好的例子,证明了潜在竞争对手的基础设施也可以与OpenStack对接兼容。如果我们能够简化引导其他基础架构提供商将OpenStack兼容能力纳入OpenStackAPI的流程和难度,那么我们将取得的成就远远超过简单地将OpenStack作为一个可行的竞争替代方案。基本上,我认为包容性而不是排他性是最重要的,这是开源的基本原则。如果从编排机制的角度去思考,我觉得最好的办法就是把Heat做成其他编排框架的集成点,与OpenStack集成,也就是我们之前讲的框架方案。在这种情况下,为Heat添加TOSCA支持也将是开发中的正确步骤,让OpenStack通过Heat转换器项目迈出明确的下一步。在我看来,OpenStackKilo和Liberty带来的各种令人兴奋的特性都是关于整合许多最适合私有云环境或NFV的独特功能。其中包括对裸机(Ironic)的支持、即将推出的共享文件系统(Manila)以及允许用户进一步控制资源利用的高级调度规则。我个人认为Ironic在容器系统中的出现,将会把性能和资源利用率提升到一个新的高度,这样企业客户在讨论OpenStack项目的投资回报时,也能得到更有说服力的分析。综上所述。必须强调的是,我认为Kilo公告的核心信息是这些天OpenStack没有那么多新消息传出。显然,这个迹象证明OpenStack项目终于稳定下来,目前追求的是核心业务的完整性,而不是不断扩展到其他新领域。问:你还有什么要补充的吗?A:由于这次谈话的主题可能非常广泛,我欢迎提出意见或建议,告诉我们更多您感兴趣的领域。我也很高兴看到您使用OpenStack本身或相关工具的经验。你可以点击这里访问我的推特。总而言之,我希望我的谈话尽可能多地涵盖我的听众感兴趣的内容。另外,想借此机会提醒大家,其他一系列的OpenStack活动将会在世界各地举办,所以没能来温哥华的朋友们不要气馁。并且强烈建议未能到场的朋友点击此处查看相关日程。就在峰会之后,一场激动人心的OpenStackDays秀也将在欧洲、非洲和中东开启旅程。我将亲自参加OpenStack以色列会议,届时将有来自世界各地的演讲者分享他们的见解——最著名的是来自德国电信的AxelClauberg,在我看来,他主持的OpenStack项目是迄今为止最雄心勃勃的开发项目。原标题:如何在OpenStack中编排容器