开发者社区 问答 正文

弹性伸缩的限制条件是什么?

弹性伸缩对用户有以下限制:


  • 弹性伸缩的 ECS 实例中部署的应用需要是无状态、可横向扩展的。

  • 由于弹性伸缩会自动释放 ECS 实例,所以用于弹性伸缩的 ECS 实例不可以保存应用的状态信息(如 session)和相关数据(如数据库、日志等)。如果应用中需要保存状态信息,可以考虑把状态信息保存到独立的状态服务器、数据库(如 RDS)及集中日志存储(如 Log)。

  • 弹性伸缩自动扩展出来的实例暂不支持直接自动添加到 OCS 访问白名单中,需要您自行添加。

  • 弹性伸缩目前不支持纵向扩展,即弹性伸缩暂时无法自动升降ECS实例的 CPU、内存和带宽。

  • 每个用户所能创建的伸缩组、伸缩配置、伸缩规则、伸缩 ECS 实例、定时任务的数量都有一定的限制。

展开
收起
反向一觉 2017-10-27 10:18:44 2743 分享 版权
阿里云 AI 助理回答

您提到的弹性伸缩(Auto Scaling)在阿里云上的确有一些使用限制,这些限制旨在确保服务的稳定性和高效运行。基于您的描述,我来进一步解析这些限制及相应的建议:

  1. 无状态应用:确实,弹性伸缩设计用于管理无状态应用,这意味着应用实例之间不共享状态信息。如果应用需要维护会话(session)等状态信息,推荐的做法是将这些信息存储在外部服务中,比如阿里云的云数据库RDS分布式缓存服务DCS表格存储Table Store,以及利用负载均衡SLB的会话保持功能。

  2. 数据与日志存储:应用的数据和日志不应直接保存在可能被弹性伸缩自动释放的ECS实例上。应该采用如对象存储OSS存放静态文件和日志,或者使用云数据库RDS、**AnalyticDB(原ADS)**等服务存储结构化数据。

  3. OCS访问白名单:虽然自动添加到OCS(假设这里指的是对象存储OSS)访问白名单的功能当前不支持,但可以通过API、CLI或控制台手动添加新创建的ECS实例到OSS的Bucket策略中,以允许它们访问指定的资源。

  4. 纵向扩展限制:阿里云的弹性伸缩目前专注于横向扩展,即根据需求增加或减少ECS实例的数量,而不是调整单个实例的配置(CPU、内存、带宽)。对于需要动态调整资源大小的场景,可以考虑使用ECS实例的变配功能手动调整,或者探索使用更灵活的容器服务ACK,通过Kubernetes的HPA(Horizontal Pod Autoscaler)实现一定程度上的资源自适应。

  5. 资源数量限制:每个阿里云用户账户在使用弹性伸缩时,确实存在对伸缩组、配置、规则等资源数量的上限。这些限制是为了保证服务质量和资源分配的合理性。如果您的业务规模或复杂度导致接近这些限制,可以通过阿里云客服申请提高限额,或者优化现有资源的使用效率,比如合并相似的伸缩配置,合理规划定时任务等。

了解并遵循这些限制,可以帮助您更好地设计和实施基于阿里云弹性伸缩的服务架构,确保系统的高可用性和可扩展性。如果有特定场景下的疑问或需要帮助,随时可以咨询阿里云的技术支持。

有帮助
无帮助
AI 助理回答生成答案可能存在不准确,仅供参考
0 条回答
写回答
取消 提交回答