ITPub博客

Container & Microservice

原创 服务器/存储 作者:fiona8953 时间:2018-09-13 09:52:26 0 删除 编辑

容器技术带来的好处:

  • 极其轻量:只打包了必要的Bin/Lib;

  • 秒级部署:根据镜像的不同,容器的部署大概在毫秒与秒之间;

  • 易于移植:一次构建,随处部署,因为本身是一个自包含镜像;

  • 弹性伸缩:Docker、Kubernetes、Mesos这类容器管理平台有着与生俱来的弹性管理能力;

Serverless -- Lambda是个事件驱动的弹性计算平台。用户可以写一段代码,AWS为其创建一个Lambda资源,这样,当指定的事件来临的时候,AWS的runtime会创建相应运行环境,执行代码,执行完毕(或者timeout)后,回收相应资源。

AWS Lambda是基于容器技术实现的,它把核心函数和服务包装成容器,相信也同样打包了用户代码,同时高度优化了容器的管理和调度,实现快速几乎实时的大规模scale out和scale down。也就是说,同样的业务场景,容器技术让AWS Lambda和IFTTT产生了完全不同效果。同样,也正是容器易于部署,编排的特性,让用户专注于应用本身而不是计算资源的管理,这就催生了Serverless的概念。

Lacalytics的例子很好说明了容器技术以应用/服务为中心的(application centric),而传统基于虚拟化技术的云平台是以机器(虚拟或真实的物理资源)为中心,后者势必让我们去考虑很多所谓DevOps的工作,而显然那将是需要不断提高但却永无止境的付出。

Immutable Infrastructure (不可变基础架构)-- 所谓不可变基础架构,就是说系统一旦部署,就不再更变升级。当服务/应用需要升级时,只要部署一个新版系统,摧毁旧版就好了。在这个过程中,系统对外服务几乎是持续的。

  1. Automate the setup and deployment for every part and every layer of your infrastructure.

  2. Never change any part of your system once it is deployed. If you need to change it, deploy a new system.

Immutable Infrastructure vs. Artisanal Infrastructure  (手工艺架构)


Microservice架构

微服务的几个主要特征:

  • 组件化的服务(封装)

  • 围绕业务能力组织

  • 是独立产品不是项目

  • 简化的通讯与连接

  • 去中心管理

  • 去中心数据管理

  • 基础架构自动化

  • 容错设计

  • 递进设计

从这些特性看,容器技术及其相关的编排管理框架是得它成为实现Microservice架构最自然的载体。比如,通常一个Container镜像是一个应用/服务的独立完整的封装,一般要求是Stateless,而且从管理角度看,Container平台都提供自动化的生命周期,scale out和scale down的管理。


Amazon Container Cheat Sheet

Amazon ECS VS  Amazon EKS VS  AWS Fargate

来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/26477398/viewspace-2214084/,如需转载,请注明出处,否则将追究法律责任。

上一篇: AWS Networking
下一篇: GCP
请登录后发表评论 登录
全部评论

注册时间:2014-06-13

  • 博文量
    283
  • 访问量
    174233