本文中含有需要您注意的重要提示信息,忽略该信息可能对您的业务造成影响,请务必仔细阅读。
在创建Serverless集群后,您可以自定义该集群的资源扩缩策略,以控制集群弹性扩缩的上下限。
弹性扩缩
弹性扩展触发条件
纵向扩展
PolarDB主要监控主节点和只读节点的CPU使用率、内存使用率和其他内核层面指标。在监控周期内,出现如下三种情况中的任意一种时,通常会触发Serverless的纵向扩展:
您可以自定义CPU使用率的阈值(默认值为80%),当单节点的CPU使用率高于阈值时,会触发本节点资源的纵向扩展。
当单节点的内存使用率高于90%,会触发本节点资源的纵向扩展。
当单台只读节点的规格小于主节点规格的一半时,将会触发当前只读节点资源的纵向扩展。例如,当一台只读节点的规格为4 PCU,而主节点的规格为10 PCU时,就会触发这台只读节点资源的纵向扩展到不小于5 PCU的规格。
横向扩展
当集群中某个只读节点已经纵向扩展至设定上限,并且该只读节点的CPU使用率仍然满足纵向扩展的触发条件(即CPU使用率高于自定义阈值),则会触发只读节点的横向扩展。
弹性收缩触发条件
当单节点的CPU使用率低于自定义阈值(默认值为50%)且内存使用率低于80%时,会触发本节点资源收缩。
在不同的参数配置和Serverless配置下,用于判断弹性扩缩的指标不同。您可以自定义CPU使用率的阈值,但无法更改其他指标的阈值。
当集群的业务负载突增时,集群的节点并不是一次性扩缩到对应规格,而是不断地单次扩缩逐步接近当前负载的相应规格。单次扩缩的最小步长是0.5 PCU。为了能更快地适应当前业务流量,集群下次扩缩的步长会根据当前的PCU自动进行调整,扩大调整的步长。
注意事项
Serverless集群的最大连接数为100000,最大IOPS为84000。
Serverless采用PCU作为秒级计费和资源弹性的管理单位,其中1 PCU约等于1核2 GB内存的标准服务能力。节点的PCU将根据业务负载在您设定的上下限范围内进行动态调整,单次弹性的最小PCU单位为0.5 PCU。
设置Serverless配置参数
您可以登录PolarDB控制台,选择集群所在地域,在集群列表中单击目标集群ID进入详情页。在基本信息页面的数据库节点区域,单击Serverless配置,进行配置。
配置当前参数
在设置Serverless配置参数对话框中,单击编辑,设置相应参数。
当前参数
只读节点个数伸缩下限:设置允许只读节点增加的最小数量。取值范围:0~15。
只读节点个数伸缩上限:设置允许只读节点增加的最大数量。取值范围:0~15。
只读节点数量将根据实际业务负载在设置的下限与上限内自动增加或减少。详细扩缩策略,请参见弹性扩缩。
为了实现Serverless集群的高可用,建议将只读节点个数伸缩下限设置为1。
单节点伸缩下限:设置集群内每个节点的PCU数量下限。取值范围:1 PCU~31 PCU。
单节点伸缩上限:设置集群内每个节点的PCU数量的上限。取值范围:1 PCU~32 PCU。
Serverless采用PCU作为秒级计费和资源弹性的管理单位,其中1 PCU约等于1核2 GB内存的标准服务能力。节点的PCU将根据业务负载在您设定的上下限范围内进行动态调整,单次弹性的最小PCU单位为0.5 PCU。
示例:若您将单节点伸缩下限设置为2 PCU,单节点伸缩上限设置为16 PCU,则Serverless集群内主节点与只读节点的默认规格为2 PCU(约等于2核4 GB的资源)。当系统检测到业务负载增加时,将自动增加主节点或只读节点的PCU数量,但根据设置,最大只能提升至16 PCU(约等于16核32 GB的资源)。
只读列存节点个数:设置允许只读列存节点的数量。取值范围:0~15。
需确保Serverless集群中至少包含一个只读节点。即您需先将Serverless集群的只读节点个数伸缩下限设置为1,才可添加只读列存节点。
是否开启无活动暂停:如果您的数据库在某些时间段内没有业务请求,您可以选择开启自动启停功能。开启后,在设置的无活动暂停的检测时长之内,如果集群无业务连接,则集群自动进入暂停状态。暂停期间,存储空间仍按量付费。如果有任何业务连接接入集群,那么集群立刻自动启动。
无活动暂停的检测时长:检测时长为5分钟到24小时,且必须是5分钟的倍数。
高级配置
您可以根据当前Serverless集群的资源压力灵活调整高级配置参数。
弹性灵敏度:在灵敏模式下,Serverless资源对业务压力负载的响应时间更短,即更短的观察窗口和执行时间,选择下拉框设置标准或灵敏。
CPU弹升阈值(最大值):设置集群的CPU弹升阈值。取值范围:40~100%。
CPU弹降阈值(最小值):设置集群的CPU弹降阈值。取值范围:10~70%。
CPU弹降阈值不能超过CPU弹升阈值(最小值 < 最大值),且CPU弹升阈值与CPU弹降阈值的差需要大于等于30(最大值 - 最小值 >= 30)。
配置周期策略
在设置Serverless配置参数对话框中,单击+添加周期策略。
请谨慎操作:
删除Serverless周期策略时,无法撤销当前策略内正在执行的任务,尚未执行的任务会被删除。
如果在Serverless运行期间关闭Serverless功能,周期策略和定时任务将会被删除。
设置参数,具体参数说明如下:
参数名称
取值范围
参数名称
取值范围
单节点资源弹升上限(最大值)
1~32 PCU。
单节点资源弹升下限(最小值)
1~32 PCU,且最小值 ≤ 最大值。
只读节点个数伸缩上限
0~15个可选。
只读节点个数伸缩下限
0~15个可选,且不能大于只读节点个数伸缩上限的值。
只读列存节点个数
0~15个可选。
起止时间
周期策略的有效时间区间。
周期策略定时时间
周期策略的定时时间设置。
每月:选择在正数或倒数的特定天数及时间点进行执行。如果是多个天数,请用英文逗号
,
隔开,例如1,3,5
。每周:选择周一至周日的特定天数及时间点进行执行。
每天:选择每天特定时间点执行。
(可选)查询执行计划。执行计划详细查询可通过以下两种方式查看:
周期性策略和定时任务之间是派生关系,即周期性策略创建后,会按照策略生成定时任务。
周期性策略创建后可在集群详细页面查看。
请前往控制台任务管理下定时计划任务查看。
示例
场景描述:如果你想在8月1日至9月30日的每个工作日(例如:周一至周五)上午9点30分弹升资源5PCU,晚上10点弹缩资源1PCU执行周期策略,配置详情如下图所示:
- 本页导读 (1)
- 弹性扩缩
- 弹性扩展触发条件
- 弹性收缩触发条件
- 注意事项
- 设置Serverless配置参数
- 配置当前参数
- 配置周期策略