BT

如何利用碎片时间提升技术认知与能力? 点击获取答案

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

| 作者 Kent Weare 关注 11 他的粉丝 ,译者 大愚若智 关注 9 他的粉丝 发布于 2016年6月14日. 估计阅读时间: 4 分钟 | QCon上海2018 关注大数据平台技术选型、搭建、系统迁移和优化的经验。

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使用率级别触发的。

 

图片来源:https://aws.amazon.com/blogs/compute/automatic-scaling-with-amazon-ecs/

通过使用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创建。

查看英文原文Amazon Brings Auto Scaling to EC2 Container Service

评价本文

专业度
风格

您好,朋友!

您需要 注册一个InfoQ账号 或者 才能进行评论。在您完成注册后还需要进行一些设置。

获得来自InfoQ的更多体验。

告诉我们您的想法

允许的HTML标签: a,b,br,blockquote,i,li,pre,u,ul,p

当有人回复此评论时请E-mail通知我
社区评论

允许的HTML标签: a,b,br,blockquote,i,li,pre,u,ul,p

当有人回复此评论时请E-mail通知我

允许的HTML标签: a,b,br,blockquote,i,li,pre,u,ul,p

当有人回复此评论时请E-mail通知我

讨论

登陆InfoQ,与你最关心的话题互动。


找回密码....

Follow

关注你最喜爱的话题和作者

快速浏览网站内你所感兴趣话题的精选内容。

Like

内容自由定制

选择想要阅读的主题和喜爱的作者定制自己的新闻源。

Notifications

获取更新

设置通知机制以获取内容更新对您而言是否重要

BT