开发者社区 问答 正文

API快速入门怎么创建定时任务

创建伸缩任务(CreateScheduledTask),如创建 12:00 触发第四步伸缩规则的定时任务。在请求时,需要指定第四步返回的 ScalingRuleAri。

请求示例

  1. [backcolor=transparent]http[backcolor=transparent]:[backcolor=transparent]//ess.aliyuncs.com/?Action=CreateScheduledTask
  2. [backcolor=transparent]&[backcolor=transparent]RegionId[backcolor=transparent]=[backcolor=transparent]cn[backcolor=transparent]-[backcolor=transparent]qingdao
  3. [backcolor=transparent]&[backcolor=transparent]LaunchTime[backcolor=transparent]=[backcolor=transparent]2014[backcolor=transparent]-[backcolor=transparent]08[backcolor=transparent]-[backcolor=transparent]17T12[backcolor=transparent]:[backcolor=transparent]00Z
  4. [backcolor=transparent]&[backcolor=transparent]RecurrenceType[backcolor=transparent]=[backcolor=transparent]Daily
  5. [backcolor=transparent]&[backcolor=transparent]RecurrenceValue[backcolor=transparent]=[backcolor=transparent]1
  6. [backcolor=transparent]&[backcolor=transparent]RecurrenceEndTime[backcolor=transparent]=[backcolor=transparent]2014[backcolor=transparent]-[backcolor=transparent]09[backcolor=transparent]-[backcolor=transparent]17T16[backcolor=transparent]:[backcolor=transparent]55Z
  7. [backcolor=transparent]&[backcolor=transparent]ScheduledAction[backcolor=transparent]=[backcolor=transparent]ari[backcolor=transparent]:[backcolor=transparent]acs[backcolor=transparent]:[backcolor=transparent]ess[backcolor=transparent]:[backcolor=transparent]cn[backcolor=transparent]-[backcolor=transparent]qingdao[backcolor=transparent]:[backcolor=transparent]1344371[backcolor=transparent]:[backcolor=transparent]scalingrule[backcolor=transparent]/[backcolor=transparent]eMKWG8SRNb9dBLAjweNI1Ik
  8. [backcolor=transparent]&<公共请求参数>

返回示例
  1. [backcolor=transparent]<CreateScheduledTaskResponse>
  2. [backcolor=transparent]    [backcolor=transparent]<ScheduledTaskId>[backcolor=transparent]edRtShc57WGXdt8TlPbrjsnV[backcolor=transparent]</ScheduledTaskId>
  3. [backcolor=transparent]    [backcolor=transparent]<RequestId>[backcolor=transparent]0F02D931-2B12-44D7-A0E9-39925C13D15E[backcolor=transparent]</RequestId>
  4. [backcolor=transparent]</CreateScheduledTaskResponse>

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

在阿里云Elastic Compute Service (ECS) 的自动伸缩服务Auto Scaling中,创建一个定时任务(Scheduled Task)来触发特定的伸缩规则(Scaling Rule),是管理资源以应对业务负载变化的有效方式。根据您的描述,您希望在每天12:00时执行一个已有的伸缩规则(假设为ScalingRuleAri)。下面是如何使用API调用来实现这一需求的简要指南。

请求参数说明

在发送HTTP请求到阿里云Auto Scaling API以创建定时任务时,您需要提供一系列参数。以下是一些关键参数的解释:

  • Action: 必须设置为CreateScheduledTask,表示您想要执行的操作是创建一个新的定时任务。
  • ScalingGroupId: 您需要指定该定时任务关联的伸缩组ID,即这个定时任务将对哪个伸缩组生效。
  • **ScheduledAction`: 定义了定时任务的具体行为,包括时间、重复周期等。
    • StartTime: 定时任务开始执行的时间,格式通常为YYYY-MM-DDThh:mm:ssZ
    • RecurrenceType: 如果任务需要重复执行,此参数定义重复类型,如Daily, Weekly等。
    • RecurrenceValue: 对于按周重复的任务,此参数指定了哪几天执行;对于其他类型,可能代表重复间隔天数等。
    • LaunchTimeType: 设置为AtTime,因为您希望在特定时间点执行。
  • ScalingRuleAri: 这是您提到的关键参数,用于指定将被定时任务触发的伸缩规则ID。确保您已经正确获取了第四步返回的ScalingRuleAri

示例请求

基于上述说明,一个典型的API调用示例(使用cURL命令)如下所示。请替换<YourAccessKeyId><YourAccessKeySecret><RegionId><ScalingGroupId><ScalingRuleAri>为您的实际信息:

curl -X POST \
     'http://ess.aliyuncs.com/?Action=CreateScheduledTask\
     &Format=json\
     &Version=2014-08-28\
     &SignatureMethod=HMAC-SHA1\
     &SignatureNonce=<RandomString>\
     &SignatureVersion=1.0\
     &AccessKeyId=<YourAccessKeyId>\
     &Timestamp=$(date +%Y-%m-%dT%H:%M:%SZ)\
     &Signature=<GeneratedSignature>\
     &ScalingGroupId=<ScalingGroupId>\
     &ScheduledAction.StartTime=2023-10-01T12:00:00Z\
     &ScheduledAction.LaunchTimeType=AtTime\
     &ScheduledAction.RecurrenceType=Daily\
     &ScheduledAction.RecurrenceValue=1\
     &ScheduledAction.ScalingRuleAri=<ScalingRuleAri>' \
     -H 'Content-Type: application/x-www-form-urlencoded'

请注意,为了生成有效的签名(Signature),您需要使用阿里云提供的签名算法,这通常涉及到您的Access Key Secret和请求中的其他参数。您可以参考阿里云API签名文档来了解如何生成签名。

注意事项

  • 确保您有权限操作Auto Scaling服务及相应的伸缩组。
  • 检查时间格式是否正确,并且考虑到时区问题(阿里云API通常使用UTC时间)。
  • 在实际部署前,建议先在阿里云控制台或通过API Explorer尝试配置,以验证参数无误。
有帮助
无帮助
AI 助理回答生成答案可能存在不准确,仅供参考
0 条回答
写回答
取消 提交回答