首页 数据库自治服务 DAS API参考指南 API目录 智能压测 CreateCloudBenchTasks - 创建压测任务

CreateCloudBenchTasks - 创建压测任务

调用CreateCloudBenchTasks接口创建压测任务。

接口说明

数据库自治服务DAS提供智能压测功能,帮助您验证您的实例规格是否需要扩容,有效应对业务流量高峰。更多信息,请参见智能压测。数据库需满足如下前提条件:

  • 源数据库仅支持RDS MySQL高可用版或三节点企业版、PolarDB MySQL集群版或高压缩引擎(X-Engine)。
  • 目标数据库实例为RDS MySQL、PolarDB MySQL。
  • 实例已接入DAS,详情请参见接入阿里云数据库实例
  • 需开启DAS专业版,详情请参见DAS专业版

调试

您可以在OpenAPI Explorer中直接运行该接口,免去您计算签名的困扰。运行成功后,OpenAPI Explorer可以自动生成SDK代码示例。

调试

授权信息

下表是API对应的授权信息,可以在RAM权限策略语句的Action元素中使用,用来给RAM用户或RAM角色授予调用此API的权限。具体说明如下:

  • 操作:是指具体的权限点。
  • 访问级别:是指每个操作的访问级别,取值为写入(Write)、读取(Read)或列出(List)。
  • 资源类型:是指操作中支持授权的资源类型。具体说明如下:
    • 对于必选的资源类型,用背景高亮的方式表示。
    • 对于不支持资源级授权的操作,用全部资源表示。
  • 条件关键字:是指云产品自身定义的条件关键字。
  • 关联操作:是指成功执行操作所需要的其他权限。操作者必须同时具备关联操作的权限,操作才能成功。
操作访问级别资源类型条件关键字关联操作
hdm:CreateCloudBenchTasksWrite
  • DAS
    acs:hdm:*:{#accountId}:*

请求参数

名称类型必填描述示例值
TaskTypestring

压测任务类型。取值:

  • pressure test(默认):智能压测,将从源实例上捕获的流量,按照目标实例规格支持的极限速度,在目标实例上进行回放。
  • smart pressure test:生成压测,通过分析和学习短时间内在源实例上捕获的流量,生成和原始流量的业务模型和流量分布基本一致的流量进行持续压测,减少从源实例采集数据的时间,降低存储成本和性能开销。
pressure test
SrcInstanceIdstring

源实例ID,仅支持RDS MySQL、PolarDB MySQL实例,您可通过调用GetInstanceInspections接口获取。

说明DstTypeInstance时,本参数需要传入。
rm-2ze1jdv45i7l6****
Descriptionstring

压测任务描述。

test-das-bench-0501
SrcPublicIpstring

备用参数。

None
DstInstanceIdstring

目标实例ID,仅支持RDS MySQL、PolarDB MySQL实例,您可通过调用GetInstanceInspections接口获取。

说明DstTypeInstance时,本参数需要传入。
rm-2ze1jdv45i7l6****
GatewayVpcIdstring

数据库网关的专有网络ID。

说明ClientType取值为ECS,则此参数必传入。
vpc-t4nsnwvpbc1h76ja4****
GatewayVpcIpstring

数据库网关的IP地址或域名。

说明ClientType取值为ECS,则此参数必传入。
172.30.XX.XX
ClientTypestring

压测机器类型。取值:

  • ECS:您需要自己准备数据库网关
  • DAS_ECS:DAS自动购买和部署的ECS。
ECS
RequestStartTimestring

压测任务的开始时间,格式为Unix时间戳,单位为毫秒。

1608888296000
RequestEndTimestring

压测任务的结束时间,格式为Unix时间戳,单位为毫秒。

1608888296001
RequestDurationstring

压测任务的持续时间,单位为毫秒。

86400000
Ratestring

源实例流量在目标实例上的回放速度,回放速度必须是正整数,取值:1~30,默认为1

1
SmartPressureTimestring

生成压测的持续时间,单位为毫秒。

说明TaskTypesmart pressure test时本参数需要传入。
86400000
DtsJobClassstring

DTS迁移任务规格,您可以通过调用DescribeCloudbenchTask接口获取。

说明压测任务需要先将源实例基准数据迁移至目标实例,当您新建DTS任务时需要传入本参数。
medium
DtsJobIdstring

DTS迁移任务ID,您可调用ConfigureDtsJob接口获取。

说明已在DTS控制台创建完DTS任务时本参数必传入。
23127
SrcSuperAccountstring

源端实例高权限账号。取值:admin

说明DstTypeInstance时,本参数需要传入。
admin
SrcSuperPasswordstring

源端实例高权限账号的密码。

说明DstTypeInstance时,本参数需要传入。
test123
DstSuperAccountstring

目标实例的高权限账号。

root
DstSuperPasswordstring

目标实例高权限账号的密码。

test123
DstTypestring

目标实例的类型。取值:

  • Instance(默认):实例ID。
  • ConnectionString:实例的连接地址。
Instance
DstConnectionStringstring

目标实例的连接地址,仅支持RDS MySQL、PolarDB MySQL实例。

说明DstTypeConnectionString本参数有效。
rm-de21209****.mysql.rds.aliyuncs.com
DstPortstring

目标实例的端口。

说明DstTypeConnectionString本参数有效。
3306
WorkDirstring

压测生成的临时目录。

/tmp/bench/
BackupIdstring

备份集ID,可通过查询备份列表接口DescribeBackups获取。

229132
BackupTimestring

备份的时间。格式为:yyyy-MM-ddTHH:mm:ssZ(UTC时间)。

2021-04-23T13:22:14Z
Amountstring

创建压测任务的总个数,取值:0~30,默认为1

1
EndStatestring

压测任务结束后的状态。取值:

  • WAIT_TARGET:准备压测的目标实例。
  • WAIT_DBGATEWAY:准备压测部署。
  • WAIT_SQL:准备全量SQL。
  • WAIT_LOGIC:准备开始回放流量。
说明当压测任务执行完EndState设置的状态之后,任务将直接到达完成状态。
WAIT_TARGET

返回参数

名称类型描述示例值
object
Codestring

返回的状态码。

200
Messagestring

请求返回消息。

说明请求成功时该参数返回Successful,请求失败时会返回请求异常信息(如错误码等)。
Successful
RequestIdstring

请求ID。

B6D17591-B48B-4D31-9CD6-9B9796B2****
Successstring

请求是否执行成功:

  • true:执行成功。
  • false:执行失败。
true
Dataarray

详细信息列表。

string

详细信息列表,包括信息总数、错误码等。

"Data": { "total": 1, "list":[...] }, "Code": 200, "Success": true }

示例

正常返回示例

JSON格式

{
  "Code": "200",
  "Message": "Successful",
  "RequestId": "B6D17591-B48B-4D31-9CD6-9B9796B2****",
  "Success": "true",
  "Data": {
    "taskIds": [
      "\"Data\": { \"total\": 1, \"list\":[...] }, \"Code\": 200, \"Success\": true }"
    ]
  }
}

错误码

HTTP status code错误码错误信息描述
400InvalidParamsThe request parameters are invalid.请求参数错误

访问错误中心查看更多错误码。

阿里云首页 数据库自治服务 相关技术圈