Amazon为EC2容器服务提供自动缩放能力

Amazon将为自家的ECS服务提供自动缩放能力。借此Amazon ECS服务将能自动扩展或收缩。当阈值度量指标超过或低于预期值时,将由Amazon CloudWatch警报触发缩放事件。

Amazon ECS又名EC2容器服务,是一种针对Amazon EC2集群上运行的Docker容器提供的管理服务。Amazon已可支持EC2集群的自动缩放,但原本并不支持对EC2集群中运行的容器服务进行自动缩放。

自动缩放事件由Amazon Cloud Watch度量指标驱动。Amazon Cloud Watch度量指标包括CPU使用率、数据传输率,或磁盘使用量。开发者还可以通过put-metric-data这一AWS命令或PutMetricData Query API将自己的度量指标发布至CloudWatch。

例如用户可以对已部署并面临CPU压力的Web服务启用自动缩放。在该场景中,可以对容器进行扩展,随后一旦CPU压力恢复正常水平,开发者还可以配置缩放事件以减少容器数量,进而降低计算成本。

下图演示了在AWS管理控制台为容器和集群层面配置扩展和收缩的方法。在扩展和收缩时,缩放事件是通过CPU使用率级别触发的。

通过使用Multi-AZ (Availability Zone) EC2集群和Elastic Load Balancers,客户可以跨越多个Availability Zones对EC2集群和EC2容器服务进行缩放,这样可以实现进一步容错。Amazon Web Services企业解决方案架构师Mayank Thakkar介绍了设置自动缩放的过程:“可以使用ECS控制台、CLI,以及SDK创建可自动缩放的服务。用户只需要选择任务数量的所需值、最小值和最大值,并创建一个或多个缩放策略,其余工作就可以由Service Auto Scaling完成。服务调度器也可感知Availability Zone,因此无需担心ECS任务跨越多个区域的情况。”

Thakkar同时还提醒用户,EC2集群的缩放需要比容器缩放更长的时间,同时建议采取下列措施以便将延迟降到最低:“在设置集群缩放策略时,可以通过一定的方式确保额外预留一定的集群容量,这样ECS服务就可以实现更快速的扩展,但取决于具体需求,与此同时某些EC2实例可能面临使用率不足的情况。”

Amazon并非唯一能为容器服务提供自动缩放能力的公有云供应商。Microsoft Azure也通过Azure Virtual Machine Scale Sets (VMSS)的形式提供了类似的功能。Microsoft会通过Azure Insights Autoscale在无需预先供应虚拟机的情况下提供自动缩放能力。Azure VMSS不仅可用于容器,而且可以用于“大计算”和大数据工作负载。Azure VMSS通常可使用ARM模板部署,亦可使用REST API、Powershell 或 Azure CLI创建。
本文转自d1net(转载)

时间: 2024-09-20 06:06:18

Amazon为EC2容器服务提供自动缩放能力的相关文章

亚马逊推出 Blox,用于 EC2 容器服务的开源工具集合

通过 EC2 容器服务(ECS),亚马逊一直在其 AWS 云计算平台上提供对软件容器的支持.今天,在开发者大会上,亚马逊宣布了一些关于如何支持容器的更新,这些更新正迅速成为分布式应用程序的操作方式. 可以看到,不久,EC2 容器服务将变得更加可定制. 新的任务部署引擎将允许开发人员在某些可用区域中放置容器. 正如亚马逊 CTO Werner Vogels 在今天的主题演讲中所说的,"对于我们的很多客户,容器的管理和容器的执行,特别是如果使用一些开源软件,会相当的痛苦".ECS 的这些更

Amazon扩展EC2计算服务增云存储实力

Amazon的互联网服务部门最终将"持续存储"添加到了它的EC2计算服务中,以便增强它在云存储战略上的努力. 在几个星期的传言之后,该厂商今天推出了Elastic Block Storage(EBS:弹性块存储)产品,它声称该产品将增强它以互联网服务形式同时提供存储和计算功能的能力. 该厂商在两年前推出的Elastic Compute Cloud(EC2:弹性计算云)能够以互联网服务的形式为用户提供计算功能,起步价是每1.7GB存储10美分.但是,过去,用户只能将存储分配给实际正在运行

基于容器服务的持续集成与云端交付(三)- 从零搭建持续交付系统

前言 在上一篇文章中讨论了容器服务提供的交付能力,在本文中我们将讨论如何从零搭建一个持续交付系统. 对于大多数公司而言,选择一个合适自己的持续交付系统是尤为重要的一件事情,不同的公司.不同的业务使用的场景也各不相同,因此要根据自己的业务场景与发展方向来选择合适的方案.根据不同的业务场景与交付方式,阿里云容器服务提供了三种不同的持续交付方案. 基于Jenkins的持续交付方案 基于Jenkins的持续集成和持续交付方案是所有方案中最灵活.能力最强的方式,但也是需要客户自主运维的方案.对于现有提供持

Docker常见故障排查指南 - 阿里云容器服务

对于Docker的初学者而言,当容器或应用出现了问题不知从何入手进行排查.为此,我们准备了一个简单指南来帮助阿里云容器服务的用户进行故障排查. 由于阿里云容器服务完全兼容Docker Swarm,并支持使用原生Docker Client/API,所以很多内容对于 Docker/Docker Swarm的用户也是适用的. Docker问题分类 我们可以把Docker在使用中的问题分为如下几类, 安装故障:Docker Engine 无法正常配置使用 应用故障:应用执行状态与预期不一致 容器故障:无

在阿里云容器服务上开发基于Docker的Spring Cloud微服务应用(五)

服务智能路由 本文为阿里云容器服务Spring Cloud应用开发系列文章的第五篇,讨论如何利用Spring Cloud 对 Netflix Zuul支持,完成服务的职能路由功能. 一.在阿里云容器服务上开发Spring Cloud微服务应用 二.部署Spring Cloud应用示例 三.服务发现 四.服务间通信与集成 五.服务智能路由(本文) 六.集中配置管理 七.高可用和容错 八.监控和日志 九.服务的部署和发布策略 使用Zuul构建简单API Gateway 在手机端完成一个功能有可能需要

基于容器服务的持续集成与云端交付(一)- 交付之禅

前言 随着微服务架构与容器虚拟化技术的发展,持续集成与持续交付的概念又重新回到了大家的视野,越来越多的公司开始使用持续集成的系统来解决频繁发布带来的质量问题:使用持续交付的工具来实现代码在不同环境上的自动部署.原本有些学院派乌托邦式的思想正被千千万万次的集成与部署证明着它应有的价值.那么究竟是因为什么让持续集成与持续交付这个已经不再年轻的软件开发与交付的思想重新焕发绽放迷人的光彩呢? 传统软件交付之殇 传统软件的开发与交付的周期都很漫长,一款普通的企业软件通常需要十几个开发人员,几个月的时间来完

使用阿里云容器服务Jenkins实现持续集成和Docker镜像构建(updated on 2017.3.3)

持续集成作为敏捷开发重要的一步,其目的在于让产品快速迭代的同时,尽可能保持高质量.每一次代码更新,都要通过自动化测试来检测代码和功能的正确性,只有通过自动测试的代码才能进行后续的交付和部署.本文主要介绍如何将时下最流行的持续集成工具之一的Jenkins结合阿里云容器服务,实现自动测试和镜像构建推送. 接下来的演示是如何通过阿里云容器服务Jenkins实现自动测试和Docker镜像构建,实现高质量的持续集成.具体场景:每次代码提交到GitHub上的nodejs的项目中,阿里云容器服务Jenkins

在阿里云容器服务上创建Spring Boot应用之压测篇

  Spring Boot框架的第一个稳定版本是在2014年由Pivotal发布的,该框架的宗旨在于为基于Spring的Web应用提供快速设计开发,并追求小而美.约定胜于配置.快速开发.自包含且便捷.Spring Boot当前开发中的版本是1.4.   上一篇文章"在阿里云容器服务上创建第一个Spring Boot应用",讲述了如何通过Maven的Docker plugin上传镜像到阿里云的容器Hub,并通过阿里云的容器服务快速在云环境创建应用.本文将描述下,如果在阿里云环境里继续对这

利用Docker和阿里云容器服务部署高可用Ghost博客集群

简介 Ghost是一个流行的开源博客平台(Open source blogging platform),基于 Node.js 构建,博客内容默认采用 Markdown 语法书写,给用户提供一种更加纯粹的内容写作与发布平台. Ghost的部署和运维需要一定的Web开发基础,利用Docker技术可以大大简化Ghost的部署和更新.Docker Hub上面也提供了Ghost官方镜像 使用Docker镜像,不懂得Node.Js的同学也可以分分钟在本地或阿里云容器服务上搭建起一个单节点的Ghost博客,但