应用弹性伸缩

关于弹性伸缩的详细介绍请查看弹性伸缩

操作步骤

  1. 将鼠标悬浮于[产品与服务]图标之上,在右边窗口选择[企业应用/企业应用]菜单项。

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

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

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

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

参数说明

参数

说明

伸缩方式/容器实例数

自动伸缩:

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

提示

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

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

  • 扩容/缩容策略:

  • 策略选择方式:当存在多个策略时,如果策略选择方式为“最大”,则系统会自动选择扩容/缩容速率最大的策略;如果策略选择方式为“最小”,则系统会自动选择扩容/缩容速率最小的策略;如果策略选择方式为“禁止”,则禁止扩容/缩容。

  • 稳定窗口时间:当系统达到自动扩容/缩容的阈值时,等待稳定窗口时间然后才会开启扩容/缩容。如果在稳定窗口时间内系统降到自动扩容/缩容的阈值则不会扩容/缩容,这样可避免快速扩容/缩容导致影响业务。

  • 扩容/缩容速率策略:当速率策略选择为“个数”时,“速率”表示扩容/缩容的最大Pod个数,“周期时间”表示进行扩容/缩容所花的时间;当速率策略选择为“百分比”时,“速率”表示扩容/缩容的当前Pod个数的百分比,单位为1%(比如填50就代表当前Pod个数的50%),“周期时间”表示进行扩容/缩容所花的时间。

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

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

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

提示

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

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

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

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

伸缩方式/容器资源规格

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

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

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

  • 开启GPU配额::配置容器使用的GPU资源。当目标集群安装了gpu-manager插件之后,企业应用在部署时支持配置GPU资源(包括显卡和显存,其中显卡1张卡划分为100,可以为0-100内的整数或100的倍数;显存一份是256Mi,配置必须为整数)。允许容器使用的所有GPU资源的上限(即运行限制,注意此项必须为整数,且设备支持GPU时才可配置此项)。平台版本升级后,应用对GPU资源的使用方式和限制方式发生改变,导致新的配置参数为空,请以新平台版本对于GPU资源的使用方式,在弹性伸缩窗口对GPU进行配置。