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

本文涉及的产品
容器镜像服务 ACR,镜像仓库100个 不限时长
容器服务 Serverless 版 ACK Serverless,952元额度 多规格
容器服务 Serverless 版 ACK Serverless,317元额度 多规格
简介: 本文讲的是容器集群部署 选好编排工具是关键【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

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

相关实践学习
通过Ingress进行灰度发布
本场景您将运行一个简单的应用,部署一个新的应用用于新的发布,并通过Ingress能力实现灰度发布。
容器应用与集群管理
欢迎来到《容器应用与集群管理》课程,本课程是“云原生容器Clouder认证“系列中的第二阶段。课程将向您介绍与容器集群相关的概念和技术,这些概念和技术可以帮助您了解阿里云容器服务ACK/ACK Serverless的使用。同时,本课程也会向您介绍可以采取的工具、方法和可操作步骤,以帮助您了解如何基于容器服务ACK Serverless构建和管理企业级应用。 学习完本课程后,您将能够: 掌握容器集群、容器编排的基本概念 掌握Kubernetes的基础概念及核心思想 掌握阿里云容器服务ACK/ACK Serverless概念及使用方法 基于容器服务ACK Serverless搭建和管理企业级网站应用
目录
相关文章
|
10月前
|
Kubernetes API 调度
容器编排工具有哪些
容器编排工具有哪些
|
2月前
|
负载均衡 监控 持续交付
|
3月前
|
存储 运维 Kubernetes
容器镜像的构建与管理实践
在云原生时代,容器技术已成为现代软件开发和运维不可或缺的一部分。本文将深入探讨容器镜像的构建流程、管理策略以及安全性考量,旨在为读者提供一套系统化的容器镜像管理方案。我们将从实际案例出发,分析容器镜像构建的最佳实践,同时指出常见的陷阱与误区。此外,文章还将介绍如何有效利用现有的工具和平台来提升容器镜像的安全性和管理效率,确保在快速迭代的开发周期中,能够维护镜像的一致性和可靠性。
68 0
|
Kubernetes 负载均衡 Apache
容器编排:现代应用部署的完美解决方案
容器编排是现代应用开发和部署的关键组成部分,它可以极大地简化应用的管理和扩展。本文将详细介绍容器编排的概念、工作原理以及为什么它如此重要。
|
Ubuntu Shell Linux
容器学习实验(2)——容器的快速启动方式
本文介绍了容器学习实验的基本操作和启动方法。详细说明了容器的启动步骤和注意事项,介绍了容器操作的基本方法和注意事项。通过本文的学习,读者可以掌握容器学习实验的基本技能和知识。
|
容器
《阿里云产品手册2022-2023 版》——弹性容器实例
《阿里云产品手册2022-2023 版》——弹性容器实例
|
运维 Kubernetes 监控
最强swarm集群一键部署+氢弹级容器管理工具介绍
k8s越来越重!越来越重!越来越重………… 大版本一年更新两三个!不算周边生态的更新迭代! 不过也好,催生出不少k8s运维工程师的岗位,薪资待遇还不错! 之前一直在跟大家聊k8s也实时更新了其重要版本的一键部署脚本!最起码让大家入门不至于那么困难!
|
存储 监控 Cloud Native
阿里云容器服务集群应用管理 | 学习笔记
快速学习阿里云容器服务集群应用管理
287 0
阿里云容器服务集群应用管理 | 学习笔记
|
运维 Cloud Native Linux
【云原生 | 拓展02】在单台宿主机上管理Docker容器
Docker依赖的技术实际上已经以不同形式存在一段时间了,但Docker是那个成功抓住技术行业兴趣点的解决方案。这把Docker推到了一个令人羡慕不已的位置——社区先驱们完成
130 0
【云原生 | 拓展02】在单台宿主机上管理Docker容器
|
分布式计算 资源调度 Kubernetes
K8S 初识_容器管理工具及容器编排管理工具介绍 | 学习笔记
快速学习 K8S 初识_容器管理工具及容器编排管理工具介绍
276 0