应用弹性伸缩

关于弹性伸缩的详细介绍请查看弹性伸缩。若应用部署在虚拟机实例,弹性伸缩前请先创建待部署应用的虚拟机实例。

  1. 在左边导航树单击[产品与服务],在右边窗口选择[企业应用/应用管理]菜单项,进入应用管理页面。

  1. 在左侧导航树中单击[应用列表]菜单项,进入应用管理页面。或单击[应用管理/应用组]菜单项,进入应用组管理页面,单击应用组名称进入应用组详情页面。

  1. 单击应用名称链接,进入应用详情页面。

  1. 单击页面右上角的<弹性伸缩>按钮,弹出弹性伸缩窗口。

  1. 配置伸缩策略,参数说明如下表所示。

容器应用

参数

说明

容器实例数伸缩方式

自动伸缩:

  • CPU/内存使用率:当使用率达到配置阀值时,系统即会自动增减服务的Pod数量。

  • 您可能会发现,在查看应用详情中看到的CPU/内存使用率监控值还未达到设置的弹性伸缩阈值时就发生了弹性伸缩动作。这是因为对于弹性伸缩来说,CPU/内存使用率是由当前使用/容器request值计算出来的,而监控功能中的CPU/内存使用率是由当前使用/容器limit值计算出来的。只有在容器request值和容器limit值配置相同时,才能通过监控值是否达到阈值判断是否达到触发弹性伸缩的条件。因此在实际应用中,推荐如下配置方式:关键服务Pod的所有容器的requestlimit值相等,以确保PodQoS类为Guaranteed级别。非关键服务或者业务型服务,request值可以配的小一些,以确保在工作节点性能不足的时候,Pod还可以正常启动。关于PodQoS介绍请参见附录中的QoS章节。

  • HTTP请求速率:选择监控端口,设置其每秒请求数和最小/最大实例数,达到配置阀值时,系统即会自动增减服务的Pod数量。

  • 每秒请求数:每秒请求的最大数量。

  • 最小/最大实例数:该服务可用的最小或最大的Pod数量。

  • 注意:非微服务框架的应用在进行HTTP请求速率伸缩时,需要按照prometheus标准格式实现metrics接口,应用会根据metrics接口中定义的度量信息(主要需要实现http_requests开头的度量信息)对自身进行弹性伸缩。

  • metrics接口实现请参考链接

手动伸缩:手动设置服务的实例个数,保存后系统即调整实例数量至设置值。

定时伸缩:选择某个日期的某个时刻,并设置服务实例个数,到达触发时间系统即自动调整实例数量至设置值。

周期伸缩:选择一段时间范围,并设置一个触发时刻。在所选择的日期范围内,每天到达触发时刻时系统自动将实例数量调整至设置的预期值。

容器资源规格伸缩方式

容器的启动限制和运行限制。启动限制参数应小于运行限制参数。

  • 启动限制:容器“启动限制”的缺省值。容器启动时,服务器可分配给容器的资源(包括CPU和内存)不能低于“启动限制”中指定的数量。

  • 运行限制:容器“运行限制”的缺省值。容器运行时,占用的服务器资源(包括CPU和内存)不能高于容器“运行限制”中指定的数量。

 

主机应用

参数

说明

手动伸缩方式

1.     单击<添加实例>按钮,跳转至选择实例页面。根据搜索条件(虚拟机状态、所在可用域、IP地址、实例名称、已部署应用、查询条数)。

2.     单击<查询>按钮筛选出虚拟机实例,勾选一个或多个虚拟机并输入root用户密码,单击<确定>按钮后应用将部署到所选择的实例上。

手动伸缩:手动设置服务的实例个数,保存后系统即调整实例数量至设置值。

自动伸缩方式

开启“应用弹性伸缩”按钮,启用自动伸缩配置项,达到配置阀值时,系统即会自动增减服务的Pod数量。

  • 种子节点:资源扩展的模板虚拟机,达到扩展阈值后会按照此种子虚拟机的规格进行资源扩展。

  • 采集配置:配置检查的周期和次数。

  • 采集时间间隔(秒):后端服务多长时间对种子节点进行一次监控数据采集。

  • 冷却时间(秒):表示在扩展或者收缩后等待多长时间再进行下一次检查。

  • 最大检查次数:连续多少次达到伸缩条件方进行自动伸缩。

  • 扩展配置:在符合采集配置的规则下,监控CPU利用率、内存利用率、TCP连接数、最大后端服务数,任意指标达到阈值后则进行资源扩展。

  • 收缩配置:在符合采集配置的规则下,监控CPU利用率、内存利用率、TCP连接数,全部指标同时小于阈值后则进行资源回收。