All Downloads are FREE. Search and download functionalities are using the official Maven repository.

com.aliyun.ens20171110.models.RunInstancesRequest Maven / Gradle / Ivy

There is a newer version: 7.4.0
Show newest version
// This file is auto-generated, don't edit it. Thanks.
package com.aliyun.ens20171110.models;

import com.aliyun.tea.*;

public class RunInstancesRequest extends TeaModel {
    /**
     * 

The number of instances that you want to create. Valid values: 1 to 100.

*

This parameter is required.

* * example: *

1

*/ @NameInMap("Amount") public Long amount; /** *

The time when to automatically release the pay-as-you-go instance. Specify the time in the ISO 8601 standard in the yyyy-MM-ddTHH:mm:ssZ format. The time must be in Coordinated Universal Time (UTC).

*
    *
  • If the value of ss is not 00, the start time is automatically rounded down to the nearest minute based on the value of mm.
  • *
  • The specified time must be at least one hour later than the current time.
  • *
*

Use the UTC time format: yyyy-MM-ddTHH:mmZ

* * example: *

2023-06-28T14:38:52Z

*/ @NameInMap("AutoReleaseTime") public String autoReleaseTime; /** *

Specifies whether to enable auto-renewal. Valid values:

*
    *
  • true.
  • *
  • false (default).
  • *
*
*

This parameter is not available when InstanceChargeType is set to PostPaid.

*
* * example: *

true

*/ @NameInMap("AutoRenew") public Boolean autoRenew; /** *

Specifies whether to use coupons. Default value: true.

* * example: *

true

*/ @NameInMap("AutoUseCoupon") public String autoUseCoupon; /** *

The billing cycle of computing resources of the instance. Only pay-as-you-go instances are supported. Valid values:

*
    *
  • Day.
  • *
  • Month.
  • *
* * example: *

Day

*/ @NameInMap("BillingCycle") public String billingCycle; /** *

The Internet service provider (ISP).

*
*

This parameter is not available if ScheduleAreaLevel is set to Region and is required if ScheduleAreaLevel is set to other values.

*
* * example: *

telecom

*/ @NameInMap("Carrier") public String carrier; /** *

The specifications of data disks.

*/ @NameInMap("DataDisk") public java.util.List dataDisk; /** *

The ID of the node.

*
*

This parameter is required if ScheduleAreaLevel is set to Region and is not available if ScheduleAreaLevel is set to other values.

*
* * example: *

cn-foshan-telecom

*/ @NameInMap("EnsRegionId") public String ensRegionId; /** *

The name of the host.

* * example: *

test-HostName

*/ @NameInMap("HostName") public String hostName; /** *

The ID of the image. For ARM PCB-based server instances, leave this parameter empty. For other instances, this parameter is required.

* * example: *

m-5si16wo6simkt267p8b7hcmy3

*/ @NameInMap("ImageId") public String imageId; /** *

The billing policy of the instance. Valid values:

*
    *
  • instance: Bills are generated based on instances.
  • *
  • If you do not specify this parameter, bills are generated based on users.
  • *
* * example: *

instance

*/ @NameInMap("InstanceChargeStrategy") public String instanceChargeStrategy; /** *

The billing method of the instance. Valid values:

*
    *
  • PrePaid: subscription.
  • *
  • PostPaid: pay-as-you-go.
  • *
*

This parameter is required.

* * example: *

PostPaid

*/ @NameInMap("InstanceChargeType") public String instanceChargeType; /** *

The name of the instance. The name must be 2 to 128 characters in length. It must start with a letter and cannot start with http:// or https://. It can contain letters, digits, colons (:), underscores (_), periods (.), and hyphens (-).

*

The default value of this parameter is the value of the InstanceId parameter.

* * example: *

TestName

*/ @NameInMap("InstanceName") public String instanceName; /** *

The instance type.

*

This parameter is required.

* * example: *

ens.sn1.small

*/ @NameInMap("InstanceType") public String instanceType; /** *

The bandwidth billing method. Valid values:

*
    *
  • BandwidthByDay: pay by daily peak bandwidth
  • *
  • 95BandwidthByMonth: pay by monthly 95th percentile bandwidth
  • *
*
*

This parameter is required if you purchase an ENS instance for the first time. The value that you specified is used as the default value for subsequent purchases.

*
* * example: *

BandwidthByDay

*/ @NameInMap("InternetChargeType") public String internetChargeType; /** *

The maximum public bandwidth. If the value of this parameter is greater than 0, a public IP address is assigned to the instance.

*

This parameter is required.

* * example: *

1

*/ @NameInMap("InternetMaxBandwidthOut") public Long internetMaxBandwidthOut; /** *

The type of the IP address. Examples:

*
    *
  • ipv4 (default).
  • *
  • ipv6.
  • *
  • ipv4Andipv6.
  • *
* * example: *

ipv4

*/ @NameInMap("IpType") public String ipType; /** *

The name of the key pair.

*
*

You need to specify at least one of Password, KeyPairName, and PasswordInherit.

*
* * example: *

wx2-jumpserver

*/ @NameInMap("KeyPairName") public String keyPairName; /** *

The code of the region.

*
*

This parameter is not available if ScheduleAreaLevel is set to Region and is required if ScheduleAreaLevel is set to other values.

*
* * example: *

350000

*/ @NameInMap("NetDistrictCode") public String netDistrictCode; /** *

The ID of the network.

*
*

This parameter is available only if ScheduleAreaLevel is set to Region and cannot be configured if ScheduleAreaLevel is set to other values. Otherwise, an error occurs.

*
* * example: *

net-id

*/ @NameInMap("NetWorkId") public String netWorkId; /** *

The password that is used to connect to the instance.

*
*

You need to specify at least one of Password, KeyPairName, and PasswordInherit.

*
* * example: *

testPassword

*/ @NameInMap("Password") public String password; /** *

Specifies whether to use the preset password of the image. Valid values:

*
    *
  • true
  • *
  • false
  • *
*
*

You need to specify at least one of Password, KeyPairName, and PasswordInherit.

*
* * example: *

false

*/ @NameInMap("PasswordInherit") public Boolean passwordInherit; /** *

The unit of the subscription period.

*
    *
  • If PeriodUnit is set to Day, Period can only be set to 3.
  • *
  • If PeriodUnit is Month, Period can be set to 1 to 9 or 12.
  • *
* * example: *

1-9,12

*/ @NameInMap("Period") public Long period; /** *

The unit of the subscription period. Valid values:

*
    *
  • Month (default).
  • *
  • Day.
  • *
* * example: *

Month

*/ @NameInMap("PeriodUnit") public String periodUnit; /** *

The private IP address.

*
*

This parameter is available only if ScheduleAreaLevel is set to Region and cannot be configured if ScheduleAreaLevel is set to other values. Otherwise, an error occurs. If you specify a private IP address, the number of instances must be 1. The private IP address takes effect only when the private IP address and the vSwitch ID are not empty.

*
* * example: *

10.0.0.120

*/ @NameInMap("PrivateIpAddress") public String privateIpAddress; /** *

Specifies whether to enable public IP address identification. Valid values: true and false. Default value: false.

* * example: *

true

*/ @NameInMap("PublicIpIdentification") public Boolean publicIpIdentification; /** *

The scheduling level. This parameter specifies area-level scheduling or node-level scheduling. Valid values:

*
    *
  • Big: greater area
  • *
  • Middle: province
  • *
  • Small: city
  • *
  • Region: node
  • *
*

This parameter is required.

* * example: *

Region

*/ @NameInMap("ScheduleAreaLevel") public String scheduleAreaLevel; /** *

The scheduling price policy. Valid values:

*
    *
  • PriceHighPriority: The high price prevails.
  • *
  • PriceLowPriority: The low price prevails.
  • *
* * example: *

PriceHighPriority

*/ @NameInMap("SchedulingPriceStrategy") public String schedulingPriceStrategy; /** *

The scheduling policy of the taint. Valid values:

*
    *
  • Concentrate
  • *
  • Disperse
  • *
*
*

If ScheduleAreaLevel is set to Region, set this parameter to Concentrate. If ScheduleAreaLevel is set to other values, set this parameter to Concentrate or Disperse based on your business requirements.

*
* * example: *

concentrate

*/ @NameInMap("SchedulingStrategy") public String schedulingStrategy; /** *

The ID of security group.

* * example: *

sg-test

*/ @NameInMap("SecurityId") public String securityId; @NameInMap("SpotDuration") public Integer spotDuration; /** *

The bidding policy for the pay-as-you-go instance. This parameter is valid only when the InstanceChargeType parameter is set to PostPaid. Valid values:

*
    *
  • NoSpot: The instance is created as a regular pay-as-you-go instance.
  • *
  • SpotAsPriceGo: The instance is a preemptible instance for which the market price at the time of purchase is automatically used as the bidding price.
  • *
*

Default value: NoSpot.

* * example: *

SpotAsPriceGo

*/ @NameInMap("SpotStrategy") public String spotStrategy; /** *

The specification of the system disk.

*/ @NameInMap("SystemDisk") public RunInstancesRequestSystemDisk systemDisk; /** *

The tags.

*/ @NameInMap("Tag") public java.util.List tag; /** *

Specifies whether to append sequential suffixes to the hostname specified by the HostName parameter and to the instance name specified by the InstanceName parameter. The sequential suffixes range from 001 to 999.

* * example: *

True

*/ @NameInMap("UniqueSuffix") public Boolean uniqueSuffix; /** *

The custom data. The maximum data size is 16 KB. You can specify UserData. UserData must be Base64-encoded.

* * example: *

ZWtest

*/ @NameInMap("UserData") public String userData; /** *

The ID of the vSwitch.

*
*

This parameter is available only if ScheduleAreaLevel is set to Region and cannot be configured if ScheduleAreaLevel is set to other values. Otherwise, an error occurs.

*
* * example: *

vsw-5sagnw7m613oulalkd10nv0ob

*/ @NameInMap("VSwitchId") public String vSwitchId; public static RunInstancesRequest build(java.util.Map map) throws Exception { RunInstancesRequest self = new RunInstancesRequest(); return TeaModel.build(map, self); } public RunInstancesRequest setAmount(Long amount) { this.amount = amount; return this; } public Long getAmount() { return this.amount; } public RunInstancesRequest setAutoReleaseTime(String autoReleaseTime) { this.autoReleaseTime = autoReleaseTime; return this; } public String getAutoReleaseTime() { return this.autoReleaseTime; } public RunInstancesRequest setAutoRenew(Boolean autoRenew) { this.autoRenew = autoRenew; return this; } public Boolean getAutoRenew() { return this.autoRenew; } public RunInstancesRequest setAutoUseCoupon(String autoUseCoupon) { this.autoUseCoupon = autoUseCoupon; return this; } public String getAutoUseCoupon() { return this.autoUseCoupon; } public RunInstancesRequest setBillingCycle(String billingCycle) { this.billingCycle = billingCycle; return this; } public String getBillingCycle() { return this.billingCycle; } public RunInstancesRequest setCarrier(String carrier) { this.carrier = carrier; return this; } public String getCarrier() { return this.carrier; } public RunInstancesRequest setDataDisk(java.util.List dataDisk) { this.dataDisk = dataDisk; return this; } public java.util.List getDataDisk() { return this.dataDisk; } public RunInstancesRequest setEnsRegionId(String ensRegionId) { this.ensRegionId = ensRegionId; return this; } public String getEnsRegionId() { return this.ensRegionId; } public RunInstancesRequest setHostName(String hostName) { this.hostName = hostName; return this; } public String getHostName() { return this.hostName; } public RunInstancesRequest setImageId(String imageId) { this.imageId = imageId; return this; } public String getImageId() { return this.imageId; } public RunInstancesRequest setInstanceChargeStrategy(String instanceChargeStrategy) { this.instanceChargeStrategy = instanceChargeStrategy; return this; } public String getInstanceChargeStrategy() { return this.instanceChargeStrategy; } public RunInstancesRequest setInstanceChargeType(String instanceChargeType) { this.instanceChargeType = instanceChargeType; return this; } public String getInstanceChargeType() { return this.instanceChargeType; } public RunInstancesRequest setInstanceName(String instanceName) { this.instanceName = instanceName; return this; } public String getInstanceName() { return this.instanceName; } public RunInstancesRequest setInstanceType(String instanceType) { this.instanceType = instanceType; return this; } public String getInstanceType() { return this.instanceType; } public RunInstancesRequest setInternetChargeType(String internetChargeType) { this.internetChargeType = internetChargeType; return this; } public String getInternetChargeType() { return this.internetChargeType; } public RunInstancesRequest setInternetMaxBandwidthOut(Long internetMaxBandwidthOut) { this.internetMaxBandwidthOut = internetMaxBandwidthOut; return this; } public Long getInternetMaxBandwidthOut() { return this.internetMaxBandwidthOut; } public RunInstancesRequest setIpType(String ipType) { this.ipType = ipType; return this; } public String getIpType() { return this.ipType; } public RunInstancesRequest setKeyPairName(String keyPairName) { this.keyPairName = keyPairName; return this; } public String getKeyPairName() { return this.keyPairName; } public RunInstancesRequest setNetDistrictCode(String netDistrictCode) { this.netDistrictCode = netDistrictCode; return this; } public String getNetDistrictCode() { return this.netDistrictCode; } public RunInstancesRequest setNetWorkId(String netWorkId) { this.netWorkId = netWorkId; return this; } public String getNetWorkId() { return this.netWorkId; } public RunInstancesRequest setPassword(String password) { this.password = password; return this; } public String getPassword() { return this.password; } public RunInstancesRequest setPasswordInherit(Boolean passwordInherit) { this.passwordInherit = passwordInherit; return this; } public Boolean getPasswordInherit() { return this.passwordInherit; } public RunInstancesRequest setPeriod(Long period) { this.period = period; return this; } public Long getPeriod() { return this.period; } public RunInstancesRequest setPeriodUnit(String periodUnit) { this.periodUnit = periodUnit; return this; } public String getPeriodUnit() { return this.periodUnit; } public RunInstancesRequest setPrivateIpAddress(String privateIpAddress) { this.privateIpAddress = privateIpAddress; return this; } public String getPrivateIpAddress() { return this.privateIpAddress; } public RunInstancesRequest setPublicIpIdentification(Boolean publicIpIdentification) { this.publicIpIdentification = publicIpIdentification; return this; } public Boolean getPublicIpIdentification() { return this.publicIpIdentification; } public RunInstancesRequest setScheduleAreaLevel(String scheduleAreaLevel) { this.scheduleAreaLevel = scheduleAreaLevel; return this; } public String getScheduleAreaLevel() { return this.scheduleAreaLevel; } public RunInstancesRequest setSchedulingPriceStrategy(String schedulingPriceStrategy) { this.schedulingPriceStrategy = schedulingPriceStrategy; return this; } public String getSchedulingPriceStrategy() { return this.schedulingPriceStrategy; } public RunInstancesRequest setSchedulingStrategy(String schedulingStrategy) { this.schedulingStrategy = schedulingStrategy; return this; } public String getSchedulingStrategy() { return this.schedulingStrategy; } public RunInstancesRequest setSecurityId(String securityId) { this.securityId = securityId; return this; } public String getSecurityId() { return this.securityId; } public RunInstancesRequest setSpotDuration(Integer spotDuration) { this.spotDuration = spotDuration; return this; } public Integer getSpotDuration() { return this.spotDuration; } public RunInstancesRequest setSpotStrategy(String spotStrategy) { this.spotStrategy = spotStrategy; return this; } public String getSpotStrategy() { return this.spotStrategy; } public RunInstancesRequest setSystemDisk(RunInstancesRequestSystemDisk systemDisk) { this.systemDisk = systemDisk; return this; } public RunInstancesRequestSystemDisk getSystemDisk() { return this.systemDisk; } public RunInstancesRequest setTag(java.util.List tag) { this.tag = tag; return this; } public java.util.List getTag() { return this.tag; } public RunInstancesRequest setUniqueSuffix(Boolean uniqueSuffix) { this.uniqueSuffix = uniqueSuffix; return this; } public Boolean getUniqueSuffix() { return this.uniqueSuffix; } public RunInstancesRequest setUserData(String userData) { this.userData = userData; return this; } public String getUserData() { return this.userData; } public RunInstancesRequest setVSwitchId(String vSwitchId) { this.vSwitchId = vSwitchId; return this; } public String getVSwitchId() { return this.vSwitchId; } public static class RunInstancesRequestDataDisk extends TeaModel { /** *

The category of the disk. Valid values:

*
    *
  • cloud_efficiency: ultra disk.
  • *
  • cloud_ssd: all-flash disk.
  • *
  • local_hdd: local HDD.
  • *
  • local_ssd: local SSD.
  • *
* * example: *

cloud_efficiency

*/ @NameInMap("Category") public String category; /** *

Indicates whether the cloud disk is encrypted. Valid values:

*
    *
  • true.
  • *
  • false (default).
  • *
* * example: *

false

*/ @NameInMap("Encrypted") public Boolean encrypted; /** *

The ID of the Key Management Service (KMS) key that is used for the disk. Valid values:

*
    *
  • true.
  • *
  • false (default).
  • *
*
*

If you set the Encrypted parameter to true, the default service key is used when the KMSKeyId parameter is empty.

*
* * example: *

false

*/ @NameInMap("KMSKeyId") public String KMSKeyId; /** *

The size of a data disk. Unit: GiB.

* * example: *

20

*/ @NameInMap("Size") public Long size; public static RunInstancesRequestDataDisk build(java.util.Map map) throws Exception { RunInstancesRequestDataDisk self = new RunInstancesRequestDataDisk(); return TeaModel.build(map, self); } public RunInstancesRequestDataDisk setCategory(String category) { this.category = category; return this; } public String getCategory() { return this.category; } public RunInstancesRequestDataDisk setEncrypted(Boolean encrypted) { this.encrypted = encrypted; return this; } public Boolean getEncrypted() { return this.encrypted; } public RunInstancesRequestDataDisk setKMSKeyId(String KMSKeyId) { this.KMSKeyId = KMSKeyId; return this; } public String getKMSKeyId() { return this.KMSKeyId; } public RunInstancesRequestDataDisk setSize(Long size) { this.size = size; return this; } public Long getSize() { return this.size; } } public static class RunInstancesRequestSystemDisk extends TeaModel { /** *

The category of the system disk.

* * example: *

local_ssd

*/ @NameInMap("Category") public String category; /** *

The size of the system disk. Unit: GiB.

* * example: *

50

*/ @NameInMap("Size") public Long size; public static RunInstancesRequestSystemDisk build(java.util.Map map) throws Exception { RunInstancesRequestSystemDisk self = new RunInstancesRequestSystemDisk(); return TeaModel.build(map, self); } public RunInstancesRequestSystemDisk setCategory(String category) { this.category = category; return this; } public String getCategory() { return this.category; } public RunInstancesRequestSystemDisk setSize(Long size) { this.size = size; return this; } public Long getSize() { return this.size; } } public static class RunInstancesRequestTag extends TeaModel { /** *

The key of the tag.

* * example: *

team

*/ @NameInMap("Key") public String key; /** *

The value of the tag.

* * example: *

tagValue

*/ @NameInMap("Value") public String value; public static RunInstancesRequestTag build(java.util.Map map) throws Exception { RunInstancesRequestTag self = new RunInstancesRequestTag(); return TeaModel.build(map, self); } public RunInstancesRequestTag setKey(String key) { this.key = key; return this; } public String getKey() { return this.key; } public RunInstancesRequestTag setValue(String value) { this.value = value; return this; } public String getValue() { return this.value; } } }




© 2015 - 2025 Weber Informatics LLC | Privacy Policy