容器集群部署 选好编排工具是关键

简介: 本文讲的是容器集群部署 选好编排工具是关键【IT168 评论】容器技术提供了组件化的环境,可以帮助业务应用在云之间轻松迁移而无需显著的返工。随着容器在企业持续获得发展,厂商将增加新的功能让用户可以创建可扩展的基于容器的环境。

本文讲的是容器集群部署 选好编排工具是关键【IT168 评论】容器技术提供了组件化的环境,可以帮助业务应用在云之间轻松迁移而无需显著的返工。随着容器在企业持续获得发展,厂商将增加新的功能让用户可以创建可扩展的基于容器的环境。然而,大范围控制容器部署也会有一些并发症。容器肯定是跟资源相匹配的。这些挑战会导致集群管理和编排的并发需求。

集群管理工具是一个通过图形界面或者通过命令行来帮助你管理一组集群的软件程序。有了这个工具,你就可以监控集群里的节点,配置services,管理整个集群服务器。集群管理可以从像发送工作到集群的低投入活动,到像负载均衡和可得性的高介入工作。

当前主流的容器集群管理技术,包括了 Docker 官方的 Docker Swarm、Twitter 背书的 Mesos 和 Google 背书的 Kubernetes。

容器集群部署  选好编排工具是关键

这些可选的编排工具有一些共同的特征,如容器配置、发布和发现、系统监控和故障恢复、声明式系统配置以及有关容器布置和性能的规则和约束定义机制。除此之外,有些工具还提供了处理特定需求的特性。

其中,由于Apache Mesos 只是一个分布式内核,目前的发展方向是数据中心操作系统,它同时支持 Marathon、Kubernetes 和 Swarm 等多种框架,连 Mesosphere 也是 Kubernetes 生态的一员,从编排的角度,讨论 Mesos 意义不大,故而只对比 Docker Swarm 和 Kubernetes。

来自Docker的原生解决方案

Docker Swarm的优点之一在于,它是一种原生解决方案――你可以使用Docker命令,实施Docker网络、插件和卷。Swarm管理器创建几个主节点,并为领导选举创建特定规则。万一首要的主节点出现故障,就可以实施这些管理机制。Swarm调度器拥有诸多过滤器,包括亲和标签和节点标签。过滤器可以将容器与底层节点联系起来,提高资源利用率、提升性能。

Swarm对用户来说,之前使用Docker的经验可以继承过来。非常容易上手,学习成本和二次开发成本都比较低。同时Swarm本身专注于Docker集群管理,非常轻量,占用资源也非常少。简单说,就是插件化机制,Swarm中的各个模块都抽象出了API,可以根据自己一些特点进行定制实现。

与所有的开源项目一样,Swarm项目也成立了自己的社区,参与社区的方法基本上和其他社区一致。当遇到问题时,可以在社区创建issue,然后描述问题,最好能上环境信息以及问题重现的步骤,这样有利于问题的定位。当然也可也直接通过IRC或者邮件直接交流。

经验老道的Kubernetes

另外一个非常重要的编排技术就是Kubernetes,前身是Borg,是Google 内部使用的集群管理工具,迄今已在 Google 生产环境中运行15年,说久经考验并不过分。

Kubernetes的开发者致力于保持它一直处于可访问、轻量级状态,并且易于使用。它可以在很多云环境中使用,包括私有云,公有云,多云端和混合云。Kubernetes可以在fly上进行自我修复,它以自动复制,自动再启动,自动定位为特色。它可以被不断扩展,它的特点是hookable,可插拔和模块化。

Kubernetes对计算资源进行了更高层次的抽象,通过将容器进行细致的组合,将最终的应用服务交给用户。Kubernetes在模型建立之初就考虑了容器跨机连接的要求,支持多种网络解决方案,同时在Service层次构建集群范围的SDN网络。其目的是将服务发现和负载均衡放置到容器可达的范围,这种透明的方式便利了各个服务间的通信,并为微服务架构的实践提供了平台基础。而在Pod层次上,作为Kubernetes可操作的最小对象,其特征更是对微服务架构的原生支持。

可以说,基于 Borg 成熟的经验打造的 Kubernetes,为容器编排管理提供了完整的开源方案,并且社区活跃,生态完善,积累了大量分布式、服务化系统架构的最佳实践,从目前的支持率上看,Kubernetes也是遥遥领先。

原文发布时间为:2017-05-02

本文作者:张存

本文来自云栖社区合作伙伴IT168,了解相关信息可以关注IT168

原文标题:容器集群部署 选好编排工具是关键

相关实践学习
深入解析Docker容器化技术
Docker是一个开源的应用容器引擎,让开发者可以打包他们的应用以及依赖包到一个可移植的容器中,然后发布到任何流行的Linux机器上,也可以实现虚拟化,容器是完全使用沙箱机制,相互之间不会有任何接口。Docker是世界领先的软件容器平台。开发人员利用Docker可以消除协作编码时“在我的机器上可正常工作”的问题。运维人员利用Docker可以在隔离容器中并行运行和管理应用,获得更好的计算密度。企业利用Docker可以构建敏捷的软件交付管道,以更快的速度、更高的安全性和可靠的信誉为Linux和Windows Server应用发布新功能。 在本套课程中,我们将全面的讲解Docker技术栈,从环境安装到容器、镜像操作以及生产环境如何部署开发的微服务应用。本课程由黑马程序员提供。     相关的阿里云产品:容器服务 ACK 容器服务 Kubernetes 版(简称 ACK)提供高性能可伸缩的容器应用管理能力,支持企业级容器化应用的全生命周期管理。整合阿里云虚拟化、存储、网络和安全能力,打造云端最佳容器化应用运行环境。 了解产品详情: https://www.aliyun.com/product/kubernetes
目录
相关文章
Linux CentOS 平台安装 rar unrar 命令
Linux CentOS 平台安装 rar unrar 命令
2025 0
|
负载均衡 架构师 Java
详细讲解OpenFeign的使用姿势!
学会使用Feign最贱优雅地调用服务
23584 9
详细讲解OpenFeign的使用姿势!
|
安全 Java API
阿里云——Java实现手机短信验证码功能
通过手机短信发送验证码,是最普遍、最安全验证用户真实身份的方式。目前,短信验证码广泛应用于用户注册、密码找回、登录保护、身份认证、随机密码、交易确认等应用场景。本文通过调用API开发一个短信验证码为例,带您了解如何实现短信验证码功能。
9435 7
阿里云——Java实现手机短信验证码功能
|
搜索推荐 物联网 智能硬件
智能穿戴设备的应用场景
智能穿戴设备的应用场景广泛且多样化,它们不仅提升了日常生活的便利性,还融入了健康管理和科技娱乐等多个方面。以下是一些具体的智能穿戴设备应用场景:
|
机器学习/深度学习 运维 自然语言处理
时序分析五边形战士!清华提出TimesNet:预测、填补、分类、检测全面领先|ICLR 2023(1)
时序分析五边形战士!清华提出TimesNet:预测、填补、分类、检测全面领先|ICLR 2023
1020 1
|
数据采集 人工智能 大数据
颠覆传统编程模式,Python异步编程:探索asyncio库的魅力
在传统编程中,我们习惯使用同步方式处理任务,但随着互联网和移动应用的快速发展,对于高性能和高并发的需求也日益增加。Python异步编程通过引入异步IO库,如asyncio,为我们提供了一种全新的解决方案。本文将深入探讨Python异步编程的原理和使用方法,重点介绍asyncio库的特性与优势,并分享一些最佳实践,帮助读者更好地利用异步编程提升代码性能和效率。
235 1
|
Cloud Native 分布式数据库
用户指南—实例管理—重启实例
当PolarDB-X实例出现连接数满或性能问题时,您可以在控制台上手动重启实例。本文将介绍如何重启实例。
146 0
|
网络安全 数据库
|
19天前
|
人工智能 自然语言处理 Shell
🦞 如何在 OpenClaw (Clawdbot/Moltbot) 配置阿里云百炼 API
本教程指导用户在开源AI助手Clawdbot中集成阿里云百炼API,涵盖安装Clawdbot、获取百炼API Key、配置环境变量与模型参数、验证调用等完整流程,支持Qwen3-max thinking (Qwen3-Max-2026-01-23)/Qwen - Plus等主流模型,助力本地化智能自动化。
32177 117
🦞 如何在 OpenClaw (Clawdbot/Moltbot) 配置阿里云百炼 API