SAMI:来自三星的基于Docker和Mesos的容器解决方案(一)

简介: 本文讲的是SAMI:来自三星的基于Docker和Mesos的容器解决方案(一),【编者的话】如今的容器技术就像当年的虚级化技术一样,改变了IT界的工作方式。今年5月底,三星推出了自己的开源平台SAMI,随着平台的发展,产生了一系列问题,容器热之下,三星选择顺应潮流,转向了Mesos和Docker。
本文讲的是SAMI:来自三星的基于Docker和Mesos的容器解决方案(一) 【编者的话】如今的容器技术就像当年的虚级化技术一样,改变了IT界的工作方式。今年5月底,三星推出了自己的开源平台SAMI,随着平台的发展,产生了一系列问题,容器热之下,三星选择顺应潮流,转向了Mesos和Docker。

每隔几年,就会出现一种革命性的新技术来改变IT世界的工作方式。十年之前,虚拟化技术的出现铺平了通往云服务和云计算的道路。现在,容器及其创造出的充满活力的生态系统劲头正猛。本文将向你展示三星如何基于 Mesos Docker 管理和运行物联网规模的计算基础设施的。

容器革命很大程度上要归因于DevOps的进步,更要归因于Docker的成功。容器是对流行的『 微服务 架构』的完美补充,正因如此,这也使得将软件应用设计为独立部署的服务成为可能。在三星,我们已经完全接受了这种新趋势。
1.jpg

SAMI是个非常复杂的平台,很多部分都是可替换和移动的。在撰写本文时,我们已有40多项内部服务(增加中),以及目前最流行的一些后端技术,其中包括NoSQL数据存储、消息代理、服务注册表、配置存储、图形数据库、HDFS、大数据处理器、内存缓存和传统SQL数据库。这个平台仍在不断发展,我们会不断引进新技术和应用来应对物联网所需的大数据处理过程中出现的问题和挑战。我们负责设计和管理支持其工作负载的基础设施,确保可扩展性、安全性和一致性,同时还要保持敏捷!

大约在一个月之前,我们把SAMI平台搬到Mesos和Docker上运行。可以把Mesos看做数据中心的内核,它抽象了所有的底层硬件和虚拟机,让你把数据中心当成一个超级大电脑来编程。同时,Docker作为容器化技术,简化了打包和搬运应用的方式。

这真正改变了我们对应用打包、部署、协调和监督的思考方式。这要求我们对自动化流水线进行彻底的重新设计,引进令人振奋的新技术的同时,也要淘汰许多老工具。

向容器技术推进

在容器成为家喻户晓的热门话题之前,我们曾有一个相当不错的全面自动化流水线,其核心是我们的配置管理(CM)系统。从配置到符合应用程序的部署,一切都通过我们的配置管理工具实现自动化。

但随着我们平台的增长,这些工具的缺点开始逐渐暴露出来。为了支持和衡量如SAMI般日益复杂的系统,一些新功能被迅速推出,我们意识到,我们急切需要一种新方法来部署和管理日益增多的微服务。

下面是一些需要解决的限制问题(注:这些都是CM工具中常有的陷阱,而未必是执行时常见的):
  1. 节点/机器专属角度(Node/Machine-specific perspective)
  2. 声明:Run ‘this’ on ‘that’ VM
  3. 静态分区
  4. 多租户需要手动配置
  5. 资源浪费
  6. 无资源隔离
  7. 配置和部署时间长
  8. 没有依赖/工作流管理:可以不执行“仅当部署Service-A之后且通过健康检查再部署Service-B”
  9. 无自愈功能:机器宕机,操作员需手动更换死亡节点
  10. 异构基础框架困难:几乎所有的cookbook/module/playbook都不能跨越两个发行版本
  11. 陡峭的学习曲线

要在物联网规模下运行一个现代平台,这些限制是我们不可接受的。

进入Mesos和Docker,帮忙扭转乾坤。在 《物联网级负载的容器:下》 中我们会解释SAMI中他是如何完成的。

原文链接:Containers for IoT-Scale Workloads: Part 1(翻译:马远征 审校:魏小红)

原文发布时间为:2015-07-16
本文作者:夕口夕
本文来自云栖社区合作伙伴DockerOne,了解相关信息可以关注DockerOne。
原文标题:SAMI:来自三星的基于Docker和Mesos的容器解决方案(一)
相关实践学习
阿里云AIoT物联网开发实战
本课程将由物联网专家带你熟悉阿里云AIoT物联网领域全套云产品,7天轻松搭建基于Arduino的端到端物联网场景应用。 开始学习前,请先开通下方两个云产品,让学习更流畅: IoT物联网平台:https://iot.console.aliyun.com/ LinkWAN物联网络管理平台:https://linkwan.console.aliyun.com/service-open
目录
相关文章
|
9月前
|
监控 Kubernetes 安全
还没搞懂Docker? Docker容器技术实战指南 ! 从入门到企业级应用 !
蒋星熠Jaxonic,技术探索者,以代码为笔,在二进制星河中书写极客诗篇。专注Docker与容器化实践,分享从入门到企业级应用的深度经验,助力开发者乘风破浪,驶向云原生新世界。
829 52
还没搞懂Docker? Docker容器技术实战指南 ! 从入门到企业级应用 !
|
9月前
|
NoSQL 算法 Redis
【Docker】(3)学习Docker中 镜像与容器数据卷、映射关系!手把手带你安装 MySql主从同步 和 Redis三主三从集群!并且进行主从切换与扩容操作,还有分析 哈希分区 等知识点!
Union文件系统(UnionFS)是一种**分层、轻量级并且高性能的文件系统**,它支持对文件系统的修改作为一次提交来一层层的叠加,同时可以将不同目录挂载到同一个虚拟文件系统下(unite several directories into a single virtual filesystem) Union 文件系统是 Docker 镜像的基础。 镜像可以通过分层来进行继承,基于基础镜像(没有父镜像),可以制作各种具体的应用镜像。
917 6
|
9月前
|
监控 Linux 调度
【赵渝强老师】Docker容器的资源管理机制
本文介绍了Linux CGroup技术及其在Docker资源管理中的应用。通过实例演示了如何利用CGroup限制应用程序的CPU、内存和I/O带宽使用,实现系统资源的精细化控制,帮助理解Docker底层资源限制机制。
845 6
|
9月前
|
存储 关系型数据库 MySQL
MySQL Docker 容器化部署全指南
MySQL是一款开源关系型数据库,广泛用于Web及企业应用。Docker容器化部署可解决环境不一致、依赖冲突问题,实现高效、隔离、轻量的MySQL服务运行,支持数据持久化与快速迁移,适用于开发、测试及生产环境。
1202 4
|
10月前
|
Kubernetes Devops Docker
Kubernetes 和 Docker Swarm:现代 DevOps 的理想容器编排工具
本指南深入解析 Kubernetes 与 Docker Swarm 两大主流容器编排工具,涵盖安装、架构、网络、监控等核心维度,助您根据团队能力与业务需求精准选型,把握云原生时代的技术主动权。
857 115
|
10月前
|
缓存 前端开发 Docker
Docker Layer Caching:加速你的容器构建
Docker Layer Caching:加速你的容器构建