@alicloud/ess20220222 1.0.2 → 1.0.4

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/client.js CHANGED
@@ -230,6 +230,7 @@ class AttachLoadBalancersRequest extends $tea.Model {
230
230
  async: 'Async',
231
231
  clientToken: 'ClientToken',
232
232
  forceAttach: 'ForceAttach',
233
+ loadBalancerConfigs: 'LoadBalancerConfigs',
233
234
  loadBalancers: 'LoadBalancers',
234
235
  ownerId: 'OwnerId',
235
236
  resourceOwnerAccount: 'ResourceOwnerAccount',
@@ -241,6 +242,7 @@ class AttachLoadBalancersRequest extends $tea.Model {
241
242
  async: 'boolean',
242
243
  clientToken: 'string',
243
244
  forceAttach: 'boolean',
245
+ loadBalancerConfigs: { 'type': 'array', 'itemType': AttachLoadBalancersRequestLoadBalancerConfigs },
244
246
  loadBalancers: { 'type': 'array', 'itemType': 'string' },
245
247
  ownerId: 'number',
246
248
  resourceOwnerAccount: 'string',
@@ -287,6 +289,72 @@ class AttachLoadBalancersResponse extends $tea.Model {
287
289
  }
288
290
  }
289
291
  exports.AttachLoadBalancersResponse = AttachLoadBalancersResponse;
292
+ class AttachServerGroupsRequest extends $tea.Model {
293
+ constructor(map) {
294
+ super(map);
295
+ }
296
+ static names() {
297
+ return {
298
+ clientToken: 'ClientToken',
299
+ forceAttach: 'ForceAttach',
300
+ ownerId: 'OwnerId',
301
+ regionId: 'RegionId',
302
+ resourceOwnerAccount: 'ResourceOwnerAccount',
303
+ scalingGroupId: 'ScalingGroupId',
304
+ serverGroups: 'ServerGroups',
305
+ };
306
+ }
307
+ static types() {
308
+ return {
309
+ clientToken: 'string',
310
+ forceAttach: 'boolean',
311
+ ownerId: 'number',
312
+ regionId: 'string',
313
+ resourceOwnerAccount: 'string',
314
+ scalingGroupId: 'string',
315
+ serverGroups: { 'type': 'array', 'itemType': AttachServerGroupsRequestServerGroups },
316
+ };
317
+ }
318
+ }
319
+ exports.AttachServerGroupsRequest = AttachServerGroupsRequest;
320
+ class AttachServerGroupsResponseBody extends $tea.Model {
321
+ constructor(map) {
322
+ super(map);
323
+ }
324
+ static names() {
325
+ return {
326
+ requestId: 'RequestId',
327
+ scalingActivityId: 'ScalingActivityId',
328
+ };
329
+ }
330
+ static types() {
331
+ return {
332
+ requestId: 'string',
333
+ scalingActivityId: 'string',
334
+ };
335
+ }
336
+ }
337
+ exports.AttachServerGroupsResponseBody = AttachServerGroupsResponseBody;
338
+ class AttachServerGroupsResponse extends $tea.Model {
339
+ constructor(map) {
340
+ super(map);
341
+ }
342
+ static names() {
343
+ return {
344
+ headers: 'headers',
345
+ statusCode: 'statusCode',
346
+ body: 'body',
347
+ };
348
+ }
349
+ static types() {
350
+ return {
351
+ headers: { 'type': 'map', 'keyType': 'string', 'valueType': 'string' },
352
+ statusCode: 'number',
353
+ body: AttachServerGroupsResponseBody,
354
+ };
355
+ }
356
+ }
357
+ exports.AttachServerGroupsResponse = AttachServerGroupsResponse;
290
358
  class AttachVServerGroupsRequest extends $tea.Model {
291
359
  constructor(map) {
292
360
  super(map);
@@ -351,6 +419,68 @@ class AttachVServerGroupsResponse extends $tea.Model {
351
419
  }
352
420
  }
353
421
  exports.AttachVServerGroupsResponse = AttachVServerGroupsResponse;
422
+ class ChangeResourceGroupRequest extends $tea.Model {
423
+ constructor(map) {
424
+ super(map);
425
+ }
426
+ static names() {
427
+ return {
428
+ newResourceGroupId: 'NewResourceGroupId',
429
+ ownerId: 'OwnerId',
430
+ regionId: 'RegionId',
431
+ resourceId: 'ResourceId',
432
+ resourceOwnerAccount: 'ResourceOwnerAccount',
433
+ resourceType: 'ResourceType',
434
+ };
435
+ }
436
+ static types() {
437
+ return {
438
+ newResourceGroupId: 'string',
439
+ ownerId: 'number',
440
+ regionId: 'string',
441
+ resourceId: 'string',
442
+ resourceOwnerAccount: 'string',
443
+ resourceType: 'string',
444
+ };
445
+ }
446
+ }
447
+ exports.ChangeResourceGroupRequest = ChangeResourceGroupRequest;
448
+ class ChangeResourceGroupResponseBody extends $tea.Model {
449
+ constructor(map) {
450
+ super(map);
451
+ }
452
+ static names() {
453
+ return {
454
+ requestId: 'RequestId',
455
+ };
456
+ }
457
+ static types() {
458
+ return {
459
+ requestId: 'string',
460
+ };
461
+ }
462
+ }
463
+ exports.ChangeResourceGroupResponseBody = ChangeResourceGroupResponseBody;
464
+ class ChangeResourceGroupResponse extends $tea.Model {
465
+ constructor(map) {
466
+ super(map);
467
+ }
468
+ static names() {
469
+ return {
470
+ headers: 'headers',
471
+ statusCode: 'statusCode',
472
+ body: 'body',
473
+ };
474
+ }
475
+ static types() {
476
+ return {
477
+ headers: { 'type': 'map', 'keyType': 'string', 'valueType': 'string' },
478
+ statusCode: 'number',
479
+ body: ChangeResourceGroupResponseBody,
480
+ };
481
+ }
482
+ }
483
+ exports.ChangeResourceGroupResponse = ChangeResourceGroupResponse;
354
484
  class CompleteLifecycleActionRequest extends $tea.Model {
355
485
  constructor(map) {
356
486
  super(map);
@@ -787,6 +917,7 @@ class CreateScalingConfigurationRequest extends $tea.Model {
787
917
  }
788
918
  static names() {
789
919
  return {
920
+ imageOptions: 'ImageOptions',
790
921
  privatePoolOptions: 'PrivatePoolOptions',
791
922
  systemDisk: 'SystemDisk',
792
923
  affinity: 'Affinity',
@@ -841,6 +972,7 @@ class CreateScalingConfigurationRequest extends $tea.Model {
841
972
  }
842
973
  static types() {
843
974
  return {
975
+ imageOptions: CreateScalingConfigurationRequestImageOptions,
844
976
  privatePoolOptions: CreateScalingConfigurationRequestPrivatePoolOptions,
845
977
  systemDisk: CreateScalingConfigurationRequestSystemDisk,
846
978
  affinity: 'string',
@@ -901,6 +1033,7 @@ class CreateScalingConfigurationShrinkRequest extends $tea.Model {
901
1033
  }
902
1034
  static names() {
903
1035
  return {
1036
+ imageOptions: 'ImageOptions',
904
1037
  privatePoolOptions: 'PrivatePoolOptions',
905
1038
  systemDisk: 'SystemDisk',
906
1039
  affinity: 'Affinity',
@@ -955,6 +1088,7 @@ class CreateScalingConfigurationShrinkRequest extends $tea.Model {
955
1088
  }
956
1089
  static types() {
957
1090
  return {
1091
+ imageOptions: CreateScalingConfigurationShrinkRequestImageOptions,
958
1092
  privatePoolOptions: CreateScalingConfigurationShrinkRequestPrivatePoolOptions,
959
1093
  systemDisk: CreateScalingConfigurationShrinkRequestSystemDisk,
960
1094
  affinity: 'string',
@@ -1071,6 +1205,7 @@ class CreateScalingGroupRequest extends $tea.Model {
1071
1205
  launchTemplateOverrides: 'LaunchTemplateOverrides',
1072
1206
  launchTemplateVersion: 'LaunchTemplateVersion',
1073
1207
  lifecycleHooks: 'LifecycleHooks',
1208
+ loadBalancerConfigs: 'LoadBalancerConfigs',
1074
1209
  loadBalancerIds: 'LoadBalancerIds',
1075
1210
  maxInstanceLifetime: 'MaxInstanceLifetime',
1076
1211
  maxSize: 'MaxSize',
@@ -1082,9 +1217,11 @@ class CreateScalingGroupRequest extends $tea.Model {
1082
1217
  ownerId: 'OwnerId',
1083
1218
  regionId: 'RegionId',
1084
1219
  removalPolicies: 'RemovalPolicies',
1220
+ resourceGroupId: 'ResourceGroupId',
1085
1221
  resourceOwnerAccount: 'ResourceOwnerAccount',
1086
1222
  scalingGroupName: 'ScalingGroupName',
1087
1223
  scalingPolicy: 'ScalingPolicy',
1224
+ serverGroups: 'ServerGroups',
1088
1225
  spotAllocationStrategy: 'SpotAllocationStrategy',
1089
1226
  spotInstancePools: 'SpotInstancePools',
1090
1227
  spotInstanceRemedy: 'SpotInstanceRemedy',
@@ -1115,6 +1252,7 @@ class CreateScalingGroupRequest extends $tea.Model {
1115
1252
  launchTemplateOverrides: { 'type': 'array', 'itemType': CreateScalingGroupRequestLaunchTemplateOverrides },
1116
1253
  launchTemplateVersion: 'string',
1117
1254
  lifecycleHooks: { 'type': 'array', 'itemType': CreateScalingGroupRequestLifecycleHooks },
1255
+ loadBalancerConfigs: { 'type': 'array', 'itemType': CreateScalingGroupRequestLoadBalancerConfigs },
1118
1256
  loadBalancerIds: 'string',
1119
1257
  maxInstanceLifetime: 'number',
1120
1258
  maxSize: 'number',
@@ -1126,9 +1264,11 @@ class CreateScalingGroupRequest extends $tea.Model {
1126
1264
  ownerId: 'number',
1127
1265
  regionId: 'string',
1128
1266
  removalPolicies: { 'type': 'array', 'itemType': 'string' },
1267
+ resourceGroupId: 'string',
1129
1268
  resourceOwnerAccount: 'string',
1130
1269
  scalingGroupName: 'string',
1131
1270
  scalingPolicy: 'string',
1271
+ serverGroups: { 'type': 'array', 'itemType': CreateScalingGroupRequestServerGroups },
1132
1272
  spotAllocationStrategy: 'string',
1133
1273
  spotInstancePools: 'number',
1134
1274
  spotInstanceRemedy: 'boolean',
@@ -1187,6 +1327,7 @@ class CreateScalingRuleRequest extends $tea.Model {
1187
1327
  return {
1188
1328
  adjustmentType: 'AdjustmentType',
1189
1329
  adjustmentValue: 'AdjustmentValue',
1330
+ alarmDimensions: 'AlarmDimensions',
1190
1331
  cooldown: 'Cooldown',
1191
1332
  disableScaleIn: 'DisableScaleIn',
1192
1333
  estimatedInstanceWarmup: 'EstimatedInstanceWarmup',
@@ -1214,6 +1355,7 @@ class CreateScalingRuleRequest extends $tea.Model {
1214
1355
  return {
1215
1356
  adjustmentType: 'string',
1216
1357
  adjustmentValue: 'number',
1358
+ alarmDimensions: { 'type': 'array', 'itemType': CreateScalingRuleRequestAlarmDimensions },
1217
1359
  cooldown: 'number',
1218
1360
  disableScaleIn: 'boolean',
1219
1361
  estimatedInstanceWarmup: 'number',
@@ -2243,6 +2385,7 @@ class DescribeLimitationResponseBody extends $tea.Model {
2243
2385
  maxNumberOfLoadBalancers: 'MaxNumberOfLoadBalancers',
2244
2386
  maxNumberOfMaxSize: 'MaxNumberOfMaxSize',
2245
2387
  maxNumberOfMinSize: 'MaxNumberOfMinSize',
2388
+ maxNumberOfNlbServerGroup: 'MaxNumberOfNlbServerGroup',
2246
2389
  maxNumberOfNotificationConfigurations: 'MaxNumberOfNotificationConfigurations',
2247
2390
  maxNumberOfScalingConfigurations: 'MaxNumberOfScalingConfigurations',
2248
2391
  maxNumberOfScalingGroups: 'MaxNumberOfScalingGroups',
@@ -2261,6 +2404,7 @@ class DescribeLimitationResponseBody extends $tea.Model {
2261
2404
  maxNumberOfLoadBalancers: 'number',
2262
2405
  maxNumberOfMaxSize: 'number',
2263
2406
  maxNumberOfMinSize: 'number',
2407
+ maxNumberOfNlbServerGroup: 'number',
2264
2408
  maxNumberOfNotificationConfigurations: 'number',
2265
2409
  maxNumberOfScalingConfigurations: 'number',
2266
2410
  maxNumberOfScalingGroups: 'number',
@@ -2699,6 +2843,7 @@ class DescribeScalingGroupsRequest extends $tea.Model {
2699
2843
  pageNumber: 'PageNumber',
2700
2844
  pageSize: 'PageSize',
2701
2845
  regionId: 'RegionId',
2846
+ resourceGroupId: 'ResourceGroupId',
2702
2847
  resourceOwnerAccount: 'ResourceOwnerAccount',
2703
2848
  resourceOwnerId: 'ResourceOwnerId',
2704
2849
  scalingGroupIds: 'ScalingGroupIds',
@@ -2714,6 +2859,7 @@ class DescribeScalingGroupsRequest extends $tea.Model {
2714
2859
  pageNumber: 'number',
2715
2860
  pageSize: 'number',
2716
2861
  regionId: 'string',
2862
+ resourceGroupId: 'string',
2717
2863
  resourceOwnerAccount: 'string',
2718
2864
  resourceOwnerId: 'number',
2719
2865
  scalingGroupIds: { 'type': 'array', 'itemType': 'string' },
@@ -3287,6 +3433,72 @@ class DetachLoadBalancersResponse extends $tea.Model {
3287
3433
  }
3288
3434
  }
3289
3435
  exports.DetachLoadBalancersResponse = DetachLoadBalancersResponse;
3436
+ class DetachServerGroupsRequest extends $tea.Model {
3437
+ constructor(map) {
3438
+ super(map);
3439
+ }
3440
+ static names() {
3441
+ return {
3442
+ clientToken: 'ClientToken',
3443
+ forceDetach: 'ForceDetach',
3444
+ ownerId: 'OwnerId',
3445
+ regionId: 'RegionId',
3446
+ resourceOwnerAccount: 'ResourceOwnerAccount',
3447
+ scalingGroupId: 'ScalingGroupId',
3448
+ serverGroups: 'ServerGroups',
3449
+ };
3450
+ }
3451
+ static types() {
3452
+ return {
3453
+ clientToken: 'string',
3454
+ forceDetach: 'boolean',
3455
+ ownerId: 'number',
3456
+ regionId: 'string',
3457
+ resourceOwnerAccount: 'string',
3458
+ scalingGroupId: 'string',
3459
+ serverGroups: { 'type': 'array', 'itemType': DetachServerGroupsRequestServerGroups },
3460
+ };
3461
+ }
3462
+ }
3463
+ exports.DetachServerGroupsRequest = DetachServerGroupsRequest;
3464
+ class DetachServerGroupsResponseBody extends $tea.Model {
3465
+ constructor(map) {
3466
+ super(map);
3467
+ }
3468
+ static names() {
3469
+ return {
3470
+ requestId: 'RequestId',
3471
+ scalingActivityId: 'ScalingActivityId',
3472
+ };
3473
+ }
3474
+ static types() {
3475
+ return {
3476
+ requestId: 'string',
3477
+ scalingActivityId: 'string',
3478
+ };
3479
+ }
3480
+ }
3481
+ exports.DetachServerGroupsResponseBody = DetachServerGroupsResponseBody;
3482
+ class DetachServerGroupsResponse extends $tea.Model {
3483
+ constructor(map) {
3484
+ super(map);
3485
+ }
3486
+ static names() {
3487
+ return {
3488
+ headers: 'headers',
3489
+ statusCode: 'statusCode',
3490
+ body: 'body',
3491
+ };
3492
+ }
3493
+ static types() {
3494
+ return {
3495
+ headers: { 'type': 'map', 'keyType': 'string', 'valueType': 'string' },
3496
+ statusCode: 'number',
3497
+ body: DetachServerGroupsResponseBody,
3498
+ };
3499
+ }
3500
+ }
3501
+ exports.DetachServerGroupsResponse = DetachServerGroupsResponse;
3290
3502
  class DetachVServerGroupsRequest extends $tea.Model {
3291
3503
  constructor(map) {
3292
3504
  super(map);
@@ -4109,6 +4321,7 @@ class ModifyEciScalingConfigurationRequest extends $tea.Model {
4109
4321
  autoMatchImageCache: 'AutoMatchImageCache',
4110
4322
  containerGroupName: 'ContainerGroupName',
4111
4323
  containers: 'Containers',
4324
+ containersUpdateType: 'ContainersUpdateType',
4112
4325
  costOptimization: 'CostOptimization',
4113
4326
  cpu: 'Cpu',
4114
4327
  cpuOptionsCore: 'CpuOptionsCore',
@@ -4157,6 +4370,7 @@ class ModifyEciScalingConfigurationRequest extends $tea.Model {
4157
4370
  autoMatchImageCache: 'boolean',
4158
4371
  containerGroupName: 'string',
4159
4372
  containers: { 'type': 'array', 'itemType': ModifyEciScalingConfigurationRequestContainers },
4373
+ containersUpdateType: 'string',
4160
4374
  costOptimization: 'boolean',
4161
4375
  cpu: 'number',
4162
4376
  cpuOptionsCore: 'number',
@@ -4379,6 +4593,7 @@ class ModifyScalingConfigurationRequest extends $tea.Model {
4379
4593
  }
4380
4594
  static names() {
4381
4595
  return {
4596
+ imageOptions: 'ImageOptions',
4382
4597
  privatePoolOptions: 'PrivatePoolOptions',
4383
4598
  systemDisk: 'SystemDisk',
4384
4599
  affinity: 'Affinity',
@@ -4429,6 +4644,7 @@ class ModifyScalingConfigurationRequest extends $tea.Model {
4429
4644
  }
4430
4645
  static types() {
4431
4646
  return {
4647
+ imageOptions: ModifyScalingConfigurationRequestImageOptions,
4432
4648
  privatePoolOptions: ModifyScalingConfigurationRequestPrivatePoolOptions,
4433
4649
  systemDisk: ModifyScalingConfigurationRequestSystemDisk,
4434
4650
  affinity: 'string',
@@ -4485,6 +4701,7 @@ class ModifyScalingConfigurationShrinkRequest extends $tea.Model {
4485
4701
  }
4486
4702
  static names() {
4487
4703
  return {
4704
+ imageOptions: 'ImageOptions',
4488
4705
  privatePoolOptions: 'PrivatePoolOptions',
4489
4706
  systemDisk: 'SystemDisk',
4490
4707
  affinity: 'Affinity',
@@ -4535,6 +4752,7 @@ class ModifyScalingConfigurationShrinkRequest extends $tea.Model {
4535
4752
  }
4536
4753
  static types() {
4537
4754
  return {
4755
+ imageOptions: ModifyScalingConfigurationShrinkRequestImageOptions,
4538
4756
  privatePoolOptions: ModifyScalingConfigurationShrinkRequestPrivatePoolOptions,
4539
4757
  systemDisk: ModifyScalingConfigurationShrinkRequestSystemDisk,
4540
4758
  affinity: 'string',
@@ -4737,6 +4955,7 @@ class ModifyScalingRuleRequest extends $tea.Model {
4737
4955
  return {
4738
4956
  adjustmentType: 'AdjustmentType',
4739
4957
  adjustmentValue: 'AdjustmentValue',
4958
+ alarmDimensions: 'AlarmDimensions',
4740
4959
  cooldown: 'Cooldown',
4741
4960
  disableScaleIn: 'DisableScaleIn',
4742
4961
  estimatedInstanceWarmup: 'EstimatedInstanceWarmup',
@@ -4763,6 +4982,7 @@ class ModifyScalingRuleRequest extends $tea.Model {
4763
4982
  return {
4764
4983
  adjustmentType: 'string',
4765
4984
  adjustmentValue: 'number',
4985
+ alarmDimensions: { 'type': 'array', 'itemType': ModifyScalingRuleRequestAlarmDimensions },
4766
4986
  cooldown: 'number',
4767
4987
  disableScaleIn: 'boolean',
4768
4988
  estimatedInstanceWarmup: 'number',
@@ -5205,12 +5425,14 @@ class ScaleWithAdjustmentResponseBody extends $tea.Model {
5205
5425
  }
5206
5426
  static names() {
5207
5427
  return {
5428
+ activityType: 'ActivityType',
5208
5429
  requestId: 'RequestId',
5209
5430
  scalingActivityId: 'ScalingActivityId',
5210
5431
  };
5211
5432
  }
5212
5433
  static types() {
5213
5434
  return {
5435
+ activityType: 'string',
5214
5436
  requestId: 'string',
5215
5437
  scalingActivityId: 'string',
5216
5438
  };
@@ -5739,6 +5961,46 @@ class AttachAlbServerGroupsRequestAlbServerGroups extends $tea.Model {
5739
5961
  }
5740
5962
  }
5741
5963
  exports.AttachAlbServerGroupsRequestAlbServerGroups = AttachAlbServerGroupsRequestAlbServerGroups;
5964
+ class AttachLoadBalancersRequestLoadBalancerConfigs extends $tea.Model {
5965
+ constructor(map) {
5966
+ super(map);
5967
+ }
5968
+ static names() {
5969
+ return {
5970
+ loadBalancerId: 'LoadBalancerId',
5971
+ weight: 'Weight',
5972
+ };
5973
+ }
5974
+ static types() {
5975
+ return {
5976
+ loadBalancerId: 'string',
5977
+ weight: 'number',
5978
+ };
5979
+ }
5980
+ }
5981
+ exports.AttachLoadBalancersRequestLoadBalancerConfigs = AttachLoadBalancersRequestLoadBalancerConfigs;
5982
+ class AttachServerGroupsRequestServerGroups extends $tea.Model {
5983
+ constructor(map) {
5984
+ super(map);
5985
+ }
5986
+ static names() {
5987
+ return {
5988
+ port: 'Port',
5989
+ serverGroupId: 'ServerGroupId',
5990
+ type: 'Type',
5991
+ weight: 'Weight',
5992
+ };
5993
+ }
5994
+ static types() {
5995
+ return {
5996
+ port: 'number',
5997
+ serverGroupId: 'string',
5998
+ type: 'string',
5999
+ weight: 'number',
6000
+ };
6001
+ }
6002
+ }
6003
+ exports.AttachServerGroupsRequestServerGroups = AttachServerGroupsRequestServerGroups;
5742
6004
  class AttachVServerGroupsRequestVServerGroupsVServerGroupAttributes extends $tea.Model {
5743
6005
  constructor(map) {
5744
6006
  super(map);
@@ -6529,6 +6791,22 @@ class CreateEciScalingConfigurationRequestVolumes extends $tea.Model {
6529
6791
  }
6530
6792
  }
6531
6793
  exports.CreateEciScalingConfigurationRequestVolumes = CreateEciScalingConfigurationRequestVolumes;
6794
+ class CreateScalingConfigurationRequestImageOptions extends $tea.Model {
6795
+ constructor(map) {
6796
+ super(map);
6797
+ }
6798
+ static names() {
6799
+ return {
6800
+ loginAsNonRoot: 'LoginAsNonRoot',
6801
+ };
6802
+ }
6803
+ static types() {
6804
+ return {
6805
+ loginAsNonRoot: 'boolean',
6806
+ };
6807
+ }
6808
+ }
6809
+ exports.CreateScalingConfigurationRequestImageOptions = CreateScalingConfigurationRequestImageOptions;
6532
6810
  class CreateScalingConfigurationRequestPrivatePoolOptions extends $tea.Model {
6533
6811
  constructor(map) {
6534
6812
  super(map);
@@ -6689,6 +6967,22 @@ class CreateScalingConfigurationRequestSpotPriceLimits extends $tea.Model {
6689
6967
  }
6690
6968
  }
6691
6969
  exports.CreateScalingConfigurationRequestSpotPriceLimits = CreateScalingConfigurationRequestSpotPriceLimits;
6970
+ class CreateScalingConfigurationShrinkRequestImageOptions extends $tea.Model {
6971
+ constructor(map) {
6972
+ super(map);
6973
+ }
6974
+ static names() {
6975
+ return {
6976
+ loginAsNonRoot: 'LoginAsNonRoot',
6977
+ };
6978
+ }
6979
+ static types() {
6980
+ return {
6981
+ loginAsNonRoot: 'boolean',
6982
+ };
6983
+ }
6984
+ }
6985
+ exports.CreateScalingConfigurationShrinkRequestImageOptions = CreateScalingConfigurationShrinkRequestImageOptions;
6692
6986
  class CreateScalingConfigurationShrinkRequestPrivatePoolOptions extends $tea.Model {
6693
6987
  constructor(map) {
6694
6988
  super(map);
@@ -6876,12 +7170,14 @@ class CreateScalingGroupRequestLaunchTemplateOverrides extends $tea.Model {
6876
7170
  static names() {
6877
7171
  return {
6878
7172
  instanceType: 'InstanceType',
7173
+ spotPriceLimit: 'SpotPriceLimit',
6879
7174
  weightedCapacity: 'WeightedCapacity',
6880
7175
  };
6881
7176
  }
6882
7177
  static types() {
6883
7178
  return {
6884
7179
  instanceType: 'string',
7180
+ spotPriceLimit: 'number',
6885
7181
  weightedCapacity: 'number',
6886
7182
  };
6887
7183
  }
@@ -6913,62 +7209,120 @@ class CreateScalingGroupRequestLifecycleHooks extends $tea.Model {
6913
7209
  }
6914
7210
  }
6915
7211
  exports.CreateScalingGroupRequestLifecycleHooks = CreateScalingGroupRequestLifecycleHooks;
6916
- class CreateScalingGroupRequestTags extends $tea.Model {
7212
+ class CreateScalingGroupRequestLoadBalancerConfigs extends $tea.Model {
6917
7213
  constructor(map) {
6918
7214
  super(map);
6919
7215
  }
6920
7216
  static names() {
6921
7217
  return {
6922
- key: 'Key',
6923
- value: 'Value',
7218
+ loadBalancerId: 'LoadBalancerId',
7219
+ weight: 'Weight',
6924
7220
  };
6925
7221
  }
6926
7222
  static types() {
6927
7223
  return {
6928
- key: 'string',
6929
- value: 'string',
7224
+ loadBalancerId: 'string',
7225
+ weight: 'number',
6930
7226
  };
6931
7227
  }
6932
7228
  }
6933
- exports.CreateScalingGroupRequestTags = CreateScalingGroupRequestTags;
6934
- class CreateScalingGroupRequestVServerGroupsVServerGroupAttributes extends $tea.Model {
7229
+ exports.CreateScalingGroupRequestLoadBalancerConfigs = CreateScalingGroupRequestLoadBalancerConfigs;
7230
+ class CreateScalingGroupRequestServerGroups extends $tea.Model {
6935
7231
  constructor(map) {
6936
7232
  super(map);
6937
7233
  }
6938
7234
  static names() {
6939
7235
  return {
6940
7236
  port: 'Port',
6941
- VServerGroupId: 'VServerGroupId',
7237
+ serverGroupId: 'ServerGroupId',
7238
+ type: 'Type',
6942
7239
  weight: 'Weight',
6943
7240
  };
6944
7241
  }
6945
7242
  static types() {
6946
7243
  return {
6947
7244
  port: 'number',
6948
- VServerGroupId: 'string',
7245
+ serverGroupId: 'string',
7246
+ type: 'string',
6949
7247
  weight: 'number',
6950
7248
  };
6951
7249
  }
6952
7250
  }
6953
- exports.CreateScalingGroupRequestVServerGroupsVServerGroupAttributes = CreateScalingGroupRequestVServerGroupsVServerGroupAttributes;
6954
- class CreateScalingGroupRequestVServerGroups extends $tea.Model {
7251
+ exports.CreateScalingGroupRequestServerGroups = CreateScalingGroupRequestServerGroups;
7252
+ class CreateScalingGroupRequestTags extends $tea.Model {
6955
7253
  constructor(map) {
6956
7254
  super(map);
6957
7255
  }
6958
7256
  static names() {
6959
7257
  return {
6960
- loadBalancerId: 'LoadBalancerId',
6961
- VServerGroupAttributes: 'VServerGroupAttributes',
7258
+ key: 'Key',
7259
+ value: 'Value',
6962
7260
  };
6963
7261
  }
6964
7262
  static types() {
6965
7263
  return {
6966
- loadBalancerId: 'string',
6967
- VServerGroupAttributes: { 'type': 'array', 'itemType': CreateScalingGroupRequestVServerGroupsVServerGroupAttributes },
6968
- };
7264
+ key: 'string',
7265
+ value: 'string',
7266
+ };
7267
+ }
7268
+ }
7269
+ exports.CreateScalingGroupRequestTags = CreateScalingGroupRequestTags;
7270
+ class CreateScalingGroupRequestVServerGroupsVServerGroupAttributes extends $tea.Model {
7271
+ constructor(map) {
7272
+ super(map);
7273
+ }
7274
+ static names() {
7275
+ return {
7276
+ port: 'Port',
7277
+ VServerGroupId: 'VServerGroupId',
7278
+ weight: 'Weight',
7279
+ };
7280
+ }
7281
+ static types() {
7282
+ return {
7283
+ port: 'number',
7284
+ VServerGroupId: 'string',
7285
+ weight: 'number',
7286
+ };
7287
+ }
7288
+ }
7289
+ exports.CreateScalingGroupRequestVServerGroupsVServerGroupAttributes = CreateScalingGroupRequestVServerGroupsVServerGroupAttributes;
7290
+ class CreateScalingGroupRequestVServerGroups extends $tea.Model {
7291
+ constructor(map) {
7292
+ super(map);
7293
+ }
7294
+ static names() {
7295
+ return {
7296
+ loadBalancerId: 'LoadBalancerId',
7297
+ VServerGroupAttributes: 'VServerGroupAttributes',
7298
+ };
7299
+ }
7300
+ static types() {
7301
+ return {
7302
+ loadBalancerId: 'string',
7303
+ VServerGroupAttributes: { 'type': 'array', 'itemType': CreateScalingGroupRequestVServerGroupsVServerGroupAttributes },
7304
+ };
6969
7305
  }
6970
7306
  }
6971
7307
  exports.CreateScalingGroupRequestVServerGroups = CreateScalingGroupRequestVServerGroups;
7308
+ class CreateScalingRuleRequestAlarmDimensions extends $tea.Model {
7309
+ constructor(map) {
7310
+ super(map);
7311
+ }
7312
+ static names() {
7313
+ return {
7314
+ dimensionKey: 'DimensionKey',
7315
+ dimensionValue: 'DimensionValue',
7316
+ };
7317
+ }
7318
+ static types() {
7319
+ return {
7320
+ dimensionKey: 'string',
7321
+ dimensionValue: 'string',
7322
+ };
7323
+ }
7324
+ }
7325
+ exports.CreateScalingRuleRequestAlarmDimensions = CreateScalingRuleRequestAlarmDimensions;
6972
7326
  class CreateScalingRuleRequestStepAdjustments extends $tea.Model {
6973
7327
  constructor(map) {
6974
7328
  super(map);
@@ -7730,15 +8084,26 @@ class DescribeScalingActivitiesResponseBodyScalingActivities extends $tea.Model
7730
8084
  attachedCapacity: 'AttachedCapacity',
7731
8085
  autoCreatedCapacity: 'AutoCreatedCapacity',
7732
8086
  cause: 'Cause',
8087
+ createdCapacity: 'CreatedCapacity',
8088
+ createdInstances: 'CreatedInstances',
7733
8089
  description: 'Description',
8090
+ destroyedCapacity: 'DestroyedCapacity',
8091
+ destroyedInstances: 'DestroyedInstances',
8092
+ detail: 'Detail',
7734
8093
  endTime: 'EndTime',
8094
+ errorCode: 'ErrorCode',
8095
+ errorMessage: 'ErrorMessage',
7735
8096
  progress: 'Progress',
7736
8097
  scalingActivityId: 'ScalingActivityId',
7737
8098
  scalingGroupId: 'ScalingGroupId',
7738
8099
  scalingInstanceNumber: 'ScalingInstanceNumber',
7739
8100
  startTime: 'StartTime',
8101
+ startedCapacity: 'StartedCapacity',
8102
+ startedInstances: 'StartedInstances',
7740
8103
  statusCode: 'StatusCode',
7741
8104
  statusMessage: 'StatusMessage',
8105
+ stoppedCapacity: 'StoppedCapacity',
8106
+ stoppedInstances: 'StoppedInstances',
7742
8107
  totalCapacity: 'TotalCapacity',
7743
8108
  };
7744
8109
  }
@@ -7747,15 +8112,26 @@ class DescribeScalingActivitiesResponseBodyScalingActivities extends $tea.Model
7747
8112
  attachedCapacity: 'string',
7748
8113
  autoCreatedCapacity: 'string',
7749
8114
  cause: 'string',
8115
+ createdCapacity: 'number',
8116
+ createdInstances: { 'type': 'array', 'itemType': 'string' },
7750
8117
  description: 'string',
8118
+ destroyedCapacity: 'number',
8119
+ destroyedInstances: { 'type': 'array', 'itemType': 'string' },
8120
+ detail: 'string',
7751
8121
  endTime: 'string',
8122
+ errorCode: 'string',
8123
+ errorMessage: 'string',
7752
8124
  progress: 'number',
7753
8125
  scalingActivityId: 'string',
7754
8126
  scalingGroupId: 'string',
7755
8127
  scalingInstanceNumber: 'number',
7756
8128
  startTime: 'string',
8129
+ startedCapacity: 'number',
8130
+ startedInstances: { 'type': 'array', 'itemType': 'string' },
7757
8131
  statusCode: 'string',
7758
8132
  statusMessage: 'string',
8133
+ stoppedCapacity: 'number',
8134
+ stoppedInstances: { 'type': 'array', 'itemType': 'string' },
7759
8135
  totalCapacity: 'string',
7760
8136
  };
7761
8137
  }
@@ -7920,6 +8296,8 @@ class DescribeScalingConfigurationsResponseBodyScalingConfigurations extends $te
7920
8296
  imageFamily: 'ImageFamily',
7921
8297
  imageId: 'ImageId',
7922
8298
  imageName: 'ImageName',
8299
+ imageOptionsLoginAsNonRoot: 'ImageOptionsLoginAsNonRoot',
8300
+ imageOwnerAlias: 'ImageOwnerAlias',
7923
8301
  instanceDescription: 'InstanceDescription',
7924
8302
  instanceGeneration: 'InstanceGeneration',
7925
8303
  instanceName: 'InstanceName',
@@ -7983,6 +8361,8 @@ class DescribeScalingConfigurationsResponseBodyScalingConfigurations extends $te
7983
8361
  imageFamily: 'string',
7984
8362
  imageId: 'string',
7985
8363
  imageName: 'string',
8364
+ imageOptionsLoginAsNonRoot: 'boolean',
8365
+ imageOwnerAlias: 'string',
7986
8366
  instanceDescription: 'string',
7987
8367
  instanceGeneration: 'string',
7988
8368
  instanceName: 'string',
@@ -8060,17 +8440,59 @@ class DescribeScalingGroupsResponseBodyScalingGroupsLaunchTemplateOverrides exte
8060
8440
  static names() {
8061
8441
  return {
8062
8442
  instanceType: 'InstanceType',
8443
+ spotPriceLimit: 'SpotPriceLimit',
8063
8444
  weightedCapacity: 'WeightedCapacity',
8064
8445
  };
8065
8446
  }
8066
8447
  static types() {
8067
8448
  return {
8068
8449
  instanceType: 'string',
8450
+ spotPriceLimit: 'number',
8069
8451
  weightedCapacity: 'number',
8070
8452
  };
8071
8453
  }
8072
8454
  }
8073
8455
  exports.DescribeScalingGroupsResponseBodyScalingGroupsLaunchTemplateOverrides = DescribeScalingGroupsResponseBodyScalingGroupsLaunchTemplateOverrides;
8456
+ class DescribeScalingGroupsResponseBodyScalingGroupsLoadBalancerConfigs extends $tea.Model {
8457
+ constructor(map) {
8458
+ super(map);
8459
+ }
8460
+ static names() {
8461
+ return {
8462
+ loadBalancerId: 'LoadBalancerId',
8463
+ weight: 'Weight',
8464
+ };
8465
+ }
8466
+ static types() {
8467
+ return {
8468
+ loadBalancerId: 'string',
8469
+ weight: 'number',
8470
+ };
8471
+ }
8472
+ }
8473
+ exports.DescribeScalingGroupsResponseBodyScalingGroupsLoadBalancerConfigs = DescribeScalingGroupsResponseBodyScalingGroupsLoadBalancerConfigs;
8474
+ class DescribeScalingGroupsResponseBodyScalingGroupsServerGroups extends $tea.Model {
8475
+ constructor(map) {
8476
+ super(map);
8477
+ }
8478
+ static names() {
8479
+ return {
8480
+ port: 'Port',
8481
+ serverGroupId: 'ServerGroupId',
8482
+ type: 'Type',
8483
+ weight: 'Weight',
8484
+ };
8485
+ }
8486
+ static types() {
8487
+ return {
8488
+ port: 'number',
8489
+ serverGroupId: 'string',
8490
+ type: 'string',
8491
+ weight: 'number',
8492
+ };
8493
+ }
8494
+ }
8495
+ exports.DescribeScalingGroupsResponseBodyScalingGroupsServerGroups = DescribeScalingGroupsResponseBodyScalingGroupsServerGroups;
8074
8496
  class DescribeScalingGroupsResponseBodyScalingGroupsVServerGroupsVServerGroupAttributes extends $tea.Model {
8075
8497
  constructor(map) {
8076
8498
  super(map);
@@ -8130,11 +8552,13 @@ class DescribeScalingGroupsResponseBodyScalingGroups extends $tea.Model {
8130
8552
  groupDeletionProtection: 'GroupDeletionProtection',
8131
8553
  groupType: 'GroupType',
8132
8554
  healthCheckType: 'HealthCheckType',
8555
+ initCapacity: 'InitCapacity',
8133
8556
  isElasticStrengthInAlarm: 'IsElasticStrengthInAlarm',
8134
8557
  launchTemplateId: 'LaunchTemplateId',
8135
8558
  launchTemplateOverrides: 'LaunchTemplateOverrides',
8136
8559
  launchTemplateVersion: 'LaunchTemplateVersion',
8137
8560
  lifecycleState: 'LifecycleState',
8561
+ loadBalancerConfigs: 'LoadBalancerConfigs',
8138
8562
  loadBalancerIds: 'LoadBalancerIds',
8139
8563
  maxInstanceLifetime: 'MaxInstanceLifetime',
8140
8564
  maxSize: 'MaxSize',
@@ -8151,9 +8575,11 @@ class DescribeScalingGroupsResponseBodyScalingGroups extends $tea.Model {
8151
8575
  removalPolicies: 'RemovalPolicies',
8152
8576
  removingCapacity: 'RemovingCapacity',
8153
8577
  removingWaitCapacity: 'RemovingWaitCapacity',
8578
+ resourceGroupId: 'ResourceGroupId',
8154
8579
  scalingGroupId: 'ScalingGroupId',
8155
8580
  scalingGroupName: 'ScalingGroupName',
8156
8581
  scalingPolicy: 'ScalingPolicy',
8582
+ serverGroups: 'ServerGroups',
8157
8583
  spotAllocationStrategy: 'SpotAllocationStrategy',
8158
8584
  spotInstancePools: 'SpotInstancePools',
8159
8585
  spotInstanceRemedy: 'SpotInstanceRemedy',
@@ -8186,11 +8612,13 @@ class DescribeScalingGroupsResponseBodyScalingGroups extends $tea.Model {
8186
8612
  groupDeletionProtection: 'boolean',
8187
8613
  groupType: 'string',
8188
8614
  healthCheckType: 'string',
8615
+ initCapacity: 'number',
8189
8616
  isElasticStrengthInAlarm: 'boolean',
8190
8617
  launchTemplateId: 'string',
8191
8618
  launchTemplateOverrides: { 'type': 'array', 'itemType': DescribeScalingGroupsResponseBodyScalingGroupsLaunchTemplateOverrides },
8192
8619
  launchTemplateVersion: 'string',
8193
8620
  lifecycleState: 'string',
8621
+ loadBalancerConfigs: { 'type': 'array', 'itemType': DescribeScalingGroupsResponseBodyScalingGroupsLoadBalancerConfigs },
8194
8622
  loadBalancerIds: { 'type': 'array', 'itemType': 'string' },
8195
8623
  maxInstanceLifetime: 'number',
8196
8624
  maxSize: 'number',
@@ -8207,9 +8635,11 @@ class DescribeScalingGroupsResponseBodyScalingGroups extends $tea.Model {
8207
8635
  removalPolicies: { 'type': 'array', 'itemType': 'string' },
8208
8636
  removingCapacity: 'number',
8209
8637
  removingWaitCapacity: 'number',
8638
+ resourceGroupId: 'string',
8210
8639
  scalingGroupId: 'string',
8211
8640
  scalingGroupName: 'string',
8212
8641
  scalingPolicy: 'string',
8642
+ serverGroups: { 'type': 'array', 'itemType': DescribeScalingGroupsResponseBodyScalingGroupsServerGroups },
8213
8643
  spotAllocationStrategy: 'string',
8214
8644
  spotInstancePools: 'number',
8215
8645
  spotInstanceRemedy: 'boolean',
@@ -8275,6 +8705,24 @@ class DescribeScalingInstancesResponseBodyScalingInstances extends $tea.Model {
8275
8705
  }
8276
8706
  }
8277
8707
  exports.DescribeScalingInstancesResponseBodyScalingInstances = DescribeScalingInstancesResponseBodyScalingInstances;
8708
+ class DescribeScalingRulesResponseBodyScalingRulesAlarmDimensions extends $tea.Model {
8709
+ constructor(map) {
8710
+ super(map);
8711
+ }
8712
+ static names() {
8713
+ return {
8714
+ dimensionKey: 'DimensionKey',
8715
+ dimensionValue: 'DimensionValue',
8716
+ };
8717
+ }
8718
+ static types() {
8719
+ return {
8720
+ dimensionKey: 'string',
8721
+ dimensionValue: 'string',
8722
+ };
8723
+ }
8724
+ }
8725
+ exports.DescribeScalingRulesResponseBodyScalingRulesAlarmDimensions = DescribeScalingRulesResponseBodyScalingRulesAlarmDimensions;
8278
8726
  class DescribeScalingRulesResponseBodyScalingRulesAlarmsDimensions extends $tea.Model {
8279
8727
  constructor(map) {
8280
8728
  super(map);
@@ -8353,6 +8801,7 @@ class DescribeScalingRulesResponseBodyScalingRules extends $tea.Model {
8353
8801
  return {
8354
8802
  adjustmentType: 'AdjustmentType',
8355
8803
  adjustmentValue: 'AdjustmentValue',
8804
+ alarmDimensions: 'AlarmDimensions',
8356
8805
  alarms: 'Alarms',
8357
8806
  cooldown: 'Cooldown',
8358
8807
  disableScaleIn: 'DisableScaleIn',
@@ -8381,6 +8830,7 @@ class DescribeScalingRulesResponseBodyScalingRules extends $tea.Model {
8381
8830
  return {
8382
8831
  adjustmentType: 'string',
8383
8832
  adjustmentValue: 'number',
8833
+ alarmDimensions: { 'type': 'array', 'itemType': DescribeScalingRulesResponseBodyScalingRulesAlarmDimensions },
8384
8834
  alarms: { 'type': 'array', 'itemType': DescribeScalingRulesResponseBodyScalingRulesAlarms },
8385
8835
  cooldown: 'number',
8386
8836
  disableScaleIn: 'boolean',
@@ -8467,6 +8917,26 @@ class DetachAlbServerGroupsRequestAlbServerGroups extends $tea.Model {
8467
8917
  }
8468
8918
  }
8469
8919
  exports.DetachAlbServerGroupsRequestAlbServerGroups = DetachAlbServerGroupsRequestAlbServerGroups;
8920
+ class DetachServerGroupsRequestServerGroups extends $tea.Model {
8921
+ constructor(map) {
8922
+ super(map);
8923
+ }
8924
+ static names() {
8925
+ return {
8926
+ port: 'Port',
8927
+ serverGroupId: 'ServerGroupId',
8928
+ type: 'Type',
8929
+ };
8930
+ }
8931
+ static types() {
8932
+ return {
8933
+ port: 'number',
8934
+ serverGroupId: 'string',
8935
+ type: 'string',
8936
+ };
8937
+ }
8938
+ }
8939
+ exports.DetachServerGroupsRequestServerGroups = DetachServerGroupsRequestServerGroups;
8470
8940
  class DetachVServerGroupsRequestVServerGroupsVServerGroupAttributes extends $tea.Model {
8471
8941
  constructor(map) {
8472
8942
  super(map);
@@ -9347,6 +9817,22 @@ class ModifyEciScalingConfigurationRequestVolumes extends $tea.Model {
9347
9817
  }
9348
9818
  }
9349
9819
  exports.ModifyEciScalingConfigurationRequestVolumes = ModifyEciScalingConfigurationRequestVolumes;
9820
+ class ModifyScalingConfigurationRequestImageOptions extends $tea.Model {
9821
+ constructor(map) {
9822
+ super(map);
9823
+ }
9824
+ static names() {
9825
+ return {
9826
+ loginAsNonRoot: 'LoginAsNonRoot',
9827
+ };
9828
+ }
9829
+ static types() {
9830
+ return {
9831
+ loginAsNonRoot: 'boolean',
9832
+ };
9833
+ }
9834
+ }
9835
+ exports.ModifyScalingConfigurationRequestImageOptions = ModifyScalingConfigurationRequestImageOptions;
9350
9836
  class ModifyScalingConfigurationRequestPrivatePoolOptions extends $tea.Model {
9351
9837
  constructor(map) {
9352
9838
  super(map);
@@ -9507,6 +9993,22 @@ class ModifyScalingConfigurationRequestSpotPriceLimits extends $tea.Model {
9507
9993
  }
9508
9994
  }
9509
9995
  exports.ModifyScalingConfigurationRequestSpotPriceLimits = ModifyScalingConfigurationRequestSpotPriceLimits;
9996
+ class ModifyScalingConfigurationShrinkRequestImageOptions extends $tea.Model {
9997
+ constructor(map) {
9998
+ super(map);
9999
+ }
10000
+ static names() {
10001
+ return {
10002
+ loginAsNonRoot: 'LoginAsNonRoot',
10003
+ };
10004
+ }
10005
+ static types() {
10006
+ return {
10007
+ loginAsNonRoot: 'boolean',
10008
+ };
10009
+ }
10010
+ }
10011
+ exports.ModifyScalingConfigurationShrinkRequestImageOptions = ModifyScalingConfigurationShrinkRequestImageOptions;
9510
10012
  class ModifyScalingConfigurationShrinkRequestPrivatePoolOptions extends $tea.Model {
9511
10013
  constructor(map) {
9512
10014
  super(map);
@@ -9674,17 +10176,37 @@ class ModifyScalingGroupRequestLaunchTemplateOverrides extends $tea.Model {
9674
10176
  static names() {
9675
10177
  return {
9676
10178
  instanceType: 'InstanceType',
10179
+ spotPriceLimit: 'SpotPriceLimit',
9677
10180
  weightedCapacity: 'WeightedCapacity',
9678
10181
  };
9679
10182
  }
9680
10183
  static types() {
9681
10184
  return {
9682
10185
  instanceType: 'string',
10186
+ spotPriceLimit: 'number',
9683
10187
  weightedCapacity: 'number',
9684
10188
  };
9685
10189
  }
9686
10190
  }
9687
10191
  exports.ModifyScalingGroupRequestLaunchTemplateOverrides = ModifyScalingGroupRequestLaunchTemplateOverrides;
10192
+ class ModifyScalingRuleRequestAlarmDimensions extends $tea.Model {
10193
+ constructor(map) {
10194
+ super(map);
10195
+ }
10196
+ static names() {
10197
+ return {
10198
+ dimensionKey: 'DimensionKey',
10199
+ dimensionValue: 'DimensionValue',
10200
+ };
10201
+ }
10202
+ static types() {
10203
+ return {
10204
+ dimensionKey: 'string',
10205
+ dimensionValue: 'string',
10206
+ };
10207
+ }
10208
+ }
10209
+ exports.ModifyScalingRuleRequestAlarmDimensions = ModifyScalingRuleRequestAlarmDimensions;
9688
10210
  class ModifyScalingRuleRequestStepAdjustments extends $tea.Model {
9689
10211
  constructor(map) {
9690
10212
  super(map);
@@ -9787,6 +10309,13 @@ class Client extends openapi_client_1.default {
9787
10309
  }
9788
10310
  return endpoint_util_1.default.getEndpointRules(productId, regionId, endpointRule, network, suffix);
9789
10311
  }
10312
+ /**
10313
+ * Associates one or more Application Load Balancer (ALB) server groups with a scaling group.
10314
+ *
10315
+ * @param request AttachAlbServerGroupsRequest
10316
+ * @param runtime runtime options for this request RuntimeOptions
10317
+ * @return AttachAlbServerGroupsResponse
10318
+ */
9790
10319
  async attachAlbServerGroupsWithOptions(request, runtime) {
9791
10320
  tea_util_1.default.validateModel(request);
9792
10321
  let query = {};
@@ -9827,10 +10356,23 @@ class Client extends openapi_client_1.default {
9827
10356
  });
9828
10357
  return $tea.cast(await this.callApi(params, req, runtime), new AttachAlbServerGroupsResponse({}));
9829
10358
  }
10359
+ /**
10360
+ * Associates one or more Application Load Balancer (ALB) server groups with a scaling group.
10361
+ *
10362
+ * @param request AttachAlbServerGroupsRequest
10363
+ * @return AttachAlbServerGroupsResponse
10364
+ */
9830
10365
  async attachAlbServerGroups(request) {
9831
10366
  let runtime = new $Util.RuntimeOptions({});
9832
10367
  return await this.attachAlbServerGroupsWithOptions(request, runtime);
9833
10368
  }
10369
+ /**
10370
+ * Associates one or more ApsaraDB RDS instances with a scaling group.
10371
+ *
10372
+ * @param request AttachDBInstancesRequest
10373
+ * @param runtime runtime options for this request RuntimeOptions
10374
+ * @return AttachDBInstancesResponse
10375
+ */
9834
10376
  async attachDBInstancesWithOptions(request, runtime) {
9835
10377
  tea_util_1.default.validateModel(request);
9836
10378
  let query = {};
@@ -9871,10 +10413,23 @@ class Client extends openapi_client_1.default {
9871
10413
  });
9872
10414
  return $tea.cast(await this.callApi(params, req, runtime), new AttachDBInstancesResponse({}));
9873
10415
  }
10416
+ /**
10417
+ * Associates one or more ApsaraDB RDS instances with a scaling group.
10418
+ *
10419
+ * @param request AttachDBInstancesRequest
10420
+ * @return AttachDBInstancesResponse
10421
+ */
9874
10422
  async attachDBInstances(request) {
9875
10423
  let runtime = new $Util.RuntimeOptions({});
9876
10424
  return await this.attachDBInstancesWithOptions(request, runtime);
9877
10425
  }
10426
+ /**
10427
+ * Manually adds Elastic Compute Service (ECS) instances or elastic container instances to a scaling group.
10428
+ *
10429
+ * @param request AttachInstancesRequest
10430
+ * @param runtime runtime options for this request RuntimeOptions
10431
+ * @return AttachInstancesResponse
10432
+ */
9878
10433
  async attachInstancesWithOptions(request, runtime) {
9879
10434
  tea_util_1.default.validateModel(request);
9880
10435
  let query = {};
@@ -9924,10 +10479,23 @@ class Client extends openapi_client_1.default {
9924
10479
  });
9925
10480
  return $tea.cast(await this.callApi(params, req, runtime), new AttachInstancesResponse({}));
9926
10481
  }
10482
+ /**
10483
+ * Manually adds Elastic Compute Service (ECS) instances or elastic container instances to a scaling group.
10484
+ *
10485
+ * @param request AttachInstancesRequest
10486
+ * @return AttachInstancesResponse
10487
+ */
9927
10488
  async attachInstances(request) {
9928
10489
  let runtime = new $Util.RuntimeOptions({});
9929
10490
  return await this.attachInstancesWithOptions(request, runtime);
9930
10491
  }
10492
+ /**
10493
+ * Attaches one or more Classic Load Balancer (CLB) instances to a scaling group.
10494
+ *
10495
+ * @param request AttachLoadBalancersRequest
10496
+ * @param runtime runtime options for this request RuntimeOptions
10497
+ * @return AttachLoadBalancersResponse
10498
+ */
9931
10499
  async attachLoadBalancersWithOptions(request, runtime) {
9932
10500
  tea_util_1.default.validateModel(request);
9933
10501
  let query = {};
@@ -9940,6 +10508,9 @@ class Client extends openapi_client_1.default {
9940
10508
  if (!tea_util_1.default.isUnset(request.forceAttach)) {
9941
10509
  query["ForceAttach"] = request.forceAttach;
9942
10510
  }
10511
+ if (!tea_util_1.default.isUnset(request.loadBalancerConfigs)) {
10512
+ query["LoadBalancerConfigs"] = request.loadBalancerConfigs;
10513
+ }
9943
10514
  if (!tea_util_1.default.isUnset(request.loadBalancers)) {
9944
10515
  query["LoadBalancers"] = request.loadBalancers;
9945
10516
  }
@@ -9968,10 +10539,67 @@ class Client extends openapi_client_1.default {
9968
10539
  });
9969
10540
  return $tea.cast(await this.callApi(params, req, runtime), new AttachLoadBalancersResponse({}));
9970
10541
  }
10542
+ /**
10543
+ * Attaches one or more Classic Load Balancer (CLB) instances to a scaling group.
10544
+ *
10545
+ * @param request AttachLoadBalancersRequest
10546
+ * @return AttachLoadBalancersResponse
10547
+ */
9971
10548
  async attachLoadBalancers(request) {
9972
10549
  let runtime = new $Util.RuntimeOptions({});
9973
10550
  return await this.attachLoadBalancersWithOptions(request, runtime);
9974
10551
  }
10552
+ async attachServerGroupsWithOptions(request, runtime) {
10553
+ tea_util_1.default.validateModel(request);
10554
+ let query = {};
10555
+ if (!tea_util_1.default.isUnset(request.clientToken)) {
10556
+ query["ClientToken"] = request.clientToken;
10557
+ }
10558
+ if (!tea_util_1.default.isUnset(request.forceAttach)) {
10559
+ query["ForceAttach"] = request.forceAttach;
10560
+ }
10561
+ if (!tea_util_1.default.isUnset(request.ownerId)) {
10562
+ query["OwnerId"] = request.ownerId;
10563
+ }
10564
+ if (!tea_util_1.default.isUnset(request.regionId)) {
10565
+ query["RegionId"] = request.regionId;
10566
+ }
10567
+ if (!tea_util_1.default.isUnset(request.resourceOwnerAccount)) {
10568
+ query["ResourceOwnerAccount"] = request.resourceOwnerAccount;
10569
+ }
10570
+ if (!tea_util_1.default.isUnset(request.scalingGroupId)) {
10571
+ query["ScalingGroupId"] = request.scalingGroupId;
10572
+ }
10573
+ if (!tea_util_1.default.isUnset(request.serverGroups)) {
10574
+ query["ServerGroups"] = request.serverGroups;
10575
+ }
10576
+ let req = new $OpenApi.OpenApiRequest({
10577
+ query: openapi_util_1.default.query(query),
10578
+ });
10579
+ let params = new $OpenApi.Params({
10580
+ action: "AttachServerGroups",
10581
+ version: "2022-02-22",
10582
+ protocol: "HTTPS",
10583
+ pathname: "/",
10584
+ method: "POST",
10585
+ authType: "AK",
10586
+ style: "RPC",
10587
+ reqBodyType: "formData",
10588
+ bodyType: "json",
10589
+ });
10590
+ return $tea.cast(await this.callApi(params, req, runtime), new AttachServerGroupsResponse({}));
10591
+ }
10592
+ async attachServerGroups(request) {
10593
+ let runtime = new $Util.RuntimeOptions({});
10594
+ return await this.attachServerGroupsWithOptions(request, runtime);
10595
+ }
10596
+ /**
10597
+ * Attaches one or more vServer groups of a Classic Load Balancer (CLB) instance to a scaling group.
10598
+ *
10599
+ * @param request AttachVServerGroupsRequest
10600
+ * @param runtime runtime options for this request RuntimeOptions
10601
+ * @return AttachVServerGroupsResponse
10602
+ */
9975
10603
  async attachVServerGroupsWithOptions(request, runtime) {
9976
10604
  tea_util_1.default.validateModel(request);
9977
10605
  let query = {};
@@ -10012,10 +10640,77 @@ class Client extends openapi_client_1.default {
10012
10640
  });
10013
10641
  return $tea.cast(await this.callApi(params, req, runtime), new AttachVServerGroupsResponse({}));
10014
10642
  }
10643
+ /**
10644
+ * Attaches one or more vServer groups of a Classic Load Balancer (CLB) instance to a scaling group.
10645
+ *
10646
+ * @param request AttachVServerGroupsRequest
10647
+ * @return AttachVServerGroupsResponse
10648
+ */
10015
10649
  async attachVServerGroups(request) {
10016
10650
  let runtime = new $Util.RuntimeOptions({});
10017
10651
  return await this.attachVServerGroupsWithOptions(request, runtime);
10018
10652
  }
10653
+ /**
10654
+ * A resource is an entity of cloud services that you create on Alibaba Cloud. For example, a scaling group is a resource. A resource group is a collection of infrastructure for projects, environments, or stacks. In a resource group, you can manage resources, monitor resources, and perform operations in a centralized manner. This way, you do not need to view and check your Alibaba Cloud resources in each Alibaba Cloud service.
10655
+ *
10656
+ * @param request ChangeResourceGroupRequest
10657
+ * @param runtime runtime options for this request RuntimeOptions
10658
+ * @return ChangeResourceGroupResponse
10659
+ */
10660
+ async changeResourceGroupWithOptions(request, runtime) {
10661
+ tea_util_1.default.validateModel(request);
10662
+ let query = {};
10663
+ if (!tea_util_1.default.isUnset(request.newResourceGroupId)) {
10664
+ query["NewResourceGroupId"] = request.newResourceGroupId;
10665
+ }
10666
+ if (!tea_util_1.default.isUnset(request.ownerId)) {
10667
+ query["OwnerId"] = request.ownerId;
10668
+ }
10669
+ if (!tea_util_1.default.isUnset(request.regionId)) {
10670
+ query["RegionId"] = request.regionId;
10671
+ }
10672
+ if (!tea_util_1.default.isUnset(request.resourceId)) {
10673
+ query["ResourceId"] = request.resourceId;
10674
+ }
10675
+ if (!tea_util_1.default.isUnset(request.resourceOwnerAccount)) {
10676
+ query["ResourceOwnerAccount"] = request.resourceOwnerAccount;
10677
+ }
10678
+ if (!tea_util_1.default.isUnset(request.resourceType)) {
10679
+ query["ResourceType"] = request.resourceType;
10680
+ }
10681
+ let req = new $OpenApi.OpenApiRequest({
10682
+ query: openapi_util_1.default.query(query),
10683
+ });
10684
+ let params = new $OpenApi.Params({
10685
+ action: "ChangeResourceGroup",
10686
+ version: "2022-02-22",
10687
+ protocol: "HTTPS",
10688
+ pathname: "/",
10689
+ method: "POST",
10690
+ authType: "AK",
10691
+ style: "RPC",
10692
+ reqBodyType: "formData",
10693
+ bodyType: "json",
10694
+ });
10695
+ return $tea.cast(await this.callApi(params, req, runtime), new ChangeResourceGroupResponse({}));
10696
+ }
10697
+ /**
10698
+ * A resource is an entity of cloud services that you create on Alibaba Cloud. For example, a scaling group is a resource. A resource group is a collection of infrastructure for projects, environments, or stacks. In a resource group, you can manage resources, monitor resources, and perform operations in a centralized manner. This way, you do not need to view and check your Alibaba Cloud resources in each Alibaba Cloud service.
10699
+ *
10700
+ * @param request ChangeResourceGroupRequest
10701
+ * @return ChangeResourceGroupResponse
10702
+ */
10703
+ async changeResourceGroup(request) {
10704
+ let runtime = new $Util.RuntimeOptions({});
10705
+ return await this.changeResourceGroupWithOptions(request, runtime);
10706
+ }
10707
+ /**
10708
+ * If you set the LifecycleActionResult parameter for a lifecycle hook of a scaling group to CONTINUE in the operation, Auto Scaling continues to complete the scaling activity in the scaling group after the lifecycle hook times out. If you set the LifecycleActionResult parameter to ABANDON, Auto Scaling stops the scaling activity in the scaling group after the lifecycle hook times out.
10709
+ *
10710
+ * @param request CompleteLifecycleActionRequest
10711
+ * @param runtime runtime options for this request RuntimeOptions
10712
+ * @return CompleteLifecycleActionResponse
10713
+ */
10019
10714
  async completeLifecycleActionWithOptions(request, runtime) {
10020
10715
  tea_util_1.default.validateModel(request);
10021
10716
  let query = {};
@@ -10059,10 +10754,27 @@ class Client extends openapi_client_1.default {
10059
10754
  });
10060
10755
  return $tea.cast(await this.callApi(params, req, runtime), new CompleteLifecycleActionResponse({}));
10061
10756
  }
10757
+ /**
10758
+ * If you set the LifecycleActionResult parameter for a lifecycle hook of a scaling group to CONTINUE in the operation, Auto Scaling continues to complete the scaling activity in the scaling group after the lifecycle hook times out. If you set the LifecycleActionResult parameter to ABANDON, Auto Scaling stops the scaling activity in the scaling group after the lifecycle hook times out.
10759
+ *
10760
+ * @param request CompleteLifecycleActionRequest
10761
+ * @return CompleteLifecycleActionResponse
10762
+ */
10062
10763
  async completeLifecycleAction(request) {
10063
10764
  let runtime = new $Util.RuntimeOptions({});
10064
10765
  return await this.completeLifecycleActionWithOptions(request, runtime);
10065
10766
  }
10767
+ /**
10768
+ * * If you set the MetricType parameter to custom, you must report your custom metrics to CloudMonitor before you can create event-triggered tasks by using custom metrics. For more information, see [Custom monitoring event-triggered tasks](~~74861~~).
10769
+ * * When you create an event-triggered task, you must specify the MetricName, DimensionKey, and DimensionValue parameters to determine the range of statistics that you want to aggregate for the metrics of the scaling group. For example, you can specify the user_id and scaling_group dimensions for an event-triggered task to aggregate monitoring data of all Elastic Compute Service (ECS) instances or elastic container instances in a scaling group within an Alibaba Cloud account.
10770
+ * * If you set the MetricType parameter to custom, the valid values are your custom metrics.
10771
+ * * For information about the supported metrics when you set the MetricType parameter to system, see [Event-triggered task for system monitoring](~~74854~~).
10772
+ * > The user_id and scaling_group dimensions are automatically populated. You need to only specify the device and state dimensions. For more information, see the `DimensionKey` and `DimensionValue` parameters in the "Request parameters" section of this topic.
10773
+ *
10774
+ * @param request CreateAlarmRequest
10775
+ * @param runtime runtime options for this request RuntimeOptions
10776
+ * @return CreateAlarmResponse
10777
+ */
10066
10778
  async createAlarmWithOptions(request, runtime) {
10067
10779
  tea_util_1.default.validateModel(request);
10068
10780
  let query = {};
@@ -10139,10 +10851,28 @@ class Client extends openapi_client_1.default {
10139
10851
  });
10140
10852
  return $tea.cast(await this.callApi(params, req, runtime), new CreateAlarmResponse({}));
10141
10853
  }
10854
+ /**
10855
+ * * If you set the MetricType parameter to custom, you must report your custom metrics to CloudMonitor before you can create event-triggered tasks by using custom metrics. For more information, see [Custom monitoring event-triggered tasks](~~74861~~).
10856
+ * * When you create an event-triggered task, you must specify the MetricName, DimensionKey, and DimensionValue parameters to determine the range of statistics that you want to aggregate for the metrics of the scaling group. For example, you can specify the user_id and scaling_group dimensions for an event-triggered task to aggregate monitoring data of all Elastic Compute Service (ECS) instances or elastic container instances in a scaling group within an Alibaba Cloud account.
10857
+ * * If you set the MetricType parameter to custom, the valid values are your custom metrics.
10858
+ * * For information about the supported metrics when you set the MetricType parameter to system, see [Event-triggered task for system monitoring](~~74854~~).
10859
+ * > The user_id and scaling_group dimensions are automatically populated. You need to only specify the device and state dimensions. For more information, see the `DimensionKey` and `DimensionValue` parameters in the "Request parameters" section of this topic.
10860
+ *
10861
+ * @param request CreateAlarmRequest
10862
+ * @return CreateAlarmResponse
10863
+ */
10142
10864
  async createAlarm(request) {
10143
10865
  let runtime = new $Util.RuntimeOptions({});
10144
10866
  return await this.createAlarmWithOptions(request, runtime);
10145
10867
  }
10868
+ /**
10869
+ * A scaling configuration is a template that is used to create elastic container instances during scale-out activities.
10870
+ * You can specify the Cpu and Memory parameters to determine the range of instance types. If you specify the parameters, Auto Scaling determines the available instance types based on factors such as I/O optimization requirements and zones. Auto Scaling preferentially creates elastic container instances of the instance type that is provided at the lowest price. This scaling mode is available only if Scaling Policy is set to Cost Optimization Policy and no instance type is specified in the scaling configuration.
10871
+ *
10872
+ * @param request CreateEciScalingConfigurationRequest
10873
+ * @param runtime runtime options for this request RuntimeOptions
10874
+ * @return CreateEciScalingConfigurationResponse
10875
+ */
10146
10876
  async createEciScalingConfigurationWithOptions(request, runtime) {
10147
10877
  tea_util_1.default.validateModel(request);
10148
10878
  let query = {};
@@ -10294,10 +11024,27 @@ class Client extends openapi_client_1.default {
10294
11024
  });
10295
11025
  return $tea.cast(await this.callApi(params, req, runtime), new CreateEciScalingConfigurationResponse({}));
10296
11026
  }
11027
+ /**
11028
+ * A scaling configuration is a template that is used to create elastic container instances during scale-out activities.
11029
+ * You can specify the Cpu and Memory parameters to determine the range of instance types. If you specify the parameters, Auto Scaling determines the available instance types based on factors such as I/O optimization requirements and zones. Auto Scaling preferentially creates elastic container instances of the instance type that is provided at the lowest price. This scaling mode is available only if Scaling Policy is set to Cost Optimization Policy and no instance type is specified in the scaling configuration.
11030
+ *
11031
+ * @param request CreateEciScalingConfigurationRequest
11032
+ * @return CreateEciScalingConfigurationResponse
11033
+ */
10297
11034
  async createEciScalingConfiguration(request) {
10298
11035
  let runtime = new $Util.RuntimeOptions({});
10299
11036
  return await this.createEciScalingConfigurationWithOptions(request, runtime);
10300
11037
  }
11038
+ /**
11039
+ * You can create up to six lifecycle hooks for each scaling group. Elastic Compute Service (ECS) instances are not immediately added to or removed from scaling groups that have effective lifecycle hooks during scaling activities. The ECS instances are added to or removed from the scaling groups only after the lifecycle hooks time out. The period of time before the lifecycle hooks time out is specified by the HeartbeatTimeout parameter. Before lifecycle hooks time out, you can initialize the configurations of ECS instances and query data on the ECS instances.
11040
+ * If lifecycle hooks take effect for scale-out activities, the private IP addresses of ECS instances are added to the IP address whitelists of the associated ApsaraDB RDS instances and the ECS instances are added to the backend server groups of the associated Server Load Balancer (SLB) instances only after the lifecycle hooks time out. If lifecycle hooks take effect for scale-in activities, the private IP addresses of ECS instances are removed from the IP address whitelists of the disassociated ApsaraDB RDS instances and the ECS instances are removed from the backend server groups of the disassociated SLB instances only after the lifecycle hooks time out.
11041
+ * You can configure a notification method for a lifecycle hook. When the lifecycle hook takes effect, a notification can be sent by using a Message Service (MNS) topic, an MNS queue, or an Operation Orchestration Service (OOS) template. If you want to configure an OOS template, you must create a RAM role for OOS. For more information, see [Grant RAM permissions to OOS](~~120810~~).
11042
+ * > If your scaling group contains ECS instances and you configure an OOS template to add the private IP addresses of the ECS instances to or remove the private IP addresses of the ECS instances from the IP address whitelists of cloud databases other than ApsaraDB RDS databases, you must manually add the private IP addresses of the ECS instances to the IP address whitelists of the cloud databases.
11043
+ *
11044
+ * @param request CreateLifecycleHookRequest
11045
+ * @param runtime runtime options for this request RuntimeOptions
11046
+ * @return CreateLifecycleHookResponse
11047
+ */
10301
11048
  async createLifecycleHookWithOptions(request, runtime) {
10302
11049
  tea_util_1.default.validateModel(request);
10303
11050
  let query = {};
@@ -10347,10 +11094,26 @@ class Client extends openapi_client_1.default {
10347
11094
  });
10348
11095
  return $tea.cast(await this.callApi(params, req, runtime), new CreateLifecycleHookResponse({}));
10349
11096
  }
11097
+ /**
11098
+ * You can create up to six lifecycle hooks for each scaling group. Elastic Compute Service (ECS) instances are not immediately added to or removed from scaling groups that have effective lifecycle hooks during scaling activities. The ECS instances are added to or removed from the scaling groups only after the lifecycle hooks time out. The period of time before the lifecycle hooks time out is specified by the HeartbeatTimeout parameter. Before lifecycle hooks time out, you can initialize the configurations of ECS instances and query data on the ECS instances.
11099
+ * If lifecycle hooks take effect for scale-out activities, the private IP addresses of ECS instances are added to the IP address whitelists of the associated ApsaraDB RDS instances and the ECS instances are added to the backend server groups of the associated Server Load Balancer (SLB) instances only after the lifecycle hooks time out. If lifecycle hooks take effect for scale-in activities, the private IP addresses of ECS instances are removed from the IP address whitelists of the disassociated ApsaraDB RDS instances and the ECS instances are removed from the backend server groups of the disassociated SLB instances only after the lifecycle hooks time out.
11100
+ * You can configure a notification method for a lifecycle hook. When the lifecycle hook takes effect, a notification can be sent by using a Message Service (MNS) topic, an MNS queue, or an Operation Orchestration Service (OOS) template. If you want to configure an OOS template, you must create a RAM role for OOS. For more information, see [Grant RAM permissions to OOS](~~120810~~).
11101
+ * > If your scaling group contains ECS instances and you configure an OOS template to add the private IP addresses of the ECS instances to or remove the private IP addresses of the ECS instances from the IP address whitelists of cloud databases other than ApsaraDB RDS databases, you must manually add the private IP addresses of the ECS instances to the IP address whitelists of the cloud databases.
11102
+ *
11103
+ * @param request CreateLifecycleHookRequest
11104
+ * @return CreateLifecycleHookResponse
11105
+ */
10350
11106
  async createLifecycleHook(request) {
10351
11107
  let runtime = new $Util.RuntimeOptions({});
10352
11108
  return await this.createLifecycleHookWithOptions(request, runtime);
10353
11109
  }
11110
+ /**
11111
+ * Creates a notification.
11112
+ *
11113
+ * @param request CreateNotificationConfigurationRequest
11114
+ * @param runtime runtime options for this request RuntimeOptions
11115
+ * @return CreateNotificationConfigurationResponse
11116
+ */
10354
11117
  async createNotificationConfigurationWithOptions(request, runtime) {
10355
11118
  tea_util_1.default.validateModel(request);
10356
11119
  let query = {};
@@ -10388,10 +11151,29 @@ class Client extends openapi_client_1.default {
10388
11151
  });
10389
11152
  return $tea.cast(await this.callApi(params, req, runtime), new CreateNotificationConfigurationResponse({}));
10390
11153
  }
11154
+ /**
11155
+ * Creates a notification.
11156
+ *
11157
+ * @param request CreateNotificationConfigurationRequest
11158
+ * @return CreateNotificationConfigurationResponse
11159
+ */
10391
11160
  async createNotificationConfiguration(request) {
10392
11161
  let runtime = new $Util.RuntimeOptions({});
10393
11162
  return await this.createNotificationConfigurationWithOptions(request, runtime);
10394
11163
  }
11164
+ /**
11165
+ * Auto Scaling automatically creates Elastic Compute Service (ECS) instances based on the specified scaling configuration. ECS instances can be created in the following modes:
11166
+ * * InstancePatternInfos: intelligent configuration mode. In this mode, you need to only specify the number of vCPUs, memory size, instance family, and maximum price. Auto Scaling selects the lowest-priced instance type based on your configurations to create ECS instances. This mode is available only for scaling groups that reside in virtual private clouds (VPCs). This mode reduces the failures of scale-outs caused by insufficient inventory of instance types.
11167
+ * * InstanceType: In this mode, you must specify one instance type.
11168
+ * * InstanceTypes: In this mode, you can specify more than one instance type.
11169
+ * * InstanceTypeOverrides: In this mode, you can specify multiple instance types and weights for the instance types.
11170
+ * * Cpu and Memory: In this mode, you must specify the number of vCPUs and the memory size. Auto Scaling determines the range of available instance types based on factors such as I/O optimization requirements and zones. Then, Auto Scaling creates ECS instances of the lowest-priced instance type. This mode is available only if the Scaling Policy parameter is set to Cost Optimization Policy and no instance type is specified in the scaling configuration.
11171
+ * > You cannot specify InstanceType, InstanceTypes, InstanceTypeOverrides, and Cpu and Memory parameters at the same time. You can specify InstanceType and InstancePatternInfos or specify InstanceTypes and InstancePatternInfo at the same time. If you specify the InstanceType and InstancePatternInfos parameters or specify the InstanceTypes and InstancePatternInfos parameters at the same time, Auto Scaling preferentially uses the instance types that are specified by the InstanceType or InstanceTypes parameter for scale-outs. If the instance types that are specified by the InstanceType or InstanceTypes parameter do not have sufficient inventory, Auto Scaling uses the instance types that are specified by the InstancePatternInfos parameter for scale-outs.
11172
+ *
11173
+ * @param tmpReq CreateScalingConfigurationRequest
11174
+ * @param runtime runtime options for this request RuntimeOptions
11175
+ * @return CreateScalingConfigurationResponse
11176
+ */
10395
11177
  async createScalingConfigurationWithOptions(tmpReq, runtime) {
10396
11178
  tea_util_1.default.validateModel(tmpReq);
10397
11179
  let request = new CreateScalingConfigurationShrinkRequest({});
@@ -10544,10 +11326,13 @@ class Client extends openapi_client_1.default {
10544
11326
  if (!tea_util_1.default.isUnset(request.zoneId)) {
10545
11327
  query["ZoneId"] = request.zoneId;
10546
11328
  }
10547
- if (!tea_util_1.default.isUnset($tea.toMap(request.privatePoolOptions))) {
11329
+ if (!tea_util_1.default.isUnset(request.imageOptions)) {
11330
+ query["ImageOptions"] = request.imageOptions;
11331
+ }
11332
+ if (!tea_util_1.default.isUnset(request.privatePoolOptions)) {
10548
11333
  query["PrivatePoolOptions"] = request.privatePoolOptions;
10549
11334
  }
10550
- if (!tea_util_1.default.isUnset($tea.toMap(request.systemDisk))) {
11335
+ if (!tea_util_1.default.isUnset(request.systemDisk)) {
10551
11336
  query["SystemDisk"] = request.systemDisk;
10552
11337
  }
10553
11338
  let req = new $OpenApi.OpenApiRequest({
@@ -10566,10 +11351,50 @@ class Client extends openapi_client_1.default {
10566
11351
  });
10567
11352
  return $tea.cast(await this.callApi(params, req, runtime), new CreateScalingConfigurationResponse({}));
10568
11353
  }
11354
+ /**
11355
+ * Auto Scaling automatically creates Elastic Compute Service (ECS) instances based on the specified scaling configuration. ECS instances can be created in the following modes:
11356
+ * * InstancePatternInfos: intelligent configuration mode. In this mode, you need to only specify the number of vCPUs, memory size, instance family, and maximum price. Auto Scaling selects the lowest-priced instance type based on your configurations to create ECS instances. This mode is available only for scaling groups that reside in virtual private clouds (VPCs). This mode reduces the failures of scale-outs caused by insufficient inventory of instance types.
11357
+ * * InstanceType: In this mode, you must specify one instance type.
11358
+ * * InstanceTypes: In this mode, you can specify more than one instance type.
11359
+ * * InstanceTypeOverrides: In this mode, you can specify multiple instance types and weights for the instance types.
11360
+ * * Cpu and Memory: In this mode, you must specify the number of vCPUs and the memory size. Auto Scaling determines the range of available instance types based on factors such as I/O optimization requirements and zones. Then, Auto Scaling creates ECS instances of the lowest-priced instance type. This mode is available only if the Scaling Policy parameter is set to Cost Optimization Policy and no instance type is specified in the scaling configuration.
11361
+ * > You cannot specify InstanceType, InstanceTypes, InstanceTypeOverrides, and Cpu and Memory parameters at the same time. You can specify InstanceType and InstancePatternInfos or specify InstanceTypes and InstancePatternInfo at the same time. If you specify the InstanceType and InstancePatternInfos parameters or specify the InstanceTypes and InstancePatternInfos parameters at the same time, Auto Scaling preferentially uses the instance types that are specified by the InstanceType or InstanceTypes parameter for scale-outs. If the instance types that are specified by the InstanceType or InstanceTypes parameter do not have sufficient inventory, Auto Scaling uses the instance types that are specified by the InstancePatternInfos parameter for scale-outs.
11362
+ *
11363
+ * @param request CreateScalingConfigurationRequest
11364
+ * @return CreateScalingConfigurationResponse
11365
+ */
10569
11366
  async createScalingConfiguration(request) {
10570
11367
  let runtime = new $Util.RuntimeOptions({});
10571
11368
  return await this.createScalingConfigurationWithOptions(request, runtime);
10572
11369
  }
11370
+ /**
11371
+ * A scaling group is a group of Elastic Compute Service (ECS) instances that can be used in similar business scenarios.
11372
+ * You can create only a limited number of scaling groups in a region. Go to Quota Center to check the quota of the scaling groups.
11373
+ * A scaling group does not immediately take effect after you create the scaling group. You must call the EnableScalingGroup operation to enable the scaling group. After you enable the scaling group, Auto Scaling can execute scaling rules to trigger scaling activities in the scaling group.
11374
+ * The Classic Load Balancer (CLB) instances and ApsaraDB RDS instances that you want to associate with a scaling group must reside in the same region as the scaling group. CLB instances are formerly known as Server Load Balancer (SLB) instances. For more information, see the "Regions and zones" topic.
11375
+ * If you associate a CLB instance when you create a scaling group, Auto Scaling automatically adds ECS instances in the scaling group to the backend server group of the associated CLB instance. You can specify a server group to which ECS instances can be added. You can add ECS instances to the following types of server groups:
11376
+ * * Default server group: a group of ECS instances that are used to receive requests. If you do not specify a vServer group or a primary/secondary server group for a listener, requests are forwarded to the ECS instances in the default server group.
11377
+ * * vServer group: If you want to forward requests to backend servers that are not in the default server group or configure domain name-based or URL-based forwarding rules, you can use vServer groups.
11378
+ * > If you specify the default server group and multiple vServer groups at the same time, ECS instances are added to all specified server groups.
11379
+ * The default weight of an ECS instance that is added as a backend server of a CLB instance is 50. The CLB instance that you want to associate with your scaling group must meet the following requirements:
11380
+ * * The CLB instance must be in the Active state. You can call the DescribeLoadBalancers operation to query the state of the CLB instance.
11381
+ * * The health check feature must be enabled on all listener ports that are configured for the CLB instance. Otherwise, the scaling group fails to be created.
11382
+ * If you associate an Application Load Balancer (ALB) server group with a scaling group, Auto Scaling automatically adds ECS instances that are in the scaling group to the ALB server group to process requests distributed by the ALB instance to which the ALB server group belongs. You can specify multiple ALB server groups. The server groups must reside in the same virtual private cloud (VPC) as the scaling group. For more information, see the "AttachAlbServerGroups" topic.
11383
+ * If you associate an ApsaraDB RDS instance with a scaling group, Auto Scaling automatically adds the private IP addresses of the ECS instances in the scaling group to the IP address whitelist of the ApsaraDB RDS instance. The ApsaraDB RDS instance that you want to associate with your scaling group must meet the following requirements:
11384
+ * * The ApsaraDB RDS instance must be in the Running state. You can call the DescribeDBInstances operation to query the state of the ApsaraDB RDS instance.
11385
+ * * The number of IP addresses in the IP address whitelist of the ApsaraDB RDS instance cannot exceed the upper limit. For more information, see the "Configure whitelists" topic.
11386
+ * If you set the MultiAZPolicy parameter of the scaling group to COST_OPTIMIZED, take note of the following items:
11387
+ * * You can use the OnDemandBaseCapacity, OnDemandPercentageAboveBaseCapacity, and SpotInstancePools parameters to specify the instance allocation method based on the cost optimization policy. This instance allocation method is prioritized during scaling.
11388
+ * * If you do not specify the OnDemandBaseCapacity, OnDemandPercentageAboveBaseCapacity, or SpotInstancePools parameter, the instance types that are provided at the lowest price are used to create instances based on the cost optimization policy.
11389
+ * If you set the `Tags.Propagate` parameter of the scaling group to true, the following rules apply:
11390
+ * * Tags that you add to the scaling group cannot be propagated to existing instances in the scaling group. Tags that you add to the scaling group are propagated to only new instances.
11391
+ * * If you specify instance tags in the scaling configuration that is used to create instances and propagate the tags that you add to the scaling group to the instances, all tags exist at the same time.
11392
+ * * If the tag key that you specify in a scaling configuration and the tag key that you add to the scaling group of the scaling configuration are the same, the tag value that you specify in the scaling configuration is preferentially used.
11393
+ *
11394
+ * @param request CreateScalingGroupRequest
11395
+ * @param runtime runtime options for this request RuntimeOptions
11396
+ * @return CreateScalingGroupResponse
11397
+ */
10573
11398
  async createScalingGroupWithOptions(request, runtime) {
10574
11399
  tea_util_1.default.validateModel(request);
10575
11400
  let query = {};
@@ -10627,6 +11452,9 @@ class Client extends openapi_client_1.default {
10627
11452
  if (!tea_util_1.default.isUnset(request.lifecycleHooks)) {
10628
11453
  query["LifecycleHooks"] = request.lifecycleHooks;
10629
11454
  }
11455
+ if (!tea_util_1.default.isUnset(request.loadBalancerConfigs)) {
11456
+ query["LoadBalancerConfigs"] = request.loadBalancerConfigs;
11457
+ }
10630
11458
  if (!tea_util_1.default.isUnset(request.loadBalancerIds)) {
10631
11459
  query["LoadBalancerIds"] = request.loadBalancerIds;
10632
11460
  }
@@ -10660,6 +11488,9 @@ class Client extends openapi_client_1.default {
10660
11488
  if (!tea_util_1.default.isUnset(request.removalPolicies)) {
10661
11489
  query["RemovalPolicies"] = request.removalPolicies;
10662
11490
  }
11491
+ if (!tea_util_1.default.isUnset(request.resourceGroupId)) {
11492
+ query["ResourceGroupId"] = request.resourceGroupId;
11493
+ }
10663
11494
  if (!tea_util_1.default.isUnset(request.resourceOwnerAccount)) {
10664
11495
  query["ResourceOwnerAccount"] = request.resourceOwnerAccount;
10665
11496
  }
@@ -10669,6 +11500,9 @@ class Client extends openapi_client_1.default {
10669
11500
  if (!tea_util_1.default.isUnset(request.scalingPolicy)) {
10670
11501
  query["ScalingPolicy"] = request.scalingPolicy;
10671
11502
  }
11503
+ if (!tea_util_1.default.isUnset(request.serverGroups)) {
11504
+ query["ServerGroups"] = request.serverGroups;
11505
+ }
10672
11506
  if (!tea_util_1.default.isUnset(request.spotAllocationStrategy)) {
10673
11507
  query["SpotAllocationStrategy"] = request.spotAllocationStrategy;
10674
11508
  }
@@ -10709,10 +11543,44 @@ class Client extends openapi_client_1.default {
10709
11543
  });
10710
11544
  return $tea.cast(await this.callApi(params, req, runtime), new CreateScalingGroupResponse({}));
10711
11545
  }
11546
+ /**
11547
+ * A scaling group is a group of Elastic Compute Service (ECS) instances that can be used in similar business scenarios.
11548
+ * You can create only a limited number of scaling groups in a region. Go to Quota Center to check the quota of the scaling groups.
11549
+ * A scaling group does not immediately take effect after you create the scaling group. You must call the EnableScalingGroup operation to enable the scaling group. After you enable the scaling group, Auto Scaling can execute scaling rules to trigger scaling activities in the scaling group.
11550
+ * The Classic Load Balancer (CLB) instances and ApsaraDB RDS instances that you want to associate with a scaling group must reside in the same region as the scaling group. CLB instances are formerly known as Server Load Balancer (SLB) instances. For more information, see the "Regions and zones" topic.
11551
+ * If you associate a CLB instance when you create a scaling group, Auto Scaling automatically adds ECS instances in the scaling group to the backend server group of the associated CLB instance. You can specify a server group to which ECS instances can be added. You can add ECS instances to the following types of server groups:
11552
+ * * Default server group: a group of ECS instances that are used to receive requests. If you do not specify a vServer group or a primary/secondary server group for a listener, requests are forwarded to the ECS instances in the default server group.
11553
+ * * vServer group: If you want to forward requests to backend servers that are not in the default server group or configure domain name-based or URL-based forwarding rules, you can use vServer groups.
11554
+ * > If you specify the default server group and multiple vServer groups at the same time, ECS instances are added to all specified server groups.
11555
+ * The default weight of an ECS instance that is added as a backend server of a CLB instance is 50. The CLB instance that you want to associate with your scaling group must meet the following requirements:
11556
+ * * The CLB instance must be in the Active state. You can call the DescribeLoadBalancers operation to query the state of the CLB instance.
11557
+ * * The health check feature must be enabled on all listener ports that are configured for the CLB instance. Otherwise, the scaling group fails to be created.
11558
+ * If you associate an Application Load Balancer (ALB) server group with a scaling group, Auto Scaling automatically adds ECS instances that are in the scaling group to the ALB server group to process requests distributed by the ALB instance to which the ALB server group belongs. You can specify multiple ALB server groups. The server groups must reside in the same virtual private cloud (VPC) as the scaling group. For more information, see the "AttachAlbServerGroups" topic.
11559
+ * If you associate an ApsaraDB RDS instance with a scaling group, Auto Scaling automatically adds the private IP addresses of the ECS instances in the scaling group to the IP address whitelist of the ApsaraDB RDS instance. The ApsaraDB RDS instance that you want to associate with your scaling group must meet the following requirements:
11560
+ * * The ApsaraDB RDS instance must be in the Running state. You can call the DescribeDBInstances operation to query the state of the ApsaraDB RDS instance.
11561
+ * * The number of IP addresses in the IP address whitelist of the ApsaraDB RDS instance cannot exceed the upper limit. For more information, see the "Configure whitelists" topic.
11562
+ * If you set the MultiAZPolicy parameter of the scaling group to COST_OPTIMIZED, take note of the following items:
11563
+ * * You can use the OnDemandBaseCapacity, OnDemandPercentageAboveBaseCapacity, and SpotInstancePools parameters to specify the instance allocation method based on the cost optimization policy. This instance allocation method is prioritized during scaling.
11564
+ * * If you do not specify the OnDemandBaseCapacity, OnDemandPercentageAboveBaseCapacity, or SpotInstancePools parameter, the instance types that are provided at the lowest price are used to create instances based on the cost optimization policy.
11565
+ * If you set the `Tags.Propagate` parameter of the scaling group to true, the following rules apply:
11566
+ * * Tags that you add to the scaling group cannot be propagated to existing instances in the scaling group. Tags that you add to the scaling group are propagated to only new instances.
11567
+ * * If you specify instance tags in the scaling configuration that is used to create instances and propagate the tags that you add to the scaling group to the instances, all tags exist at the same time.
11568
+ * * If the tag key that you specify in a scaling configuration and the tag key that you add to the scaling group of the scaling configuration are the same, the tag value that you specify in the scaling configuration is preferentially used.
11569
+ *
11570
+ * @param request CreateScalingGroupRequest
11571
+ * @return CreateScalingGroupResponse
11572
+ */
10712
11573
  async createScalingGroup(request) {
10713
11574
  let runtime = new $Util.RuntimeOptions({});
10714
11575
  return await this.createScalingGroupWithOptions(request, runtime);
10715
11576
  }
11577
+ /**
11578
+ * Creates a scaling rule.
11579
+ *
11580
+ * @param request CreateScalingRuleRequest
11581
+ * @param runtime runtime options for this request RuntimeOptions
11582
+ * @return CreateScalingRuleResponse
11583
+ */
10716
11584
  async createScalingRuleWithOptions(request, runtime) {
10717
11585
  tea_util_1.default.validateModel(request);
10718
11586
  let query = {};
@@ -10722,6 +11590,9 @@ class Client extends openapi_client_1.default {
10722
11590
  if (!tea_util_1.default.isUnset(request.adjustmentValue)) {
10723
11591
  query["AdjustmentValue"] = request.adjustmentValue;
10724
11592
  }
11593
+ if (!tea_util_1.default.isUnset(request.alarmDimensions)) {
11594
+ query["AlarmDimensions"] = request.alarmDimensions;
11595
+ }
10725
11596
  if (!tea_util_1.default.isUnset(request.cooldown)) {
10726
11597
  query["Cooldown"] = request.cooldown;
10727
11598
  }
@@ -10801,10 +11672,23 @@ class Client extends openapi_client_1.default {
10801
11672
  });
10802
11673
  return $tea.cast(await this.callApi(params, req, runtime), new CreateScalingRuleResponse({}));
10803
11674
  }
11675
+ /**
11676
+ * Creates a scaling rule.
11677
+ *
11678
+ * @param request CreateScalingRuleRequest
11679
+ * @return CreateScalingRuleResponse
11680
+ */
10804
11681
  async createScalingRule(request) {
10805
11682
  let runtime = new $Util.RuntimeOptions({});
10806
11683
  return await this.createScalingRuleWithOptions(request, runtime);
10807
11684
  }
11685
+ /**
11686
+ * Creates a scheduled task.
11687
+ *
11688
+ * @param request CreateScheduledTaskRequest
11689
+ * @param runtime runtime options for this request RuntimeOptions
11690
+ * @return CreateScheduledTaskResponse
11691
+ */
10808
11692
  async createScheduledTaskWithOptions(request, runtime) {
10809
11693
  tea_util_1.default.validateModel(request);
10810
11694
  let query = {};
@@ -10875,6 +11759,12 @@ class Client extends openapi_client_1.default {
10875
11759
  });
10876
11760
  return $tea.cast(await this.callApi(params, req, runtime), new CreateScheduledTaskResponse({}));
10877
11761
  }
11762
+ /**
11763
+ * Creates a scheduled task.
11764
+ *
11765
+ * @param request CreateScheduledTaskRequest
11766
+ * @return CreateScheduledTaskResponse
11767
+ */
10878
11768
  async createScheduledTask(request) {
10879
11769
  let runtime = new $Util.RuntimeOptions({});
10880
11770
  return await this.createScheduledTaskWithOptions(request, runtime);
@@ -10949,6 +11839,13 @@ class Client extends openapi_client_1.default {
10949
11839
  let runtime = new $Util.RuntimeOptions({});
10950
11840
  return await this.deleteAlarmWithOptions(request, runtime);
10951
11841
  }
11842
+ /**
11843
+ * Deletes a scaling configuration that is used to create elastic container instances.
11844
+ *
11845
+ * @param request DeleteEciScalingConfigurationRequest
11846
+ * @param runtime runtime options for this request RuntimeOptions
11847
+ * @return DeleteEciScalingConfigurationResponse
11848
+ */
10952
11849
  async deleteEciScalingConfigurationWithOptions(request, runtime) {
10953
11850
  tea_util_1.default.validateModel(request);
10954
11851
  let query = {};
@@ -10983,10 +11880,25 @@ class Client extends openapi_client_1.default {
10983
11880
  });
10984
11881
  return $tea.cast(await this.callApi(params, req, runtime), new DeleteEciScalingConfigurationResponse({}));
10985
11882
  }
11883
+ /**
11884
+ * Deletes a scaling configuration that is used to create elastic container instances.
11885
+ *
11886
+ * @param request DeleteEciScalingConfigurationRequest
11887
+ * @return DeleteEciScalingConfigurationResponse
11888
+ */
10986
11889
  async deleteEciScalingConfiguration(request) {
10987
11890
  let runtime = new $Util.RuntimeOptions({});
10988
11891
  return await this.deleteEciScalingConfigurationWithOptions(request, runtime);
10989
11892
  }
11893
+ /**
11894
+ * If you delete a lifecycle hook that is in effect in a scaling group, instances exit the Pending state in advance. You can use one of the following methods to specify the lifecycle hooks that you want to delete:
11895
+ * * Specify the scaling group ID of the lifecycle hook that you want to delete by using the ScalingGroupId parameter and the lifecycle hook name by using the LifecycleHookName parameter.
11896
+ * * Specify the lifecycle hook ID by using the LifecycleHookId parameter. In this case, the ScalingGroupId parameter and the LifecycleHookName parameter are ignored.
11897
+ *
11898
+ * @param request DeleteLifecycleHookRequest
11899
+ * @param runtime runtime options for this request RuntimeOptions
11900
+ * @return DeleteLifecycleHookResponse
11901
+ */
10990
11902
  async deleteLifecycleHookWithOptions(request, runtime) {
10991
11903
  tea_util_1.default.validateModel(request);
10992
11904
  let query = {};
@@ -11027,6 +11939,14 @@ class Client extends openapi_client_1.default {
11027
11939
  });
11028
11940
  return $tea.cast(await this.callApi(params, req, runtime), new DeleteLifecycleHookResponse({}));
11029
11941
  }
11942
+ /**
11943
+ * If you delete a lifecycle hook that is in effect in a scaling group, instances exit the Pending state in advance. You can use one of the following methods to specify the lifecycle hooks that you want to delete:
11944
+ * * Specify the scaling group ID of the lifecycle hook that you want to delete by using the ScalingGroupId parameter and the lifecycle hook name by using the LifecycleHookName parameter.
11945
+ * * Specify the lifecycle hook ID by using the LifecycleHookId parameter. In this case, the ScalingGroupId parameter and the LifecycleHookName parameter are ignored.
11946
+ *
11947
+ * @param request DeleteLifecycleHookRequest
11948
+ * @return DeleteLifecycleHookResponse
11949
+ */
11030
11950
  async deleteLifecycleHook(request) {
11031
11951
  let runtime = new $Util.RuntimeOptions({});
11032
11952
  return await this.deleteLifecycleHookWithOptions(request, runtime);
@@ -11069,6 +11989,13 @@ class Client extends openapi_client_1.default {
11069
11989
  let runtime = new $Util.RuntimeOptions({});
11070
11990
  return await this.deleteNotificationConfigurationWithOptions(request, runtime);
11071
11991
  }
11992
+ /**
11993
+ * Deletes a scaling configuration that is used to create Elastic Compute Service (ECS) instances.
11994
+ *
11995
+ * @param request DeleteScalingConfigurationRequest
11996
+ * @param runtime runtime options for this request RuntimeOptions
11997
+ * @return DeleteScalingConfigurationResponse
11998
+ */
11072
11999
  async deleteScalingConfigurationWithOptions(request, runtime) {
11073
12000
  tea_util_1.default.validateModel(request);
11074
12001
  let query = {};
@@ -11100,10 +12027,23 @@ class Client extends openapi_client_1.default {
11100
12027
  });
11101
12028
  return $tea.cast(await this.callApi(params, req, runtime), new DeleteScalingConfigurationResponse({}));
11102
12029
  }
12030
+ /**
12031
+ * Deletes a scaling configuration that is used to create Elastic Compute Service (ECS) instances.
12032
+ *
12033
+ * @param request DeleteScalingConfigurationRequest
12034
+ * @return DeleteScalingConfigurationResponse
12035
+ */
11103
12036
  async deleteScalingConfiguration(request) {
11104
12037
  let runtime = new $Util.RuntimeOptions({});
11105
12038
  return await this.deleteScalingConfigurationWithOptions(request, runtime);
11106
12039
  }
12040
+ /**
12041
+ * Deletes a scaling group.
12042
+ *
12043
+ * @param request DeleteScalingGroupRequest
12044
+ * @param runtime runtime options for this request RuntimeOptions
12045
+ * @return DeleteScalingGroupResponse
12046
+ */
11107
12047
  async deleteScalingGroupWithOptions(request, runtime) {
11108
12048
  tea_util_1.default.validateModel(request);
11109
12049
  let query = {};
@@ -11141,6 +12081,12 @@ class Client extends openapi_client_1.default {
11141
12081
  });
11142
12082
  return $tea.cast(await this.callApi(params, req, runtime), new DeleteScalingGroupResponse({}));
11143
12083
  }
12084
+ /**
12085
+ * Deletes a scaling group.
12086
+ *
12087
+ * @param request DeleteScalingGroupRequest
12088
+ * @return DeleteScalingGroupResponse
12089
+ */
11144
12090
  async deleteScalingGroup(request) {
11145
12091
  let runtime = new $Util.RuntimeOptions({});
11146
12092
  return await this.deleteScalingGroupWithOptions(request, runtime);
@@ -11330,6 +12276,13 @@ class Client extends openapi_client_1.default {
11330
12276
  let runtime = new $Util.RuntimeOptions({});
11331
12277
  return await this.describeEciScalingConfigurationsWithOptions(request, runtime);
11332
12278
  }
12279
+ /**
12280
+ * Queries lifecycle actions.
12281
+ *
12282
+ * @param request DescribeLifecycleActionsRequest
12283
+ * @param runtime runtime options for this request RuntimeOptions
12284
+ * @return DescribeLifecycleActionsResponse
12285
+ */
11333
12286
  async describeLifecycleActionsWithOptions(request, runtime) {
11334
12287
  tea_util_1.default.validateModel(request);
11335
12288
  let query = {};
@@ -11370,10 +12323,26 @@ class Client extends openapi_client_1.default {
11370
12323
  });
11371
12324
  return $tea.cast(await this.callApi(params, req, runtime), new DescribeLifecycleActionsResponse({}));
11372
12325
  }
12326
+ /**
12327
+ * Queries lifecycle actions.
12328
+ *
12329
+ * @param request DescribeLifecycleActionsRequest
12330
+ * @return DescribeLifecycleActionsResponse
12331
+ */
11373
12332
  async describeLifecycleActions(request) {
11374
12333
  let runtime = new $Util.RuntimeOptions({});
11375
12334
  return await this.describeLifecycleActionsWithOptions(request, runtime);
11376
12335
  }
12336
+ /**
12337
+ * You can use one of the following methods to query lifecycle hooks:
12338
+ * * Specify a list of lifecycle hook IDs by using the LifecycleHookIds parameter. In this case, you do not need to specify the ScalingGroupId and LifecycleHookName parameters.
12339
+ * * Specify the scaling group ID by using the ScalingGroupId parameter.
12340
+ * * Specify the scaling group ID by using the ScalingGroupId parameter and the lifecycle hook name by using the LifecycleHookName parameter at the same time.
12341
+ *
12342
+ * @param request DescribeLifecycleHooksRequest
12343
+ * @param runtime runtime options for this request RuntimeOptions
12344
+ * @return DescribeLifecycleHooksResponse
12345
+ */
11377
12346
  async describeLifecycleHooksWithOptions(request, runtime) {
11378
12347
  tea_util_1.default.validateModel(request);
11379
12348
  let query = {};
@@ -11420,6 +12389,15 @@ class Client extends openapi_client_1.default {
11420
12389
  });
11421
12390
  return $tea.cast(await this.callApi(params, req, runtime), new DescribeLifecycleHooksResponse({}));
11422
12391
  }
12392
+ /**
12393
+ * You can use one of the following methods to query lifecycle hooks:
12394
+ * * Specify a list of lifecycle hook IDs by using the LifecycleHookIds parameter. In this case, you do not need to specify the ScalingGroupId and LifecycleHookName parameters.
12395
+ * * Specify the scaling group ID by using the ScalingGroupId parameter.
12396
+ * * Specify the scaling group ID by using the ScalingGroupId parameter and the lifecycle hook name by using the LifecycleHookName parameter at the same time.
12397
+ *
12398
+ * @param request DescribeLifecycleHooksRequest
12399
+ * @return DescribeLifecycleHooksResponse
12400
+ */
11423
12401
  async describeLifecycleHooks(request) {
11424
12402
  let runtime = new $Util.RuntimeOptions({});
11425
12403
  return await this.describeLifecycleHooksWithOptions(request, runtime);
@@ -11552,6 +12530,15 @@ class Client extends openapi_client_1.default {
11552
12530
  let runtime = new $Util.RuntimeOptions({});
11553
12531
  return await this.describeRegionsWithOptions(request, runtime);
11554
12532
  }
12533
+ /**
12534
+ * You can specify a scaling group ID to query all scaling activities in the scaling group.
12535
+ * You can filter query results based on the status of scaling activities.
12536
+ * You can query scaling activities that are executed in the previous 30 days.
12537
+ *
12538
+ * @param request DescribeScalingActivitiesRequest
12539
+ * @param runtime runtime options for this request RuntimeOptions
12540
+ * @return DescribeScalingActivitiesResponse
12541
+ */
11555
12542
  async describeScalingActivitiesWithOptions(request, runtime) {
11556
12543
  tea_util_1.default.validateModel(request);
11557
12544
  let query = {};
@@ -11601,6 +12588,14 @@ class Client extends openapi_client_1.default {
11601
12588
  });
11602
12589
  return $tea.cast(await this.callApi(params, req, runtime), new DescribeScalingActivitiesResponse({}));
11603
12590
  }
12591
+ /**
12592
+ * You can specify a scaling group ID to query all scaling activities in the scaling group.
12593
+ * You can filter query results based on the status of scaling activities.
12594
+ * You can query scaling activities that are executed in the previous 30 days.
12595
+ *
12596
+ * @param request DescribeScalingActivitiesRequest
12597
+ * @return DescribeScalingActivitiesResponse
12598
+ */
11604
12599
  async describeScalingActivities(request) {
11605
12600
  let runtime = new $Util.RuntimeOptions({});
11606
12601
  return await this.describeScalingActivitiesWithOptions(request, runtime);
@@ -11714,6 +12709,9 @@ class Client extends openapi_client_1.default {
11714
12709
  if (!tea_util_1.default.isUnset(request.regionId)) {
11715
12710
  query["RegionId"] = request.regionId;
11716
12711
  }
12712
+ if (!tea_util_1.default.isUnset(request.resourceGroupId)) {
12713
+ query["ResourceGroupId"] = request.resourceGroupId;
12714
+ }
11717
12715
  if (!tea_util_1.default.isUnset(request.resourceOwnerAccount)) {
11718
12716
  query["ResourceOwnerAccount"] = request.resourceOwnerAccount;
11719
12717
  }
@@ -11749,6 +12747,13 @@ class Client extends openapi_client_1.default {
11749
12747
  let runtime = new $Util.RuntimeOptions({});
11750
12748
  return await this.describeScalingGroupsWithOptions(request, runtime);
11751
12749
  }
12750
+ /**
12751
+ * You can query ECS instances by scaling group ID, scaling configuration ID, health status, lifecycle status, and instance creation method.
12752
+ *
12753
+ * @param request DescribeScalingInstancesRequest
12754
+ * @param runtime runtime options for this request RuntimeOptions
12755
+ * @return DescribeScalingInstancesResponse
12756
+ */
11752
12757
  async describeScalingInstancesWithOptions(request, runtime) {
11753
12758
  tea_util_1.default.validateModel(request);
11754
12759
  let query = {};
@@ -11810,10 +12815,23 @@ class Client extends openapi_client_1.default {
11810
12815
  });
11811
12816
  return $tea.cast(await this.callApi(params, req, runtime), new DescribeScalingInstancesResponse({}));
11812
12817
  }
12818
+ /**
12819
+ * You can query ECS instances by scaling group ID, scaling configuration ID, health status, lifecycle status, and instance creation method.
12820
+ *
12821
+ * @param request DescribeScalingInstancesRequest
12822
+ * @return DescribeScalingInstancesResponse
12823
+ */
11813
12824
  async describeScalingInstances(request) {
11814
12825
  let runtime = new $Util.RuntimeOptions({});
11815
12826
  return await this.describeScalingInstancesWithOptions(request, runtime);
11816
12827
  }
12828
+ /**
12829
+ * Queries all scaling rules in a scaling group.
12830
+ *
12831
+ * @param request DescribeScalingRulesRequest
12832
+ * @param runtime runtime options for this request RuntimeOptions
12833
+ * @return DescribeScalingRulesResponse
12834
+ */
11817
12835
  async describeScalingRulesWithOptions(request, runtime) {
11818
12836
  tea_util_1.default.validateModel(request);
11819
12837
  let query = {};
@@ -11872,10 +12890,23 @@ class Client extends openapi_client_1.default {
11872
12890
  });
11873
12891
  return $tea.cast(await this.callApi(params, req, runtime), new DescribeScalingRulesResponse({}));
11874
12892
  }
12893
+ /**
12894
+ * Queries all scaling rules in a scaling group.
12895
+ *
12896
+ * @param request DescribeScalingRulesRequest
12897
+ * @return DescribeScalingRulesResponse
12898
+ */
11875
12899
  async describeScalingRules(request) {
11876
12900
  let runtime = new $Util.RuntimeOptions({});
11877
12901
  return await this.describeScalingRulesWithOptions(request, runtime);
11878
12902
  }
12903
+ /**
12904
+ * You can query scheduled tasks by scaling rule, task ID, or task name.
12905
+ *
12906
+ * @param request DescribeScheduledTasksRequest
12907
+ * @param runtime runtime options for this request RuntimeOptions
12908
+ * @return DescribeScheduledTasksResponse
12909
+ */
11879
12910
  async describeScheduledTasksWithOptions(request, runtime) {
11880
12911
  tea_util_1.default.validateModel(request);
11881
12912
  let query = {};
@@ -11928,6 +12959,12 @@ class Client extends openapi_client_1.default {
11928
12959
  });
11929
12960
  return $tea.cast(await this.callApi(params, req, runtime), new DescribeScheduledTasksResponse({}));
11930
12961
  }
12962
+ /**
12963
+ * You can query scheduled tasks by scaling rule, task ID, or task name.
12964
+ *
12965
+ * @param request DescribeScheduledTasksRequest
12966
+ * @return DescribeScheduledTasksResponse
12967
+ */
11931
12968
  async describeScheduledTasks(request) {
11932
12969
  let runtime = new $Util.RuntimeOptions({});
11933
12970
  return await this.describeScheduledTasksWithOptions(request, runtime);
@@ -12020,6 +13057,13 @@ class Client extends openapi_client_1.default {
12020
13057
  let runtime = new $Util.RuntimeOptions({});
12021
13058
  return await this.detachDBInstancesWithOptions(request, runtime);
12022
13059
  }
13060
+ /**
13061
+ * Removes one or more Elastic Compute Service (ECS) instances or elastic container instances from a scaling group.
13062
+ *
13063
+ * @param request DetachInstancesRequest
13064
+ * @param runtime runtime options for this request RuntimeOptions
13065
+ * @return DetachInstancesResponse
13066
+ */
12023
13067
  async detachInstancesWithOptions(request, runtime) {
12024
13068
  tea_util_1.default.validateModel(request);
12025
13069
  let query = {};
@@ -12066,6 +13110,12 @@ class Client extends openapi_client_1.default {
12066
13110
  });
12067
13111
  return $tea.cast(await this.callApi(params, req, runtime), new DetachInstancesResponse({}));
12068
13112
  }
13113
+ /**
13114
+ * Removes one or more Elastic Compute Service (ECS) instances or elastic container instances from a scaling group.
13115
+ *
13116
+ * @param request DetachInstancesRequest
13117
+ * @return DetachInstancesResponse
13118
+ */
12069
13119
  async detachInstances(request) {
12070
13120
  let runtime = new $Util.RuntimeOptions({});
12071
13121
  return await this.detachInstancesWithOptions(request, runtime);
@@ -12117,6 +13167,57 @@ class Client extends openapi_client_1.default {
12117
13167
  let runtime = new $Util.RuntimeOptions({});
12118
13168
  return await this.detachLoadBalancersWithOptions(request, runtime);
12119
13169
  }
13170
+ async detachServerGroupsWithOptions(request, runtime) {
13171
+ tea_util_1.default.validateModel(request);
13172
+ let query = {};
13173
+ if (!tea_util_1.default.isUnset(request.clientToken)) {
13174
+ query["ClientToken"] = request.clientToken;
13175
+ }
13176
+ if (!tea_util_1.default.isUnset(request.forceDetach)) {
13177
+ query["ForceDetach"] = request.forceDetach;
13178
+ }
13179
+ if (!tea_util_1.default.isUnset(request.ownerId)) {
13180
+ query["OwnerId"] = request.ownerId;
13181
+ }
13182
+ if (!tea_util_1.default.isUnset(request.regionId)) {
13183
+ query["RegionId"] = request.regionId;
13184
+ }
13185
+ if (!tea_util_1.default.isUnset(request.resourceOwnerAccount)) {
13186
+ query["ResourceOwnerAccount"] = request.resourceOwnerAccount;
13187
+ }
13188
+ if (!tea_util_1.default.isUnset(request.scalingGroupId)) {
13189
+ query["ScalingGroupId"] = request.scalingGroupId;
13190
+ }
13191
+ if (!tea_util_1.default.isUnset(request.serverGroups)) {
13192
+ query["ServerGroups"] = request.serverGroups;
13193
+ }
13194
+ let req = new $OpenApi.OpenApiRequest({
13195
+ query: openapi_util_1.default.query(query),
13196
+ });
13197
+ let params = new $OpenApi.Params({
13198
+ action: "DetachServerGroups",
13199
+ version: "2022-02-22",
13200
+ protocol: "HTTPS",
13201
+ pathname: "/",
13202
+ method: "POST",
13203
+ authType: "AK",
13204
+ style: "RPC",
13205
+ reqBodyType: "formData",
13206
+ bodyType: "json",
13207
+ });
13208
+ return $tea.cast(await this.callApi(params, req, runtime), new DetachServerGroupsResponse({}));
13209
+ }
13210
+ async detachServerGroups(request) {
13211
+ let runtime = new $Util.RuntimeOptions({});
13212
+ return await this.detachServerGroupsWithOptions(request, runtime);
13213
+ }
13214
+ /**
13215
+ * Detaches one or more vServer groups of a Classic Load Balancer (CLB) instance from a scaling group.
13216
+ *
13217
+ * @param request DetachVServerGroupsRequest
13218
+ * @param runtime runtime options for this request RuntimeOptions
13219
+ * @return DetachVServerGroupsResponse
13220
+ */
12120
13221
  async detachVServerGroupsWithOptions(request, runtime) {
12121
13222
  tea_util_1.default.validateModel(request);
12122
13223
  let query = {};
@@ -12157,6 +13258,12 @@ class Client extends openapi_client_1.default {
12157
13258
  });
12158
13259
  return $tea.cast(await this.callApi(params, req, runtime), new DetachVServerGroupsResponse({}));
12159
13260
  }
13261
+ /**
13262
+ * Detaches one or more vServer groups of a Classic Load Balancer (CLB) instance from a scaling group.
13263
+ *
13264
+ * @param request DetachVServerGroupsRequest
13265
+ * @return DetachVServerGroupsResponse
13266
+ */
12160
13267
  async detachVServerGroups(request) {
12161
13268
  let runtime = new $Util.RuntimeOptions({});
12162
13269
  return await this.detachVServerGroupsWithOptions(request, runtime);
@@ -12196,6 +13303,13 @@ class Client extends openapi_client_1.default {
12196
13303
  let runtime = new $Util.RuntimeOptions({});
12197
13304
  return await this.disableAlarmWithOptions(request, runtime);
12198
13305
  }
13306
+ /**
13307
+ * Disables a scaling group.
13308
+ *
13309
+ * @param request DisableScalingGroupRequest
13310
+ * @param runtime runtime options for this request RuntimeOptions
13311
+ * @return DisableScalingGroupResponse
13312
+ */
12199
13313
  async disableScalingGroupWithOptions(request, runtime) {
12200
13314
  tea_util_1.default.validateModel(request);
12201
13315
  let query = {};
@@ -12230,6 +13344,12 @@ class Client extends openapi_client_1.default {
12230
13344
  });
12231
13345
  return $tea.cast(await this.callApi(params, req, runtime), new DisableScalingGroupResponse({}));
12232
13346
  }
13347
+ /**
13348
+ * Disables a scaling group.
13349
+ *
13350
+ * @param request DisableScalingGroupRequest
13351
+ * @return DisableScalingGroupResponse
13352
+ */
12233
13353
  async disableScalingGroup(request) {
12234
13354
  let runtime = new $Util.RuntimeOptions({});
12235
13355
  return await this.disableScalingGroupWithOptions(request, runtime);
@@ -12269,6 +13389,17 @@ class Client extends openapi_client_1.default {
12269
13389
  let runtime = new $Util.RuntimeOptions({});
12270
13390
  return await this.enableAlarmWithOptions(request, runtime);
12271
13391
  }
13392
+ /**
13393
+ * You can call this operation to enable a scaling group that is in the Inactive state and has an instance configuration source. The instance configuration source can be a scaling configuration, a launch template, or an Elastic Compute Service (ECS) instance that you specified when you created the scaling group. If a scaling group is not in the Inactive state or does not have an active instance configuration source, you cannot call this operation to enable the scaling group.
13394
+ * > A scaling group can have only one active instance configuration source. When you call this operation to enable a scaling group, you can specify a scaling configuration or a launch template for the scaling group. If an instance configuration source has been configured for the scaling group before you call this operation, the scaling configuration or launch template that you specify in the request overwrites the original scaling configuration or launch template.
13395
+ * If you specify a value for the InstanceIds parameter when you call the operation, Auto Scaling checks whether the total number of ECS instances is within the range allowed in the scaling group after you call the operation.
13396
+ * * If the total number of ECS instances is less than the minimum number of instances required in the scaling group after you call the operation, Auto Scaling automatically creates the required number of pay-as-you-go ECS instances and adds the instances to the scaling group to reach the minimum number. For example, if the minimum number of instances required in your scaling group is five, and you specify the InstanceIds parameter to add two ECS instances to the scaling group, Auto Scaling automatically creates three instances in the scaling group after the two instances are added.
13397
+ * * If the value of the TotalCapacity parameter is greater than the value of the MaxSize parameter, the call fails.
13398
+ *
13399
+ * @param request EnableScalingGroupRequest
13400
+ * @param runtime runtime options for this request RuntimeOptions
13401
+ * @return EnableScalingGroupResponse
13402
+ */
12272
13403
  async enableScalingGroupWithOptions(request, runtime) {
12273
13404
  tea_util_1.default.validateModel(request);
12274
13405
  let query = {};
@@ -12324,10 +13455,30 @@ class Client extends openapi_client_1.default {
12324
13455
  });
12325
13456
  return $tea.cast(await this.callApi(params, req, runtime), new EnableScalingGroupResponse({}));
12326
13457
  }
13458
+ /**
13459
+ * You can call this operation to enable a scaling group that is in the Inactive state and has an instance configuration source. The instance configuration source can be a scaling configuration, a launch template, or an Elastic Compute Service (ECS) instance that you specified when you created the scaling group. If a scaling group is not in the Inactive state or does not have an active instance configuration source, you cannot call this operation to enable the scaling group.
13460
+ * > A scaling group can have only one active instance configuration source. When you call this operation to enable a scaling group, you can specify a scaling configuration or a launch template for the scaling group. If an instance configuration source has been configured for the scaling group before you call this operation, the scaling configuration or launch template that you specify in the request overwrites the original scaling configuration or launch template.
13461
+ * If you specify a value for the InstanceIds parameter when you call the operation, Auto Scaling checks whether the total number of ECS instances is within the range allowed in the scaling group after you call the operation.
13462
+ * * If the total number of ECS instances is less than the minimum number of instances required in the scaling group after you call the operation, Auto Scaling automatically creates the required number of pay-as-you-go ECS instances and adds the instances to the scaling group to reach the minimum number. For example, if the minimum number of instances required in your scaling group is five, and you specify the InstanceIds parameter to add two ECS instances to the scaling group, Auto Scaling automatically creates three instances in the scaling group after the two instances are added.
13463
+ * * If the value of the TotalCapacity parameter is greater than the value of the MaxSize parameter, the call fails.
13464
+ *
13465
+ * @param request EnableScalingGroupRequest
13466
+ * @return EnableScalingGroupResponse
13467
+ */
12327
13468
  async enableScalingGroup(request) {
12328
13469
  let runtime = new $Util.RuntimeOptions({});
12329
13470
  return await this.enableScalingGroupWithOptions(request, runtime);
12330
13471
  }
13472
+ /**
13473
+ * * If you call the operation to set an Elastic Compute Service (ECS) instance in a scaling group that is associated with a Server Load Balancer (SLB) instance to the Standby state, the weight of the ECS instance as a backend server of the SLB instance is set to 0.
13474
+ * * You can remove an ECS instance that is in the Standby state from a scaling group and release the instance.
13475
+ * * When scale-in activities are triggered by changes in the number of scaling groups or by event-triggered tasks, the ECS instances that are in the Standby state are not removed from the scaling groups.
13476
+ * * If Auto Scaling considers an ECS instance that is in the Standby state unhealthy, such as in the Stopping or Restarting state, Auto Scaling does not update the health check status of the ECS instance or trigger scale-in activities to remove the ECS instance from the scaling group. Auto Scaling updates the health check status of the ECS instance only when the ECS instance is no longer in the Standby state.
13477
+ *
13478
+ * @param request EnterStandbyRequest
13479
+ * @param runtime runtime options for this request RuntimeOptions
13480
+ * @return EnterStandbyResponse
13481
+ */
12331
13482
  async enterStandbyWithOptions(request, runtime) {
12332
13483
  tea_util_1.default.validateModel(request);
12333
13484
  let query = {};
@@ -12365,10 +13516,26 @@ class Client extends openapi_client_1.default {
12365
13516
  });
12366
13517
  return $tea.cast(await this.callApi(params, req, runtime), new EnterStandbyResponse({}));
12367
13518
  }
13519
+ /**
13520
+ * * If you call the operation to set an Elastic Compute Service (ECS) instance in a scaling group that is associated with a Server Load Balancer (SLB) instance to the Standby state, the weight of the ECS instance as a backend server of the SLB instance is set to 0.
13521
+ * * You can remove an ECS instance that is in the Standby state from a scaling group and release the instance.
13522
+ * * When scale-in activities are triggered by changes in the number of scaling groups or by event-triggered tasks, the ECS instances that are in the Standby state are not removed from the scaling groups.
13523
+ * * If Auto Scaling considers an ECS instance that is in the Standby state unhealthy, such as in the Stopping or Restarting state, Auto Scaling does not update the health check status of the ECS instance or trigger scale-in activities to remove the ECS instance from the scaling group. Auto Scaling updates the health check status of the ECS instance only when the ECS instance is no longer in the Standby state.
13524
+ *
13525
+ * @param request EnterStandbyRequest
13526
+ * @return EnterStandbyResponse
13527
+ */
12368
13528
  async enterStandby(request) {
12369
13529
  let runtime = new $Util.RuntimeOptions({});
12370
13530
  return await this.enterStandbyWithOptions(request, runtime);
12371
13531
  }
13532
+ /**
13533
+ * Executes a scaling rule.
13534
+ *
13535
+ * @param request ExecuteScalingRuleRequest
13536
+ * @param runtime runtime options for this request RuntimeOptions
13537
+ * @return ExecuteScalingRuleResponse
13538
+ */
12372
13539
  async executeScalingRuleWithOptions(request, runtime) {
12373
13540
  tea_util_1.default.validateModel(request);
12374
13541
  let query = {};
@@ -12415,10 +13582,23 @@ class Client extends openapi_client_1.default {
12415
13582
  });
12416
13583
  return $tea.cast(await this.callApi(params, req, runtime), new ExecuteScalingRuleResponse({}));
12417
13584
  }
13585
+ /**
13586
+ * Executes a scaling rule.
13587
+ *
13588
+ * @param request ExecuteScalingRuleRequest
13589
+ * @return ExecuteScalingRuleResponse
13590
+ */
12418
13591
  async executeScalingRule(request) {
12419
13592
  let runtime = new $Util.RuntimeOptions({});
12420
13593
  return await this.executeScalingRuleWithOptions(request, runtime);
12421
13594
  }
13595
+ /**
13596
+ * If the scaling group is associated with a load balancing instance, the ECS instance weight will be set to the weight value defined in the scaling configuration.
13597
+ *
13598
+ * @param request ExitStandbyRequest
13599
+ * @param runtime runtime options for this request RuntimeOptions
13600
+ * @return ExitStandbyResponse
13601
+ */
12422
13602
  async exitStandbyWithOptions(request, runtime) {
12423
13603
  tea_util_1.default.validateModel(request);
12424
13604
  let query = {};
@@ -12459,6 +13639,12 @@ class Client extends openapi_client_1.default {
12459
13639
  });
12460
13640
  return $tea.cast(await this.callApi(params, req, runtime), new ExitStandbyResponse({}));
12461
13641
  }
13642
+ /**
13643
+ * If the scaling group is associated with a load balancing instance, the ECS instance weight will be set to the weight value defined in the scaling configuration.
13644
+ *
13645
+ * @param request ExitStandbyRequest
13646
+ * @return ExitStandbyResponse
13647
+ */
12462
13648
  async exitStandby(request) {
12463
13649
  let runtime = new $Util.RuntimeOptions({});
12464
13650
  return await this.exitStandbyWithOptions(request, runtime);
@@ -12592,6 +13778,13 @@ class Client extends openapi_client_1.default {
12592
13778
  let runtime = new $Util.RuntimeOptions({});
12593
13779
  return await this.listTagValuesWithOptions(request, runtime);
12594
13780
  }
13781
+ /**
13782
+ * Modifies an event-triggered task.
13783
+ *
13784
+ * @param request ModifyAlarmRequest
13785
+ * @param runtime runtime options for this request RuntimeOptions
13786
+ * @return ModifyAlarmResponse
13787
+ */
12595
13788
  async modifyAlarmWithOptions(request, runtime) {
12596
13789
  tea_util_1.default.validateModel(request);
12597
13790
  let query = {};
@@ -12668,10 +13861,23 @@ class Client extends openapi_client_1.default {
12668
13861
  });
12669
13862
  return $tea.cast(await this.callApi(params, req, runtime), new ModifyAlarmResponse({}));
12670
13863
  }
13864
+ /**
13865
+ * Modifies an event-triggered task.
13866
+ *
13867
+ * @param request ModifyAlarmRequest
13868
+ * @return ModifyAlarmResponse
13869
+ */
12671
13870
  async modifyAlarm(request) {
12672
13871
  let runtime = new $Util.RuntimeOptions({});
12673
13872
  return await this.modifyAlarmWithOptions(request, runtime);
12674
13873
  }
13874
+ /**
13875
+ * If you want to change the name of a scaling configuration in a scaling group, make sure that the new name is unique within the scaling group.
13876
+ *
13877
+ * @param request ModifyEciScalingConfigurationRequest
13878
+ * @param runtime runtime options for this request RuntimeOptions
13879
+ * @return ModifyEciScalingConfigurationResponse
13880
+ */
12675
13881
  async modifyEciScalingConfigurationWithOptions(request, runtime) {
12676
13882
  tea_util_1.default.validateModel(request);
12677
13883
  let query = {};
@@ -12693,6 +13899,9 @@ class Client extends openapi_client_1.default {
12693
13899
  if (!tea_util_1.default.isUnset(request.containers)) {
12694
13900
  query["Containers"] = request.containers;
12695
13901
  }
13902
+ if (!tea_util_1.default.isUnset(request.containersUpdateType)) {
13903
+ query["ContainersUpdateType"] = request.containersUpdateType;
13904
+ }
12696
13905
  if (!tea_util_1.default.isUnset(request.costOptimization)) {
12697
13906
  query["CostOptimization"] = request.costOptimization;
12698
13907
  }
@@ -12823,10 +14032,25 @@ class Client extends openapi_client_1.default {
12823
14032
  });
12824
14033
  return $tea.cast(await this.callApi(params, req, runtime), new ModifyEciScalingConfigurationResponse({}));
12825
14034
  }
14035
+ /**
14036
+ * If you want to change the name of a scaling configuration in a scaling group, make sure that the new name is unique within the scaling group.
14037
+ *
14038
+ * @param request ModifyEciScalingConfigurationRequest
14039
+ * @return ModifyEciScalingConfigurationResponse
14040
+ */
12826
14041
  async modifyEciScalingConfiguration(request) {
12827
14042
  let runtime = new $Util.RuntimeOptions({});
12828
14043
  return await this.modifyEciScalingConfigurationWithOptions(request, runtime);
12829
14044
  }
14045
+ /**
14046
+ * You can use one of the following methods to specify the lifecycle hook that you want to modify:
14047
+ * * Specify the lifecycle hook ID by using the LifecycleHookId parameter. When you use this method, the ScalingGroupId and LifecycleHookName parameters are ignored.
14048
+ * * Specify the scaling group ID by using the ScalingGroupId parameter and specify the lifecycle hook name by using the LifecycleHookName parameter.
14049
+ *
14050
+ * @param request ModifyLifecycleHookRequest
14051
+ * @param runtime runtime options for this request RuntimeOptions
14052
+ * @return ModifyLifecycleHookResponse
14053
+ */
12830
14054
  async modifyLifecycleHookWithOptions(request, runtime) {
12831
14055
  tea_util_1.default.validateModel(request);
12832
14056
  let query = {};
@@ -12885,6 +14109,14 @@ class Client extends openapi_client_1.default {
12885
14109
  });
12886
14110
  return $tea.cast(await this.callApi(params, req, runtime), new ModifyLifecycleHookResponse({}));
12887
14111
  }
14112
+ /**
14113
+ * You can use one of the following methods to specify the lifecycle hook that you want to modify:
14114
+ * * Specify the lifecycle hook ID by using the LifecycleHookId parameter. When you use this method, the ScalingGroupId and LifecycleHookName parameters are ignored.
14115
+ * * Specify the scaling group ID by using the ScalingGroupId parameter and specify the lifecycle hook name by using the LifecycleHookName parameter.
14116
+ *
14117
+ * @param request ModifyLifecycleHookRequest
14118
+ * @return ModifyLifecycleHookResponse
14119
+ */
12888
14120
  async modifyLifecycleHook(request) {
12889
14121
  let runtime = new $Util.RuntimeOptions({});
12890
14122
  return await this.modifyLifecycleHookWithOptions(request, runtime);
@@ -12930,6 +14162,13 @@ class Client extends openapi_client_1.default {
12930
14162
  let runtime = new $Util.RuntimeOptions({});
12931
14163
  return await this.modifyNotificationConfigurationWithOptions(request, runtime);
12932
14164
  }
14165
+ /**
14166
+ * If you want to change the name of a scaling configuration in a scaling group, make sure that the new name is unique within the scaling group.
14167
+ *
14168
+ * @param tmpReq ModifyScalingConfigurationRequest
14169
+ * @param runtime runtime options for this request RuntimeOptions
14170
+ * @return ModifyScalingConfigurationResponse
14171
+ */
12933
14172
  async modifyScalingConfigurationWithOptions(tmpReq, runtime) {
12934
14173
  tea_util_1.default.validateModel(tmpReq);
12935
14174
  let request = new ModifyScalingConfigurationShrinkRequest({});
@@ -13070,10 +14309,13 @@ class Client extends openapi_client_1.default {
13070
14309
  if (!tea_util_1.default.isUnset(request.zoneId)) {
13071
14310
  query["ZoneId"] = request.zoneId;
13072
14311
  }
13073
- if (!tea_util_1.default.isUnset($tea.toMap(request.privatePoolOptions))) {
14312
+ if (!tea_util_1.default.isUnset(request.imageOptions)) {
14313
+ query["ImageOptions"] = request.imageOptions;
14314
+ }
14315
+ if (!tea_util_1.default.isUnset(request.privatePoolOptions)) {
13074
14316
  query["PrivatePoolOptions"] = request.privatePoolOptions;
13075
14317
  }
13076
- if (!tea_util_1.default.isUnset($tea.toMap(request.systemDisk))) {
14318
+ if (!tea_util_1.default.isUnset(request.systemDisk)) {
13077
14319
  query["SystemDisk"] = request.systemDisk;
13078
14320
  }
13079
14321
  let req = new $OpenApi.OpenApiRequest({
@@ -13092,10 +14334,23 @@ class Client extends openapi_client_1.default {
13092
14334
  });
13093
14335
  return $tea.cast(await this.callApi(params, req, runtime), new ModifyScalingConfigurationResponse({}));
13094
14336
  }
14337
+ /**
14338
+ * If you want to change the name of a scaling configuration in a scaling group, make sure that the new name is unique within the scaling group.
14339
+ *
14340
+ * @param request ModifyScalingConfigurationRequest
14341
+ * @return ModifyScalingConfigurationResponse
14342
+ */
13095
14343
  async modifyScalingConfiguration(request) {
13096
14344
  let runtime = new $Util.RuntimeOptions({});
13097
14345
  return await this.modifyScalingConfigurationWithOptions(request, runtime);
13098
14346
  }
14347
+ /**
14348
+ * Modifies a scaling group.
14349
+ *
14350
+ * @param request ModifyScalingGroupRequest
14351
+ * @param runtime runtime options for this request RuntimeOptions
14352
+ * @return ModifyScalingGroupResponse
14353
+ */
13099
14354
  async modifyScalingGroupWithOptions(request, runtime) {
13100
14355
  tea_util_1.default.validateModel(request);
13101
14356
  let query = {};
@@ -13202,6 +14457,12 @@ class Client extends openapi_client_1.default {
13202
14457
  });
13203
14458
  return $tea.cast(await this.callApi(params, req, runtime), new ModifyScalingGroupResponse({}));
13204
14459
  }
14460
+ /**
14461
+ * Modifies a scaling group.
14462
+ *
14463
+ * @param request ModifyScalingGroupRequest
14464
+ * @return ModifyScalingGroupResponse
14465
+ */
13205
14466
  async modifyScalingGroup(request) {
13206
14467
  let runtime = new $Util.RuntimeOptions({});
13207
14468
  return await this.modifyScalingGroupWithOptions(request, runtime);
@@ -13215,6 +14476,9 @@ class Client extends openapi_client_1.default {
13215
14476
  if (!tea_util_1.default.isUnset(request.adjustmentValue)) {
13216
14477
  query["AdjustmentValue"] = request.adjustmentValue;
13217
14478
  }
14479
+ if (!tea_util_1.default.isUnset(request.alarmDimensions)) {
14480
+ query["AlarmDimensions"] = request.alarmDimensions;
14481
+ }
13218
14482
  if (!tea_util_1.default.isUnset(request.cooldown)) {
13219
14483
  query["Cooldown"] = request.cooldown;
13220
14484
  }
@@ -13295,6 +14559,13 @@ class Client extends openapi_client_1.default {
13295
14559
  let runtime = new $Util.RuntimeOptions({});
13296
14560
  return await this.modifyScalingRuleWithOptions(request, runtime);
13297
14561
  }
14562
+ /**
14563
+ * Modifies a scheduled task.
14564
+ *
14565
+ * @param request ModifyScheduledTaskRequest
14566
+ * @param runtime runtime options for this request RuntimeOptions
14567
+ * @return ModifyScheduledTaskResponse
14568
+ */
13298
14569
  async modifyScheduledTaskWithOptions(request, runtime) {
13299
14570
  tea_util_1.default.validateModel(request);
13300
14571
  let query = {};
@@ -13368,10 +14639,23 @@ class Client extends openapi_client_1.default {
13368
14639
  });
13369
14640
  return $tea.cast(await this.callApi(params, req, runtime), new ModifyScheduledTaskResponse({}));
13370
14641
  }
14642
+ /**
14643
+ * Modifies a scheduled task.
14644
+ *
14645
+ * @param request ModifyScheduledTaskRequest
14646
+ * @return ModifyScheduledTaskResponse
14647
+ */
13371
14648
  async modifyScheduledTask(request) {
13372
14649
  let runtime = new $Util.RuntimeOptions({});
13373
14650
  return await this.modifyScheduledTaskWithOptions(request, runtime);
13374
14651
  }
14652
+ /**
14653
+ * Rebalances Elastic Compute Service (ECS) instances in a multi-zone scaling group across zones.
14654
+ *
14655
+ * @param request RebalanceInstancesRequest
14656
+ * @param runtime runtime options for this request RuntimeOptions
14657
+ * @return RebalanceInstancesResponse
14658
+ */
13375
14659
  async rebalanceInstancesWithOptions(request, runtime) {
13376
14660
  tea_util_1.default.validateModel(request);
13377
14661
  let query = {};
@@ -13409,10 +14693,23 @@ class Client extends openapi_client_1.default {
13409
14693
  });
13410
14694
  return $tea.cast(await this.callApi(params, req, runtime), new RebalanceInstancesResponse({}));
13411
14695
  }
14696
+ /**
14697
+ * Rebalances Elastic Compute Service (ECS) instances in a multi-zone scaling group across zones.
14698
+ *
14699
+ * @param request RebalanceInstancesRequest
14700
+ * @return RebalanceInstancesResponse
14701
+ */
13412
14702
  async rebalanceInstances(request) {
13413
14703
  let runtime = new $Util.RuntimeOptions({});
13414
14704
  return await this.rebalanceInstancesWithOptions(request, runtime);
13415
14705
  }
14706
+ /**
14707
+ * Prolongs a lifecycle hook for Elastic Compute Service (ECS) instances.
14708
+ *
14709
+ * @param request RecordLifecycleActionHeartbeatRequest
14710
+ * @param runtime runtime options for this request RuntimeOptions
14711
+ * @return RecordLifecycleActionHeartbeatResponse
14712
+ */
13416
14713
  async recordLifecycleActionHeartbeatWithOptions(request, runtime) {
13417
14714
  tea_util_1.default.validateModel(request);
13418
14715
  let query = {};
@@ -13453,10 +14750,30 @@ class Client extends openapi_client_1.default {
13453
14750
  });
13454
14751
  return $tea.cast(await this.callApi(params, req, runtime), new RecordLifecycleActionHeartbeatResponse({}));
13455
14752
  }
14753
+ /**
14754
+ * Prolongs a lifecycle hook for Elastic Compute Service (ECS) instances.
14755
+ *
14756
+ * @param request RecordLifecycleActionHeartbeatRequest
14757
+ * @return RecordLifecycleActionHeartbeatResponse
14758
+ */
13456
14759
  async recordLifecycleActionHeartbeat(request) {
13457
14760
  let runtime = new $Util.RuntimeOptions({});
13458
14761
  return await this.recordLifecycleActionHeartbeatWithOptions(request, runtime);
13459
14762
  }
14763
+ /**
14764
+ * * Before you call this operation, make sure that the following requirements are met:
14765
+ * * The scaling group is in the Active state.
14766
+ * * No scaling activity is in progress within the scaling group.
14767
+ * > If no scaling activity is in progress within the scaling group, you can call the operation even within the cooldown period.
14768
+ * * If an ECS instance is automatically created by Auto Scaling, or if an ECS instance is manually added to a scaling group and managed by the scaling group, the ECS instance is stopped in economical mode or is released after the instance is removed from the scaling group.
14769
+ * * If an ECS instance is manually added to a scaling group and is not managed by the scaling group, the ECS instance is not stopped or released after the instance is removed from the scaling group.
14770
+ * * If the difference between the number of existing ECS instances specified by the TotalCapacity parameter and the number of ECS instances that you call this operation to remove is less than the value of the MinSize parameter, the call fails.
14771
+ * A successful call only means that Auto Scaling accepts the request. The scaling activity may still fail. You can obtain the status of a scaling activity based on the value of the ScalingActivityId parameter in the response.
14772
+ *
14773
+ * @param request RemoveInstancesRequest
14774
+ * @param runtime runtime options for this request RuntimeOptions
14775
+ * @return RemoveInstancesResponse
14776
+ */
13460
14777
  async removeInstancesWithOptions(request, runtime) {
13461
14778
  tea_util_1.default.validateModel(request);
13462
14779
  let query = {};
@@ -13503,6 +14820,19 @@ class Client extends openapi_client_1.default {
13503
14820
  });
13504
14821
  return $tea.cast(await this.callApi(params, req, runtime), new RemoveInstancesResponse({}));
13505
14822
  }
14823
+ /**
14824
+ * * Before you call this operation, make sure that the following requirements are met:
14825
+ * * The scaling group is in the Active state.
14826
+ * * No scaling activity is in progress within the scaling group.
14827
+ * > If no scaling activity is in progress within the scaling group, you can call the operation even within the cooldown period.
14828
+ * * If an ECS instance is automatically created by Auto Scaling, or if an ECS instance is manually added to a scaling group and managed by the scaling group, the ECS instance is stopped in economical mode or is released after the instance is removed from the scaling group.
14829
+ * * If an ECS instance is manually added to a scaling group and is not managed by the scaling group, the ECS instance is not stopped or released after the instance is removed from the scaling group.
14830
+ * * If the difference between the number of existing ECS instances specified by the TotalCapacity parameter and the number of ECS instances that you call this operation to remove is less than the value of the MinSize parameter, the call fails.
14831
+ * A successful call only means that Auto Scaling accepts the request. The scaling activity may still fail. You can obtain the status of a scaling activity based on the value of the ScalingActivityId parameter in the response.
14832
+ *
14833
+ * @param request RemoveInstancesRequest
14834
+ * @return RemoveInstancesResponse
14835
+ */
13506
14836
  async removeInstances(request) {
13507
14837
  let runtime = new $Util.RuntimeOptions({});
13508
14838
  return await this.removeInstancesWithOptions(request, runtime);
@@ -13548,6 +14878,20 @@ class Client extends openapi_client_1.default {
13548
14878
  let runtime = new $Util.RuntimeOptions({});
13549
14879
  return await this.resumeProcessesWithOptions(request, runtime);
13550
14880
  }
14881
+ /**
14882
+ * Compared with the ExecuteScalingRule operation, the ScaleWithAdjustment operation does not require a scaling rule to be created in advance. Before you call the ScaleWithAdjustment operation, take note of the following items:
14883
+ * * The following conditions must be met:
14884
+ * * The scaling group is in the Active state.
14885
+ * * No scaling activities in the scaling group are in progress.
14886
+ * * If no scaling activities in the scaling group are in progress, the operation can trigger scaling activities even before the cooldown time expires.
14887
+ * * If the addition of a specified number of Elastic Compute Service (ECS) instances to a scaling group causes the total number of ECS instances in the scaling group to exceed the maximum number of instances allowed, Auto Scaling adds only a specific number of ECS instances to ensure that the total number of instances is equal to the maximum number of instances.
14888
+ * * If the removal of a specified number of ECS instances from a scaling group causes the total number of ECS instances in the scaling group to drop below the minimum number of instances allowed, Auto Scaling removes only a specific number of ECS instances to ensure that the total number of instances is equal to the minimum number of instances.
14889
+ * A successful call indicates that Auto Scaling accepts the request. However, the scaling activity may still fail. You can obtain the status of a scaling activity by using the value of the `ScalingActivityId` parameter in the response.
14890
+ *
14891
+ * @param request ScaleWithAdjustmentRequest
14892
+ * @param runtime runtime options for this request RuntimeOptions
14893
+ * @return ScaleWithAdjustmentResponse
14894
+ */
13551
14895
  async scaleWithAdjustmentWithOptions(request, runtime) {
13552
14896
  tea_util_1.default.validateModel(request);
13553
14897
  let query = {};
@@ -13591,6 +14935,19 @@ class Client extends openapi_client_1.default {
13591
14935
  });
13592
14936
  return $tea.cast(await this.callApi(params, req, runtime), new ScaleWithAdjustmentResponse({}));
13593
14937
  }
14938
+ /**
14939
+ * Compared with the ExecuteScalingRule operation, the ScaleWithAdjustment operation does not require a scaling rule to be created in advance. Before you call the ScaleWithAdjustment operation, take note of the following items:
14940
+ * * The following conditions must be met:
14941
+ * * The scaling group is in the Active state.
14942
+ * * No scaling activities in the scaling group are in progress.
14943
+ * * If no scaling activities in the scaling group are in progress, the operation can trigger scaling activities even before the cooldown time expires.
14944
+ * * If the addition of a specified number of Elastic Compute Service (ECS) instances to a scaling group causes the total number of ECS instances in the scaling group to exceed the maximum number of instances allowed, Auto Scaling adds only a specific number of ECS instances to ensure that the total number of instances is equal to the maximum number of instances.
14945
+ * * If the removal of a specified number of ECS instances from a scaling group causes the total number of ECS instances in the scaling group to drop below the minimum number of instances allowed, Auto Scaling removes only a specific number of ECS instances to ensure that the total number of instances is equal to the minimum number of instances.
14946
+ * A successful call indicates that Auto Scaling accepts the request. However, the scaling activity may still fail. You can obtain the status of a scaling activity by using the value of the `ScalingActivityId` parameter in the response.
14947
+ *
14948
+ * @param request ScaleWithAdjustmentRequest
14949
+ * @return ScaleWithAdjustmentResponse
14950
+ */
13594
14951
  async scaleWithAdjustment(request) {
13595
14952
  let runtime = new $Util.RuntimeOptions({});
13596
14953
  return await this.scaleWithAdjustmentWithOptions(request, runtime);
@@ -13633,6 +14990,13 @@ class Client extends openapi_client_1.default {
13633
14990
  let runtime = new $Util.RuntimeOptions({});
13634
14991
  return await this.setGroupDeletionProtectionWithOptions(request, runtime);
13635
14992
  }
14993
+ /**
14994
+ * Configures the health check feature for Elastic Compute Service (ECS) instances.
14995
+ *
14996
+ * @param request SetInstanceHealthRequest
14997
+ * @param runtime runtime options for this request RuntimeOptions
14998
+ * @return SetInstanceHealthResponse
14999
+ */
13636
15000
  async setInstanceHealthWithOptions(request, runtime) {
13637
15001
  tea_util_1.default.validateModel(request);
13638
15002
  let query = {};
@@ -13664,10 +15028,23 @@ class Client extends openapi_client_1.default {
13664
15028
  });
13665
15029
  return $tea.cast(await this.callApi(params, req, runtime), new SetInstanceHealthResponse({}));
13666
15030
  }
15031
+ /**
15032
+ * Configures the health check feature for Elastic Compute Service (ECS) instances.
15033
+ *
15034
+ * @param request SetInstanceHealthRequest
15035
+ * @return SetInstanceHealthResponse
15036
+ */
13667
15037
  async setInstanceHealth(request) {
13668
15038
  let runtime = new $Util.RuntimeOptions({});
13669
15039
  return await this.setInstanceHealthWithOptions(request, runtime);
13670
15040
  }
15041
+ /**
15042
+ * Puts one or more Elastic Compute Service (ECS) instances into the Protected state.
15043
+ *
15044
+ * @param request SetInstancesProtectionRequest
15045
+ * @param runtime runtime options for this request RuntimeOptions
15046
+ * @return SetInstancesProtectionResponse
15047
+ */
13671
15048
  async setInstancesProtectionWithOptions(request, runtime) {
13672
15049
  tea_util_1.default.validateModel(request);
13673
15050
  let query = {};
@@ -13702,6 +15079,12 @@ class Client extends openapi_client_1.default {
13702
15079
  });
13703
15080
  return $tea.cast(await this.callApi(params, req, runtime), new SetInstancesProtectionResponse({}));
13704
15081
  }
15082
+ /**
15083
+ * Puts one or more Elastic Compute Service (ECS) instances into the Protected state.
15084
+ *
15085
+ * @param request SetInstancesProtectionRequest
15086
+ * @return SetInstancesProtectionResponse
15087
+ */
13705
15088
  async setInstancesProtection(request) {
13706
15089
  let runtime = new $Util.RuntimeOptions({});
13707
15090
  return await this.setInstancesProtectionWithOptions(request, runtime);