• 1
  • 2
  • 3
  • 4
  • 5
阿里云应用开发 首 页  »  帮助中心  »  云服务器  »  阿里云应用开发
公有云容器服务进入2.0时代--Amazon与Google容器方案对比
发布日期:2016-3-1 17:3:38

  近来Google、Amazon接连发布基于容器(其实主要是Docker)的新业务。

  2014.11.13 Amazon发布AWS Container Service

  2014.11.05 Google发布Google Container engine

  估计很快我们也将看到Azure的新容器服务发布了。

  若我们把之前IaaS公有云提供商(如阿里云)的产品看做容器服务1.0, 这轮新发布的产品相当于2.0升级版。

  在1.0中,各厂商引入API、CLI方式向用户提供在虚拟机中创建容器的简单能力。

  在2.0中,各厂商引入容器集群、业务(一组容器,Task/Pods)的概念。对基于容器开发的用户来说,似乎在淡化虚拟机存在。用户完全以容器的方式进行管理和业务发放。在资源不足的时候,才需往容器集群中增加新的节点(虚拟机)。

  目前国内厂商刚刚开始1.0的支持。

  Amazon与Google容器方案对比

  集群管理

  Google的Cluster有一组虚拟机组成,其中包含了一个master节点和多个node节点。Google选择了自己主导的kubernetes作为集群管理工具。Google提供了Replication Controller确保业务的多个实例的同时运行。用于提高业务的可靠性。

  Amazon的Cluster也是由一组虚拟机(在一个region,可以在多个AZ中)组成。每个集群可创建一个scheduler,负责容器在集群中的管理。

  镜像

  Amazon提供了ECS-Enabled AMI(其中包含了agent软件)供用户使用。后续第三方支持Google container service的AMI镜像也将提供。

  Google没有类似的暴露,而是直接帮助用户建立一个kubernetes CLuster。

  镜像仓库

  两者并未提供自己的Docker镜像仓库(可能国外网络条件比较好),都是使用外部docker hub或者第三方仓库。

  业务管理

  Google提供了Pods,用来管理一个包含多个容器的业务。Amazon提供给了Task Define定义一个包含多个容器的业务,Task是Task Define的实例。

  特别的

  Google还提供给了Service的概念。因为Pods都是临时的,随时可能失效。Service用来完成对Pods的路由,避免Pods消失带来的业务不可访问。

  使用过程

  Google

  创建Cluster

  创建Pods

  配置外网通信的firewall

  Amazon

  创建Cluster

  创建Task define,并注册到Cluster中

  创建虚拟机,并注册到CLuster中

  根据Task define创建若干个Task实例

  提供服务。然后监控cluster情况,进行Cluseter中虚拟机的增减

  原文出自:http://blog.csdn.net/halcyonbaby/article/details/41219863