Package com.pulumi.alicloud.ecs
Class InstanceArgs.Builder
- java.lang.Object
-
- com.pulumi.alicloud.ecs.InstanceArgs.Builder
-
- Enclosing class:
- InstanceArgs
public static final class InstanceArgs.Builder extends java.lang.Object
-
-
Constructor Summary
Constructors Constructor Description Builder()
Builder(InstanceArgs defaults)
-
Method Summary
All Methods Instance Methods Concrete Methods Deprecated Methods Modifier and Type Method Description InstanceArgs.Builder
allocatePublicIp(com.pulumi.core.Output<java.lang.Boolean> allocatePublicIp)
Deprecated.Field 'allocate_public_ip' has been deprecated from provider version 1.6.1.InstanceArgs.Builder
allocatePublicIp(java.lang.Boolean allocatePublicIp)
Deprecated.Field 'allocate_public_ip' has been deprecated from provider version 1.6.1.InstanceArgs.Builder
autoReleaseTime(com.pulumi.core.Output<java.lang.String> autoReleaseTime)
InstanceArgs.Builder
autoReleaseTime(java.lang.String autoReleaseTime)
InstanceArgs.Builder
autoRenewPeriod(com.pulumi.core.Output<java.lang.Integer> autoRenewPeriod)
InstanceArgs.Builder
autoRenewPeriod(java.lang.Integer autoRenewPeriod)
InstanceArgs.Builder
availabilityZone(com.pulumi.core.Output<java.lang.String> availabilityZone)
InstanceArgs.Builder
availabilityZone(java.lang.String availabilityZone)
InstanceArgs
build()
InstanceArgs.Builder
creditSpecification(com.pulumi.core.Output<java.lang.String> creditSpecification)
InstanceArgs.Builder
creditSpecification(java.lang.String creditSpecification)
InstanceArgs.Builder
dataDisks(InstanceDataDiskArgs... dataDisks)
InstanceArgs.Builder
dataDisks(com.pulumi.core.Output<java.util.List<InstanceDataDiskArgs>> dataDisks)
InstanceArgs.Builder
dataDisks(java.util.List<InstanceDataDiskArgs> dataDisks)
InstanceArgs.Builder
dedicatedHostId(com.pulumi.core.Output<java.lang.String> dedicatedHostId)
InstanceArgs.Builder
dedicatedHostId(java.lang.String dedicatedHostId)
InstanceArgs.Builder
deletionProtection(com.pulumi.core.Output<java.lang.Boolean> deletionProtection)
InstanceArgs.Builder
deletionProtection(java.lang.Boolean deletionProtection)
InstanceArgs.Builder
deploymentSetId(com.pulumi.core.Output<java.lang.String> deploymentSetId)
InstanceArgs.Builder
deploymentSetId(java.lang.String deploymentSetId)
InstanceArgs.Builder
description(com.pulumi.core.Output<java.lang.String> description)
InstanceArgs.Builder
description(java.lang.String description)
InstanceArgs.Builder
dryRun(com.pulumi.core.Output<java.lang.Boolean> dryRun)
InstanceArgs.Builder
dryRun(java.lang.Boolean dryRun)
InstanceArgs.Builder
forceDelete(com.pulumi.core.Output<java.lang.Boolean> forceDelete)
InstanceArgs.Builder
forceDelete(java.lang.Boolean forceDelete)
InstanceArgs.Builder
hostName(com.pulumi.core.Output<java.lang.String> hostName)
InstanceArgs.Builder
hostName(java.lang.String hostName)
InstanceArgs.Builder
hpcClusterId(com.pulumi.core.Output<java.lang.String> hpcClusterId)
InstanceArgs.Builder
hpcClusterId(java.lang.String hpcClusterId)
InstanceArgs.Builder
httpEndpoint(com.pulumi.core.Output<java.lang.String> httpEndpoint)
InstanceArgs.Builder
httpEndpoint(java.lang.String httpEndpoint)
InstanceArgs.Builder
httpPutResponseHopLimit(com.pulumi.core.Output<java.lang.Integer> httpPutResponseHopLimit)
InstanceArgs.Builder
httpPutResponseHopLimit(java.lang.Integer httpPutResponseHopLimit)
InstanceArgs.Builder
httpTokens(com.pulumi.core.Output<java.lang.String> httpTokens)
InstanceArgs.Builder
httpTokens(java.lang.String httpTokens)
InstanceArgs.Builder
imageId(com.pulumi.core.Output<java.lang.String> imageId)
InstanceArgs.Builder
imageId(java.lang.String imageId)
InstanceArgs.Builder
includeDataDisks(com.pulumi.core.Output<java.lang.Boolean> includeDataDisks)
InstanceArgs.Builder
includeDataDisks(java.lang.Boolean includeDataDisks)
InstanceArgs.Builder
instanceChargeType(com.pulumi.core.Output<java.lang.String> instanceChargeType)
InstanceArgs.Builder
instanceChargeType(java.lang.String instanceChargeType)
InstanceArgs.Builder
instanceName(com.pulumi.core.Output<java.lang.String> instanceName)
InstanceArgs.Builder
instanceName(java.lang.String instanceName)
InstanceArgs.Builder
instanceType(com.pulumi.core.Output<java.lang.String> instanceType)
InstanceArgs.Builder
instanceType(java.lang.String instanceType)
InstanceArgs.Builder
internetChargeType(com.pulumi.core.Output<java.lang.String> internetChargeType)
InstanceArgs.Builder
internetChargeType(java.lang.String internetChargeType)
InstanceArgs.Builder
internetMaxBandwidthIn(com.pulumi.core.Output<java.lang.Integer> internetMaxBandwidthIn)
Deprecated.The attribute is invalid and no any affect for the instance.InstanceArgs.Builder
internetMaxBandwidthIn(java.lang.Integer internetMaxBandwidthIn)
Deprecated.The attribute is invalid and no any affect for the instance.InstanceArgs.Builder
internetMaxBandwidthOut(com.pulumi.core.Output<java.lang.Integer> internetMaxBandwidthOut)
InstanceArgs.Builder
internetMaxBandwidthOut(java.lang.Integer internetMaxBandwidthOut)
InstanceArgs.Builder
ipv6AddressCount(com.pulumi.core.Output<java.lang.Integer> ipv6AddressCount)
InstanceArgs.Builder
ipv6AddressCount(java.lang.Integer ipv6AddressCount)
InstanceArgs.Builder
ipv6Addresses(com.pulumi.core.Output<java.util.List<java.lang.String>> ipv6Addresses)
InstanceArgs.Builder
ipv6Addresses(java.lang.String... ipv6Addresses)
InstanceArgs.Builder
ipv6Addresses(java.util.List<java.lang.String> ipv6Addresses)
InstanceArgs.Builder
isOutdated(com.pulumi.core.Output<java.lang.Boolean> isOutdated)
InstanceArgs.Builder
isOutdated(java.lang.Boolean isOutdated)
InstanceArgs.Builder
keyName(com.pulumi.core.Output<java.lang.String> keyName)
InstanceArgs.Builder
keyName(java.lang.String keyName)
InstanceArgs.Builder
kmsEncryptedPassword(com.pulumi.core.Output<java.lang.String> kmsEncryptedPassword)
InstanceArgs.Builder
kmsEncryptedPassword(java.lang.String kmsEncryptedPassword)
InstanceArgs.Builder
kmsEncryptionContext(com.pulumi.core.Output<java.util.Map<java.lang.String,java.lang.Object>> kmsEncryptionContext)
InstanceArgs.Builder
kmsEncryptionContext(java.util.Map<java.lang.String,java.lang.Object> kmsEncryptionContext)
InstanceArgs.Builder
launchTemplateId(com.pulumi.core.Output<java.lang.String> launchTemplateId)
InstanceArgs.Builder
launchTemplateId(java.lang.String launchTemplateId)
InstanceArgs.Builder
launchTemplateName(com.pulumi.core.Output<java.lang.String> launchTemplateName)
InstanceArgs.Builder
launchTemplateName(java.lang.String launchTemplateName)
InstanceArgs.Builder
launchTemplateVersion(com.pulumi.core.Output<java.lang.String> launchTemplateVersion)
InstanceArgs.Builder
launchTemplateVersion(java.lang.String launchTemplateVersion)
InstanceArgs.Builder
maintenanceAction(com.pulumi.core.Output<java.lang.String> maintenanceAction)
InstanceArgs.Builder
maintenanceAction(java.lang.String maintenanceAction)
InstanceArgs.Builder
maintenanceNotify(com.pulumi.core.Output<java.lang.Boolean> maintenanceNotify)
InstanceArgs.Builder
maintenanceNotify(java.lang.Boolean maintenanceNotify)
InstanceArgs.Builder
maintenanceTime(InstanceMaintenanceTimeArgs maintenanceTime)
InstanceArgs.Builder
maintenanceTime(com.pulumi.core.Output<InstanceMaintenanceTimeArgs> maintenanceTime)
InstanceArgs.Builder
networkInterfaces(InstanceNetworkInterfacesArgs networkInterfaces)
InstanceArgs.Builder
networkInterfaces(com.pulumi.core.Output<InstanceNetworkInterfacesArgs> networkInterfaces)
InstanceArgs.Builder
operatorType(com.pulumi.core.Output<java.lang.String> operatorType)
InstanceArgs.Builder
operatorType(java.lang.String operatorType)
InstanceArgs.Builder
password(com.pulumi.core.Output<java.lang.String> password)
InstanceArgs.Builder
password(java.lang.String password)
InstanceArgs.Builder
period(com.pulumi.core.Output<java.lang.Integer> period)
InstanceArgs.Builder
period(java.lang.Integer period)
InstanceArgs.Builder
periodUnit(com.pulumi.core.Output<java.lang.String> periodUnit)
InstanceArgs.Builder
periodUnit(java.lang.String periodUnit)
InstanceArgs.Builder
privateIp(com.pulumi.core.Output<java.lang.String> privateIp)
InstanceArgs.Builder
privateIp(java.lang.String privateIp)
InstanceArgs.Builder
renewalStatus(com.pulumi.core.Output<java.lang.String> renewalStatus)
InstanceArgs.Builder
renewalStatus(java.lang.String renewalStatus)
InstanceArgs.Builder
resourceGroupId(com.pulumi.core.Output<java.lang.String> resourceGroupId)
InstanceArgs.Builder
resourceGroupId(java.lang.String resourceGroupId)
InstanceArgs.Builder
roleName(com.pulumi.core.Output<java.lang.String> roleName)
InstanceArgs.Builder
roleName(java.lang.String roleName)
InstanceArgs.Builder
secondaryPrivateIpAddressCount(com.pulumi.core.Output<java.lang.Integer> secondaryPrivateIpAddressCount)
InstanceArgs.Builder
secondaryPrivateIpAddressCount(java.lang.Integer secondaryPrivateIpAddressCount)
InstanceArgs.Builder
secondaryPrivateIps(com.pulumi.core.Output<java.util.List<java.lang.String>> secondaryPrivateIps)
InstanceArgs.Builder
secondaryPrivateIps(java.lang.String... secondaryPrivateIps)
InstanceArgs.Builder
secondaryPrivateIps(java.util.List<java.lang.String> secondaryPrivateIps)
InstanceArgs.Builder
securityEnhancementStrategy(com.pulumi.core.Output<java.lang.String> securityEnhancementStrategy)
InstanceArgs.Builder
securityEnhancementStrategy(java.lang.String securityEnhancementStrategy)
InstanceArgs.Builder
securityGroups(com.pulumi.core.Output<java.util.List<java.lang.String>> securityGroups)
InstanceArgs.Builder
securityGroups(java.lang.String... securityGroups)
InstanceArgs.Builder
securityGroups(java.util.List<java.lang.String> securityGroups)
InstanceArgs.Builder
spotDuration(com.pulumi.core.Output<java.lang.Integer> spotDuration)
InstanceArgs.Builder
spotDuration(java.lang.Integer spotDuration)
InstanceArgs.Builder
spotPriceLimit(com.pulumi.core.Output<java.lang.Double> spotPriceLimit)
InstanceArgs.Builder
spotPriceLimit(java.lang.Double spotPriceLimit)
InstanceArgs.Builder
spotStrategy(com.pulumi.core.Output<java.lang.String> spotStrategy)
InstanceArgs.Builder
spotStrategy(java.lang.String spotStrategy)
InstanceArgs.Builder
status(com.pulumi.core.Output<java.lang.String> status)
InstanceArgs.Builder
status(java.lang.String status)
InstanceArgs.Builder
stoppedMode(com.pulumi.core.Output<java.lang.String> stoppedMode)
InstanceArgs.Builder
stoppedMode(java.lang.String stoppedMode)
InstanceArgs.Builder
systemDiskAutoSnapshotPolicyId(com.pulumi.core.Output<java.lang.String> systemDiskAutoSnapshotPolicyId)
InstanceArgs.Builder
systemDiskAutoSnapshotPolicyId(java.lang.String systemDiskAutoSnapshotPolicyId)
InstanceArgs.Builder
systemDiskCategory(com.pulumi.core.Output<java.lang.String> systemDiskCategory)
InstanceArgs.Builder
systemDiskCategory(java.lang.String systemDiskCategory)
InstanceArgs.Builder
systemDiskDescription(com.pulumi.core.Output<java.lang.String> systemDiskDescription)
InstanceArgs.Builder
systemDiskDescription(java.lang.String systemDiskDescription)
InstanceArgs.Builder
systemDiskEncryptAlgorithm(com.pulumi.core.Output<java.lang.String> systemDiskEncryptAlgorithm)
InstanceArgs.Builder
systemDiskEncryptAlgorithm(java.lang.String systemDiskEncryptAlgorithm)
InstanceArgs.Builder
systemDiskEncrypted(com.pulumi.core.Output<java.lang.Boolean> systemDiskEncrypted)
InstanceArgs.Builder
systemDiskEncrypted(java.lang.Boolean systemDiskEncrypted)
InstanceArgs.Builder
systemDiskKmsKeyId(com.pulumi.core.Output<java.lang.String> systemDiskKmsKeyId)
InstanceArgs.Builder
systemDiskKmsKeyId(java.lang.String systemDiskKmsKeyId)
InstanceArgs.Builder
systemDiskName(com.pulumi.core.Output<java.lang.String> systemDiskName)
InstanceArgs.Builder
systemDiskName(java.lang.String systemDiskName)
InstanceArgs.Builder
systemDiskPerformanceLevel(com.pulumi.core.Output<java.lang.String> systemDiskPerformanceLevel)
InstanceArgs.Builder
systemDiskPerformanceLevel(java.lang.String systemDiskPerformanceLevel)
InstanceArgs.Builder
systemDiskSize(com.pulumi.core.Output<java.lang.Integer> systemDiskSize)
InstanceArgs.Builder
systemDiskSize(java.lang.Integer systemDiskSize)
InstanceArgs.Builder
systemDiskStorageClusterId(com.pulumi.core.Output<java.lang.String> systemDiskStorageClusterId)
InstanceArgs.Builder
systemDiskStorageClusterId(java.lang.String systemDiskStorageClusterId)
InstanceArgs.Builder
tags(com.pulumi.core.Output<java.util.Map<java.lang.String,java.lang.String>> tags)
InstanceArgs.Builder
tags(java.util.Map<java.lang.String,java.lang.String> tags)
InstanceArgs.Builder
userData(com.pulumi.core.Output<java.lang.String> userData)
InstanceArgs.Builder
userData(java.lang.String userData)
InstanceArgs.Builder
volumeTags(com.pulumi.core.Output<java.util.Map<java.lang.String,java.lang.Object>> volumeTags)
InstanceArgs.Builder
volumeTags(java.util.Map<java.lang.String,java.lang.Object> volumeTags)
InstanceArgs.Builder
vswitchId(com.pulumi.core.Output<java.lang.String> vswitchId)
InstanceArgs.Builder
vswitchId(java.lang.String vswitchId)
-
-
-
Constructor Detail
-
Builder
public Builder()
-
Builder
public Builder(InstanceArgs defaults)
-
-
Method Detail
-
allocatePublicIp
@Deprecated public InstanceArgs.Builder allocatePublicIp(@Nullable com.pulumi.core.Output<java.lang.Boolean> allocatePublicIp)
Deprecated.Field 'allocate_public_ip' has been deprecated from provider version 1.6.1. Setting 'internet_max_bandwidth_out' larger than 0 will allocate public ip for instance.- Parameters:
allocatePublicIp
- It has been deprecated from version "1.7.0". Setting "internet_max_bandwidth_out" larger than 0 can allocate a public ip address for an instance.- Returns:
- builder
-
allocatePublicIp
@Deprecated public InstanceArgs.Builder allocatePublicIp(java.lang.Boolean allocatePublicIp)
Deprecated.Field 'allocate_public_ip' has been deprecated from provider version 1.6.1. Setting 'internet_max_bandwidth_out' larger than 0 will allocate public ip for instance.- Parameters:
allocatePublicIp
- It has been deprecated from version "1.7.0". Setting "internet_max_bandwidth_out" larger than 0 can allocate a public ip address for an instance.- Returns:
- builder
-
autoReleaseTime
public InstanceArgs.Builder autoReleaseTime(@Nullable com.pulumi.core.Output<java.lang.String> autoReleaseTime)
- Parameters:
autoReleaseTime
- The automatic release time of the `PostPaid` instance. The time follows the ISO 8601 standard and is in UTC time. Format: yyyy-MM-ddTHH:mm:ssZ. It must be at least half an hour later than the current time and less than 3 years since the current time. Setting it to null can cancel automatic release feature, and the ECS instance will not be released automatically.- Returns:
- builder
-
autoReleaseTime
public InstanceArgs.Builder autoReleaseTime(java.lang.String autoReleaseTime)
- Parameters:
autoReleaseTime
- The automatic release time of the `PostPaid` instance. The time follows the ISO 8601 standard and is in UTC time. Format: yyyy-MM-ddTHH:mm:ssZ. It must be at least half an hour later than the current time and less than 3 years since the current time. Setting it to null can cancel automatic release feature, and the ECS instance will not be released automatically.- Returns:
- builder
-
autoRenewPeriod
public InstanceArgs.Builder autoRenewPeriod(@Nullable com.pulumi.core.Output<java.lang.Integer> autoRenewPeriod)
- Parameters:
autoRenewPeriod
- Auto renewal period of an instance, in the unit of month. It is valid when `instance_charge_type` is `PrePaid`. Default to 1. Valid value: - [1, 2, 3, 6, 12] when `period_unit` in "Month" - [1, 2, 3] when `period_unit` in "Week"- Returns:
- builder
-
autoRenewPeriod
public InstanceArgs.Builder autoRenewPeriod(java.lang.Integer autoRenewPeriod)
- Parameters:
autoRenewPeriod
- Auto renewal period of an instance, in the unit of month. It is valid when `instance_charge_type` is `PrePaid`. Default to 1. Valid value: - [1, 2, 3, 6, 12] when `period_unit` in "Month" - [1, 2, 3] when `period_unit` in "Week"- Returns:
- builder
-
availabilityZone
public InstanceArgs.Builder availabilityZone(@Nullable com.pulumi.core.Output<java.lang.String> availabilityZone)
- Parameters:
availabilityZone
- The Zone to start the instance in. It is ignored and will be computed when set `vswitch_id`.- Returns:
- builder
-
availabilityZone
public InstanceArgs.Builder availabilityZone(java.lang.String availabilityZone)
- Parameters:
availabilityZone
- The Zone to start the instance in. It is ignored and will be computed when set `vswitch_id`.- Returns:
- builder
-
creditSpecification
public InstanceArgs.Builder creditSpecification(@Nullable com.pulumi.core.Output<java.lang.String> creditSpecification)
- Parameters:
creditSpecification
- Performance mode of the t5 burstable instance. Valid values: 'Standard', 'Unlimited'.- Returns:
- builder
-
creditSpecification
public InstanceArgs.Builder creditSpecification(java.lang.String creditSpecification)
- Parameters:
creditSpecification
- Performance mode of the t5 burstable instance. Valid values: 'Standard', 'Unlimited'.- Returns:
- builder
-
dataDisks
public InstanceArgs.Builder dataDisks(@Nullable com.pulumi.core.Output<java.util.List<InstanceDataDiskArgs>> dataDisks)
- Parameters:
dataDisks
- The list of data disks created with instance. See `data_disks` below.- Returns:
- builder
-
dataDisks
public InstanceArgs.Builder dataDisks(java.util.List<InstanceDataDiskArgs> dataDisks)
- Parameters:
dataDisks
- The list of data disks created with instance. See `data_disks` below.- Returns:
- builder
-
dataDisks
public InstanceArgs.Builder dataDisks(InstanceDataDiskArgs... dataDisks)
- Parameters:
dataDisks
- The list of data disks created with instance. See `data_disks` below.- Returns:
- builder
-
dedicatedHostId
public InstanceArgs.Builder dedicatedHostId(@Nullable com.pulumi.core.Output<java.lang.String> dedicatedHostId)
- Parameters:
dedicatedHostId
- The ID of the dedicated host on which to create the instance. If you set the DedicatedHostId parameter, the `spot_strategy` and `spot_price_limit` parameters cannot be set. This is because preemptible instances cannot be created on dedicated hosts.- Returns:
- builder
-
dedicatedHostId
public InstanceArgs.Builder dedicatedHostId(java.lang.String dedicatedHostId)
- Parameters:
dedicatedHostId
- The ID of the dedicated host on which to create the instance. If you set the DedicatedHostId parameter, the `spot_strategy` and `spot_price_limit` parameters cannot be set. This is because preemptible instances cannot be created on dedicated hosts.- Returns:
- builder
-
deletionProtection
public InstanceArgs.Builder deletionProtection(@Nullable com.pulumi.core.Output<java.lang.Boolean> deletionProtection)
- Parameters:
deletionProtection
- Whether enable the deletion protection or not. It does not work when the instance is spot. Default value: `false`. - true: Enable deletion protection. - false: Disable deletion protection.- Returns:
- builder
-
deletionProtection
public InstanceArgs.Builder deletionProtection(java.lang.Boolean deletionProtection)
- Parameters:
deletionProtection
- Whether enable the deletion protection or not. It does not work when the instance is spot. Default value: `false`. - true: Enable deletion protection. - false: Disable deletion protection.- Returns:
- builder
-
deploymentSetId
public InstanceArgs.Builder deploymentSetId(@Nullable com.pulumi.core.Output<java.lang.String> deploymentSetId)
- Parameters:
deploymentSetId
- The ID of the deployment set to which to deploy the instance. **NOTE:** From version 1.176.0, instance's deploymentSetId can be removed when 'deployment_set_id' = "".- Returns:
- builder
-
deploymentSetId
public InstanceArgs.Builder deploymentSetId(java.lang.String deploymentSetId)
- Parameters:
deploymentSetId
- The ID of the deployment set to which to deploy the instance. **NOTE:** From version 1.176.0, instance's deploymentSetId can be removed when 'deployment_set_id' = "".- Returns:
- builder
-
description
public InstanceArgs.Builder description(@Nullable com.pulumi.core.Output<java.lang.String> description)
- Parameters:
description
- Description of the instance, This description can have a string of 2 to 256 characters, It cannot begin with http:// or https://. Default value is null.- Returns:
- builder
-
description
public InstanceArgs.Builder description(java.lang.String description)
- Parameters:
description
- Description of the instance, This description can have a string of 2 to 256 characters, It cannot begin with http:// or https://. Default value is null.- Returns:
- builder
-
dryRun
public InstanceArgs.Builder dryRun(@Nullable com.pulumi.core.Output<java.lang.Boolean> dryRun)
- Parameters:
dryRun
- Specifies whether to send a dry-run request. Default to false. - true: Only a dry-run request is sent and no instance is created. The system checks whether the required parameters are set, and validates the request format, service permissions, and available ECS instances. If the validation fails, the corresponding error code is returned. If the validation succeeds, the `DryRunOperation` error code is returned. - false: A request is sent. If the validation succeeds, the instance is created.- Returns:
- builder
-
dryRun
public InstanceArgs.Builder dryRun(java.lang.Boolean dryRun)
- Parameters:
dryRun
- Specifies whether to send a dry-run request. Default to false. - true: Only a dry-run request is sent and no instance is created. The system checks whether the required parameters are set, and validates the request format, service permissions, and available ECS instances. If the validation fails, the corresponding error code is returned. If the validation succeeds, the `DryRunOperation` error code is returned. - false: A request is sent. If the validation succeeds, the instance is created.- Returns:
- builder
-
forceDelete
public InstanceArgs.Builder forceDelete(@Nullable com.pulumi.core.Output<java.lang.Boolean> forceDelete)
- Parameters:
forceDelete
- If it is true, the "PrePaid" instance will be change to "PostPaid" and then deleted forcibly. However, because of changing instance charge type has CPU core count quota limitation, so strongly recommand that "Don't modify instance charge type frequentlly in one month".- Returns:
- builder
-
forceDelete
public InstanceArgs.Builder forceDelete(java.lang.Boolean forceDelete)
- Parameters:
forceDelete
- If it is true, the "PrePaid" instance will be change to "PostPaid" and then deleted forcibly. However, because of changing instance charge type has CPU core count quota limitation, so strongly recommand that "Don't modify instance charge type frequentlly in one month".- Returns:
- builder
-
hostName
public InstanceArgs.Builder hostName(@Nullable com.pulumi.core.Output<java.lang.String> hostName)
- Parameters:
hostName
- Host name of the ECS, which is a string of at least two characters. “hostname” cannot start or end with “.” or “-“. In addition, two or more consecutive “.” or “-“ symbols are not allowed. On Windows, the host name can contain a maximum of 15 characters, which can be a combination of uppercase/lowercase letters, numerals, and “-“. The host name cannot contain dots (“.”) or contain only numeric characters. When it is changed, the instance will reboot to make the change take effect. On other OSs such as Linux, the host name can contain a maximum of 64 characters, which can be segments separated by dots (“.”), where each segment can contain uppercase/lowercase letters, numerals, or “_“. When it is changed, the instance will reboot to make the change take effect.- Returns:
- builder
-
hostName
public InstanceArgs.Builder hostName(java.lang.String hostName)
- Parameters:
hostName
- Host name of the ECS, which is a string of at least two characters. “hostname” cannot start or end with “.” or “-“. In addition, two or more consecutive “.” or “-“ symbols are not allowed. On Windows, the host name can contain a maximum of 15 characters, which can be a combination of uppercase/lowercase letters, numerals, and “-“. The host name cannot contain dots (“.”) or contain only numeric characters. When it is changed, the instance will reboot to make the change take effect. On other OSs such as Linux, the host name can contain a maximum of 64 characters, which can be segments separated by dots (“.”), where each segment can contain uppercase/lowercase letters, numerals, or “_“. When it is changed, the instance will reboot to make the change take effect.- Returns:
- builder
-
hpcClusterId
public InstanceArgs.Builder hpcClusterId(@Nullable com.pulumi.core.Output<java.lang.String> hpcClusterId)
- Parameters:
hpcClusterId
- The ID of the Elastic High Performance Computing (E-HPC) cluster to which to assign the instance.- Returns:
- builder
-
hpcClusterId
public InstanceArgs.Builder hpcClusterId(java.lang.String hpcClusterId)
- Parameters:
hpcClusterId
- The ID of the Elastic High Performance Computing (E-HPC) cluster to which to assign the instance.- Returns:
- builder
-
httpEndpoint
public InstanceArgs.Builder httpEndpoint(@Nullable com.pulumi.core.Output<java.lang.String> httpEndpoint)
- Parameters:
httpEndpoint
- Specifies whether to enable the access channel for instance metadata. Valid values: `enabled`, `disabled`. Default value: `enabled`.- Returns:
- builder
-
httpEndpoint
public InstanceArgs.Builder httpEndpoint(java.lang.String httpEndpoint)
- Parameters:
httpEndpoint
- Specifies whether to enable the access channel for instance metadata. Valid values: `enabled`, `disabled`. Default value: `enabled`.- Returns:
- builder
-
httpPutResponseHopLimit
public InstanceArgs.Builder httpPutResponseHopLimit(@Nullable com.pulumi.core.Output<java.lang.Integer> httpPutResponseHopLimit)
- Parameters:
httpPutResponseHopLimit
- The HTTP PUT response hop limit for accessing instance metadata. Valid values: 1 to 64. Default value: 1.- Returns:
- builder
-
httpPutResponseHopLimit
public InstanceArgs.Builder httpPutResponseHopLimit(java.lang.Integer httpPutResponseHopLimit)
- Parameters:
httpPutResponseHopLimit
- The HTTP PUT response hop limit for accessing instance metadata. Valid values: 1 to 64. Default value: 1.- Returns:
- builder
-
httpTokens
public InstanceArgs.Builder httpTokens(@Nullable com.pulumi.core.Output<java.lang.String> httpTokens)
- Parameters:
httpTokens
- Specifies whether to forcefully use the security-enhanced mode (IMDSv2) to access instance metadata. Default value: optional. Valid values: - optional: does not forcefully use the security-enhanced mode (IMDSv2). - required: forcefully uses the security-enhanced mode (IMDSv2). After you set this parameter to required, you cannot access instance metadata in normal mode.- Returns:
- builder
-
httpTokens
public InstanceArgs.Builder httpTokens(java.lang.String httpTokens)
- Parameters:
httpTokens
- Specifies whether to forcefully use the security-enhanced mode (IMDSv2) to access instance metadata. Default value: optional. Valid values: - optional: does not forcefully use the security-enhanced mode (IMDSv2). - required: forcefully uses the security-enhanced mode (IMDSv2). After you set this parameter to required, you cannot access instance metadata in normal mode.- Returns:
- builder
-
imageId
public InstanceArgs.Builder imageId(@Nullable com.pulumi.core.Output<java.lang.String> imageId)
- Parameters:
imageId
- The Image to use for the instance. ECS instance's image can be replaced via changing `image_id`. When it is changed, the instance will reboot to make the change take effect. If you do not use `launch_template_id` or `launch_template_name` to specify a launch template, you must specify `image_id`.- Returns:
- builder
-
imageId
public InstanceArgs.Builder imageId(java.lang.String imageId)
- Parameters:
imageId
- The Image to use for the instance. ECS instance's image can be replaced via changing `image_id`. When it is changed, the instance will reboot to make the change take effect. If you do not use `launch_template_id` or `launch_template_name` to specify a launch template, you must specify `image_id`.- Returns:
- builder
-
includeDataDisks
public InstanceArgs.Builder includeDataDisks(@Nullable com.pulumi.core.Output<java.lang.Boolean> includeDataDisks)
- Parameters:
includeDataDisks
- Whether to change instance disks charge type when changing instance charge type.- Returns:
- builder
-
includeDataDisks
public InstanceArgs.Builder includeDataDisks(java.lang.Boolean includeDataDisks)
- Parameters:
includeDataDisks
- Whether to change instance disks charge type when changing instance charge type.- Returns:
- builder
-
instanceChargeType
public InstanceArgs.Builder instanceChargeType(@Nullable com.pulumi.core.Output<java.lang.String> instanceChargeType)
- Parameters:
instanceChargeType
- Valid values are `PrePaid`, `PostPaid`, The default is `PostPaid`. **NOTE:** Since 1.9.6, it can be changed each other between `PostPaid` and `PrePaid`. However, since [some limitation about CPU core count in one month](https://www.alibabacloud.com/help/en/elastic-compute-service/latest/modifyinstancechargetype), there strongly recommends that `Don't change instance_charge_type frequentlly in one month`.- Returns:
- builder
-
instanceChargeType
public InstanceArgs.Builder instanceChargeType(java.lang.String instanceChargeType)
- Parameters:
instanceChargeType
- Valid values are `PrePaid`, `PostPaid`, The default is `PostPaid`. **NOTE:** Since 1.9.6, it can be changed each other between `PostPaid` and `PrePaid`. However, since [some limitation about CPU core count in one month](https://www.alibabacloud.com/help/en/elastic-compute-service/latest/modifyinstancechargetype), there strongly recommends that `Don't change instance_charge_type frequentlly in one month`.- Returns:
- builder
-
instanceName
public InstanceArgs.Builder instanceName(@Nullable com.pulumi.core.Output<java.lang.String> instanceName)
-
instanceName
public InstanceArgs.Builder instanceName(java.lang.String instanceName)
-
instanceType
public InstanceArgs.Builder instanceType(@Nullable com.pulumi.core.Output<java.lang.String> instanceType)
- Parameters:
instanceType
- The type of instance to start. When it is changed, the instance will reboot to make the change take effect. If you do not use `launch_template_id` or `launch_template_name` to specify a launch template, you must specify `instance_type`.- Returns:
- builder
-
instanceType
public InstanceArgs.Builder instanceType(java.lang.String instanceType)
- Parameters:
instanceType
- The type of instance to start. When it is changed, the instance will reboot to make the change take effect. If you do not use `launch_template_id` or `launch_template_name` to specify a launch template, you must specify `instance_type`.- Returns:
- builder
-
internetChargeType
public InstanceArgs.Builder internetChargeType(@Nullable com.pulumi.core.Output<java.lang.String> internetChargeType)
- Parameters:
internetChargeType
- Internet charge type of the instance, Valid values are `PayByBandwidth`, `PayByTraffic`. Default is `PayByTraffic`. At present, 'PrePaid' instance cannot change the value to "PayByBandwidth" from "PayByTraffic".- Returns:
- builder
-
internetChargeType
public InstanceArgs.Builder internetChargeType(java.lang.String internetChargeType)
- Parameters:
internetChargeType
- Internet charge type of the instance, Valid values are `PayByBandwidth`, `PayByTraffic`. Default is `PayByTraffic`. At present, 'PrePaid' instance cannot change the value to "PayByBandwidth" from "PayByTraffic".- Returns:
- builder
-
internetMaxBandwidthIn
@Deprecated public InstanceArgs.Builder internetMaxBandwidthIn(@Nullable com.pulumi.core.Output<java.lang.Integer> internetMaxBandwidthIn)
Deprecated.The attribute is invalid and no any affect for the instance. So it has been deprecated since version v1.121.2.- Parameters:
internetMaxBandwidthIn
- Maximum incoming bandwidth from the public network, measured in Mbps (Mega bit per second). Value range: [1, 200]. If this value is not specified, then automatically sets it to 200 Mbps.- Returns:
- builder
-
internetMaxBandwidthIn
@Deprecated public InstanceArgs.Builder internetMaxBandwidthIn(java.lang.Integer internetMaxBandwidthIn)
Deprecated.The attribute is invalid and no any affect for the instance. So it has been deprecated since version v1.121.2.- Parameters:
internetMaxBandwidthIn
- Maximum incoming bandwidth from the public network, measured in Mbps (Mega bit per second). Value range: [1, 200]. If this value is not specified, then automatically sets it to 200 Mbps.- Returns:
- builder
-
internetMaxBandwidthOut
public InstanceArgs.Builder internetMaxBandwidthOut(@Nullable com.pulumi.core.Output<java.lang.Integer> internetMaxBandwidthOut)
- Parameters:
internetMaxBandwidthOut
- Maximum outgoing bandwidth to the public network, measured in Mbps (Mega bit per second). Value range: [0, 100]. Default to 0 Mbps.- Returns:
- builder
-
internetMaxBandwidthOut
public InstanceArgs.Builder internetMaxBandwidthOut(java.lang.Integer internetMaxBandwidthOut)
- Parameters:
internetMaxBandwidthOut
- Maximum outgoing bandwidth to the public network, measured in Mbps (Mega bit per second). Value range: [0, 100]. Default to 0 Mbps.- Returns:
- builder
-
ipv6AddressCount
public InstanceArgs.Builder ipv6AddressCount(@Nullable com.pulumi.core.Output<java.lang.Integer> ipv6AddressCount)
- Parameters:
ipv6AddressCount
- The number of IPv6 addresses to randomly generate for the primary ENI. Valid values: 1 to 10. **NOTE:** You cannot specify both the `ipv6_addresses` and `ipv6_address_count` parameters.- Returns:
- builder
-
ipv6AddressCount
public InstanceArgs.Builder ipv6AddressCount(java.lang.Integer ipv6AddressCount)
- Parameters:
ipv6AddressCount
- The number of IPv6 addresses to randomly generate for the primary ENI. Valid values: 1 to 10. **NOTE:** You cannot specify both the `ipv6_addresses` and `ipv6_address_count` parameters.- Returns:
- builder
-
ipv6Addresses
public InstanceArgs.Builder ipv6Addresses(@Nullable com.pulumi.core.Output<java.util.List<java.lang.String>> ipv6Addresses)
- Parameters:
ipv6Addresses
- A list of IPv6 address to be assigned to the primary ENI. Support up to 10.- Returns:
- builder
-
ipv6Addresses
public InstanceArgs.Builder ipv6Addresses(java.util.List<java.lang.String> ipv6Addresses)
- Parameters:
ipv6Addresses
- A list of IPv6 address to be assigned to the primary ENI. Support up to 10.- Returns:
- builder
-
ipv6Addresses
public InstanceArgs.Builder ipv6Addresses(java.lang.String... ipv6Addresses)
- Parameters:
ipv6Addresses
- A list of IPv6 address to be assigned to the primary ENI. Support up to 10.- Returns:
- builder
-
isOutdated
public InstanceArgs.Builder isOutdated(@Nullable com.pulumi.core.Output<java.lang.Boolean> isOutdated)
- Parameters:
isOutdated
- Whether to use outdated instance type. Default to false.- Returns:
- builder
-
isOutdated
public InstanceArgs.Builder isOutdated(java.lang.Boolean isOutdated)
- Parameters:
isOutdated
- Whether to use outdated instance type. Default to false.- Returns:
- builder
-
keyName
public InstanceArgs.Builder keyName(@Nullable com.pulumi.core.Output<java.lang.String> keyName)
- Parameters:
keyName
- The name of key pair that can login ECS instance successfully without password. If it is specified, the password would be invalid.- Returns:
- builder
-
keyName
public InstanceArgs.Builder keyName(java.lang.String keyName)
- Parameters:
keyName
- The name of key pair that can login ECS instance successfully without password. If it is specified, the password would be invalid.- Returns:
- builder
-
kmsEncryptedPassword
public InstanceArgs.Builder kmsEncryptedPassword(@Nullable com.pulumi.core.Output<java.lang.String> kmsEncryptedPassword)
- Parameters:
kmsEncryptedPassword
- An KMS encrypts password used to an instance. If the `password` is filled in, this field will be ignored. When it is changed, the instance will reboot to make the change take effect.- Returns:
- builder
-
kmsEncryptedPassword
public InstanceArgs.Builder kmsEncryptedPassword(java.lang.String kmsEncryptedPassword)
- Parameters:
kmsEncryptedPassword
- An KMS encrypts password used to an instance. If the `password` is filled in, this field will be ignored. When it is changed, the instance will reboot to make the change take effect.- Returns:
- builder
-
kmsEncryptionContext
public InstanceArgs.Builder kmsEncryptionContext(@Nullable com.pulumi.core.Output<java.util.Map<java.lang.String,java.lang.Object>> kmsEncryptionContext)
- Parameters:
kmsEncryptionContext
- An KMS encryption context used to decrypt `kms_encrypted_password` before creating or updating an instance with `kms_encrypted_password`. See [Encryption Context](https://www.alibabacloud.com/help/doc-detail/42975.htm). It is valid when `kms_encrypted_password` is set. When it is changed, the instance will reboot to make the change take effect.- Returns:
- builder
-
kmsEncryptionContext
public InstanceArgs.Builder kmsEncryptionContext(java.util.Map<java.lang.String,java.lang.Object> kmsEncryptionContext)
- Parameters:
kmsEncryptionContext
- An KMS encryption context used to decrypt `kms_encrypted_password` before creating or updating an instance with `kms_encrypted_password`. See [Encryption Context](https://www.alibabacloud.com/help/doc-detail/42975.htm). It is valid when `kms_encrypted_password` is set. When it is changed, the instance will reboot to make the change take effect.- Returns:
- builder
-
launchTemplateId
public InstanceArgs.Builder launchTemplateId(@Nullable com.pulumi.core.Output<java.lang.String> launchTemplateId)
- Parameters:
launchTemplateId
- The ID of the launch template. For more information, see [DescribeLaunchTemplates](https://www.alibabacloud.com/help/en/ecs/developer-reference/api-describelaunchtemplates).To use a launch template to create an instance, you must use the `launch_template_id` or `launch_template_name` parameter to specify the launch template.- Returns:
- builder
-
launchTemplateId
public InstanceArgs.Builder launchTemplateId(java.lang.String launchTemplateId)
- Parameters:
launchTemplateId
- The ID of the launch template. For more information, see [DescribeLaunchTemplates](https://www.alibabacloud.com/help/en/ecs/developer-reference/api-describelaunchtemplates).To use a launch template to create an instance, you must use the `launch_template_id` or `launch_template_name` parameter to specify the launch template.- Returns:
- builder
-
launchTemplateName
public InstanceArgs.Builder launchTemplateName(@Nullable com.pulumi.core.Output<java.lang.String> launchTemplateName)
- Parameters:
launchTemplateName
- The name of the launch template.- Returns:
- builder
-
launchTemplateName
public InstanceArgs.Builder launchTemplateName(java.lang.String launchTemplateName)
- Parameters:
launchTemplateName
- The name of the launch template.- Returns:
- builder
-
launchTemplateVersion
public InstanceArgs.Builder launchTemplateVersion(@Nullable com.pulumi.core.Output<java.lang.String> launchTemplateVersion)
- Parameters:
launchTemplateVersion
- The version of the launch template. If you set `launch_template_id` or `launch_template_name` parameter but do not set the version number of the launch template, the default template version is used. > **NOTE:** System disk category `cloud` has been outdated and it only can be used none I/O Optimized ECS instances. Recommend `cloud_efficiency` and `cloud_ssd` disk. > **NOTE:** From version 1.5.0, instance's charge type can be changed to "PrePaid" by specifying `period` and `period_unit`, but it is irreversible. > **NOTE:** From version 1.5.0, instance's private IP address can be specified when creating VPC network instance. > **NOTE:** From version 1.5.0, instance's vswitch and private IP can be changed in the same availability zone. When they are changed, the instance will reboot to make the change take effect. > **NOTE:** From version 1.7.0, setting "internet_max_bandwidth_out" larger than 0 can allocate a public IP for an instance. Setting "internet_max_bandwidth_out" to 0 can release allocated public IP for VPC instance(For Classic instnace, its public IP cannot be release once it allocated, even thougth its bandwidth out is 0). However, at present, 'PrePaid' instance cannot narrow its max bandwidth out when its 'internet_charge_type' is "PayByBandwidth". > **NOTE:** From version 1.7.0, instance's type can be changed. When it is changed, the instance will reboot to make the change take effect.- Returns:
- builder
-
launchTemplateVersion
public InstanceArgs.Builder launchTemplateVersion(java.lang.String launchTemplateVersion)
- Parameters:
launchTemplateVersion
- The version of the launch template. If you set `launch_template_id` or `launch_template_name` parameter but do not set the version number of the launch template, the default template version is used. > **NOTE:** System disk category `cloud` has been outdated and it only can be used none I/O Optimized ECS instances. Recommend `cloud_efficiency` and `cloud_ssd` disk. > **NOTE:** From version 1.5.0, instance's charge type can be changed to "PrePaid" by specifying `period` and `period_unit`, but it is irreversible. > **NOTE:** From version 1.5.0, instance's private IP address can be specified when creating VPC network instance. > **NOTE:** From version 1.5.0, instance's vswitch and private IP can be changed in the same availability zone. When they are changed, the instance will reboot to make the change take effect. > **NOTE:** From version 1.7.0, setting "internet_max_bandwidth_out" larger than 0 can allocate a public IP for an instance. Setting "internet_max_bandwidth_out" to 0 can release allocated public IP for VPC instance(For Classic instnace, its public IP cannot be release once it allocated, even thougth its bandwidth out is 0). However, at present, 'PrePaid' instance cannot narrow its max bandwidth out when its 'internet_charge_type' is "PayByBandwidth". > **NOTE:** From version 1.7.0, instance's type can be changed. When it is changed, the instance will reboot to make the change take effect.- Returns:
- builder
-
maintenanceAction
public InstanceArgs.Builder maintenanceAction(@Nullable com.pulumi.core.Output<java.lang.String> maintenanceAction)
- Parameters:
maintenanceAction
- The maintenance action. Valid values: `Stop`, `AutoRecover` and `AutoRedeploy`.- Returns:
- builder
-
maintenanceAction
public InstanceArgs.Builder maintenanceAction(java.lang.String maintenanceAction)
- Parameters:
maintenanceAction
- The maintenance action. Valid values: `Stop`, `AutoRecover` and `AutoRedeploy`.- Returns:
- builder
-
maintenanceNotify
public InstanceArgs.Builder maintenanceNotify(@Nullable com.pulumi.core.Output<java.lang.Boolean> maintenanceNotify)
- Parameters:
maintenanceNotify
- Specifies whether to send an event notification before instance shutdown. Valid values: `true`, `false`. Default value: `false`.- Returns:
- builder
-
maintenanceNotify
public InstanceArgs.Builder maintenanceNotify(java.lang.Boolean maintenanceNotify)
- Parameters:
maintenanceNotify
- Specifies whether to send an event notification before instance shutdown. Valid values: `true`, `false`. Default value: `false`.- Returns:
- builder
-
maintenanceTime
public InstanceArgs.Builder maintenanceTime(@Nullable com.pulumi.core.Output<InstanceMaintenanceTimeArgs> maintenanceTime)
- Parameters:
maintenanceTime
- The time of maintenance. See `maintenance_time` below.- Returns:
- builder
-
maintenanceTime
public InstanceArgs.Builder maintenanceTime(InstanceMaintenanceTimeArgs maintenanceTime)
- Parameters:
maintenanceTime
- The time of maintenance. See `maintenance_time` below.- Returns:
- builder
-
networkInterfaces
public InstanceArgs.Builder networkInterfaces(@Nullable com.pulumi.core.Output<InstanceNetworkInterfacesArgs> networkInterfaces)
- Parameters:
networkInterfaces
- The list of network interfaces created with instance. See `network_interfaces` below.- Returns:
- builder
-
networkInterfaces
public InstanceArgs.Builder networkInterfaces(InstanceNetworkInterfacesArgs networkInterfaces)
- Parameters:
networkInterfaces
- The list of network interfaces created with instance. See `network_interfaces` below.- Returns:
- builder
-
operatorType
public InstanceArgs.Builder operatorType(@Nullable com.pulumi.core.Output<java.lang.String> operatorType)
- Parameters:
operatorType
- The operation type. It is valid when `instance_charge_type` is `PrePaid`. Default value: `upgrade`. Valid values: `upgrade`, `downgrade`. **NOTE:** When the new instance type specified by the `instance_type` parameter has lower specifications than the current instance type, you must set `operator_type` to `downgrade`.- Returns:
- builder
-
operatorType
public InstanceArgs.Builder operatorType(java.lang.String operatorType)
- Parameters:
operatorType
- The operation type. It is valid when `instance_charge_type` is `PrePaid`. Default value: `upgrade`. Valid values: `upgrade`, `downgrade`. **NOTE:** When the new instance type specified by the `instance_type` parameter has lower specifications than the current instance type, you must set `operator_type` to `downgrade`.- Returns:
- builder
-
password
public InstanceArgs.Builder password(@Nullable com.pulumi.core.Output<java.lang.String> password)
- Parameters:
password
- Password to an instance is a string of 8 to 30 characters. It must contain uppercase/lowercase letters and numerals, but cannot contain special symbols. When it is changed, the instance will reboot to make the change take effect.- Returns:
- builder
-
password
public InstanceArgs.Builder password(java.lang.String password)
- Parameters:
password
- Password to an instance is a string of 8 to 30 characters. It must contain uppercase/lowercase letters and numerals, but cannot contain special symbols. When it is changed, the instance will reboot to make the change take effect.- Returns:
- builder
-
period
public InstanceArgs.Builder period(@Nullable com.pulumi.core.Output<java.lang.Integer> period)
- Parameters:
period
- The duration that you will buy the resource, in month. It is valid when `instance_charge_type` is `PrePaid`. Valid values: - [1-9, 12, 24, 36, 48, 60] when `period_unit` in "Month" - [1-3] when `period_unit` in "Week" > **NOTE:** The attribute `period` is only used to create Subscription instance or modify the PayAsYouGo instance to Subscription. Once effect, it will not be modified that means running `pulumi up` will not effect the resource.- Returns:
- builder
-
period
public InstanceArgs.Builder period(java.lang.Integer period)
- Parameters:
period
- The duration that you will buy the resource, in month. It is valid when `instance_charge_type` is `PrePaid`. Valid values: - [1-9, 12, 24, 36, 48, 60] when `period_unit` in "Month" - [1-3] when `period_unit` in "Week" > **NOTE:** The attribute `period` is only used to create Subscription instance or modify the PayAsYouGo instance to Subscription. Once effect, it will not be modified that means running `pulumi up` will not effect the resource.- Returns:
- builder
-
periodUnit
public InstanceArgs.Builder periodUnit(@Nullable com.pulumi.core.Output<java.lang.String> periodUnit)
- Parameters:
periodUnit
- The duration unit that you will buy the resource. It is valid when `instance_charge_type` is 'PrePaid'. Valid value: ["Week", "Month"]. Default to "Month".- Returns:
- builder
-
periodUnit
public InstanceArgs.Builder periodUnit(java.lang.String periodUnit)
- Parameters:
periodUnit
- The duration unit that you will buy the resource. It is valid when `instance_charge_type` is 'PrePaid'. Valid value: ["Week", "Month"]. Default to "Month".- Returns:
- builder
-
privateIp
public InstanceArgs.Builder privateIp(@Nullable com.pulumi.core.Output<java.lang.String> privateIp)
- Parameters:
privateIp
- Instance private IP address can be specified when you creating new instance. It is valid when `vswitch_id` is specified. When it is changed, the instance will reboot to make the change take effect.- Returns:
- builder
-
privateIp
public InstanceArgs.Builder privateIp(java.lang.String privateIp)
- Parameters:
privateIp
- Instance private IP address can be specified when you creating new instance. It is valid when `vswitch_id` is specified. When it is changed, the instance will reboot to make the change take effect.- Returns:
- builder
-
renewalStatus
public InstanceArgs.Builder renewalStatus(@Nullable com.pulumi.core.Output<java.lang.String> renewalStatus)
- Parameters:
renewalStatus
- Whether to renew an ECS instance automatically or not. It is valid when `instance_charge_type` is `PrePaid`. Default to "Normal". Valid values:- Returns:
- builder
-
renewalStatus
public InstanceArgs.Builder renewalStatus(java.lang.String renewalStatus)
- Parameters:
renewalStatus
- Whether to renew an ECS instance automatically or not. It is valid when `instance_charge_type` is `PrePaid`. Default to "Normal". Valid values:- Returns:
- builder
-
resourceGroupId
public InstanceArgs.Builder resourceGroupId(@Nullable com.pulumi.core.Output<java.lang.String> resourceGroupId)
- Parameters:
resourceGroupId
- The Id of resource group which the instance belongs.- Returns:
- builder
-
resourceGroupId
public InstanceArgs.Builder resourceGroupId(java.lang.String resourceGroupId)
- Parameters:
resourceGroupId
- The Id of resource group which the instance belongs.- Returns:
- builder
-
roleName
public InstanceArgs.Builder roleName(@Nullable com.pulumi.core.Output<java.lang.String> roleName)
- Parameters:
roleName
- Instance RAM role name. The name is provided and maintained by RAM. You can use `alicloud.ram.Role` to create a new one.- Returns:
- builder
-
roleName
public InstanceArgs.Builder roleName(java.lang.String roleName)
- Parameters:
roleName
- Instance RAM role name. The name is provided and maintained by RAM. You can use `alicloud.ram.Role` to create a new one.- Returns:
- builder
-
secondaryPrivateIpAddressCount
public InstanceArgs.Builder secondaryPrivateIpAddressCount(@Nullable com.pulumi.core.Output<java.lang.Integer> secondaryPrivateIpAddressCount)
- Parameters:
secondaryPrivateIpAddressCount
- The number of private IP addresses to be automatically assigned from within the CIDR block of the vswitch. **NOTE:** To assign secondary private IP addresses, you must specify `secondary_private_ips` or `secondary_private_ip_address_count` but not both.- Returns:
- builder
-
secondaryPrivateIpAddressCount
public InstanceArgs.Builder secondaryPrivateIpAddressCount(java.lang.Integer secondaryPrivateIpAddressCount)
- Parameters:
secondaryPrivateIpAddressCount
- The number of private IP addresses to be automatically assigned from within the CIDR block of the vswitch. **NOTE:** To assign secondary private IP addresses, you must specify `secondary_private_ips` or `secondary_private_ip_address_count` but not both.- Returns:
- builder
-
secondaryPrivateIps
public InstanceArgs.Builder secondaryPrivateIps(@Nullable com.pulumi.core.Output<java.util.List<java.lang.String>> secondaryPrivateIps)
- Parameters:
secondaryPrivateIps
- A list of Secondary private IP addresses which is selected from within the CIDR block of the VSwitch.- Returns:
- builder
-
secondaryPrivateIps
public InstanceArgs.Builder secondaryPrivateIps(java.util.List<java.lang.String> secondaryPrivateIps)
- Parameters:
secondaryPrivateIps
- A list of Secondary private IP addresses which is selected from within the CIDR block of the VSwitch.- Returns:
- builder
-
secondaryPrivateIps
public InstanceArgs.Builder secondaryPrivateIps(java.lang.String... secondaryPrivateIps)
- Parameters:
secondaryPrivateIps
- A list of Secondary private IP addresses which is selected from within the CIDR block of the VSwitch.- Returns:
- builder
-
securityEnhancementStrategy
public InstanceArgs.Builder securityEnhancementStrategy(@Nullable com.pulumi.core.Output<java.lang.String> securityEnhancementStrategy)
- Parameters:
securityEnhancementStrategy
- The security enhancement strategy. - Active: Enable security enhancement strategy, it only works on system images. - Deactive: Disable security enhancement strategy, it works on all images.- Returns:
- builder
-
securityEnhancementStrategy
public InstanceArgs.Builder securityEnhancementStrategy(java.lang.String securityEnhancementStrategy)
- Parameters:
securityEnhancementStrategy
- The security enhancement strategy. - Active: Enable security enhancement strategy, it only works on system images. - Deactive: Disable security enhancement strategy, it works on all images.- Returns:
- builder
-
securityGroups
public InstanceArgs.Builder securityGroups(@Nullable com.pulumi.core.Output<java.util.List<java.lang.String>> securityGroups)
- Parameters:
securityGroups
- A list of security group ids to associate with. If you do not use `launch_template_id` or `launch_template_name` to specify a launch template, you must specify `security_groups`.- Returns:
- builder
-
securityGroups
public InstanceArgs.Builder securityGroups(java.util.List<java.lang.String> securityGroups)
- Parameters:
securityGroups
- A list of security group ids to associate with. If you do not use `launch_template_id` or `launch_template_name` to specify a launch template, you must specify `security_groups`.- Returns:
- builder
-
securityGroups
public InstanceArgs.Builder securityGroups(java.lang.String... securityGroups)
- Parameters:
securityGroups
- A list of security group ids to associate with. If you do not use `launch_template_id` or `launch_template_name` to specify a launch template, you must specify `security_groups`.- Returns:
- builder
-
spotDuration
public InstanceArgs.Builder spotDuration(@Nullable com.pulumi.core.Output<java.lang.Integer> spotDuration)
- Parameters:
spotDuration
- The retention time of the preemptive instance in hours. Valid values: `0`, `1`, `2`, `3`, `4`, `5`, `6`. Retention duration 2~6 is under invitation test, please submit a work order if you need to open. If the value is `0`, the mode is no protection period. Default value is `1`.- Returns:
- builder
-
spotDuration
public InstanceArgs.Builder spotDuration(java.lang.Integer spotDuration)
- Parameters:
spotDuration
- The retention time of the preemptive instance in hours. Valid values: `0`, `1`, `2`, `3`, `4`, `5`, `6`. Retention duration 2~6 is under invitation test, please submit a work order if you need to open. If the value is `0`, the mode is no protection period. Default value is `1`.- Returns:
- builder
-
spotPriceLimit
public InstanceArgs.Builder spotPriceLimit(@Nullable com.pulumi.core.Output<java.lang.Double> spotPriceLimit)
- Parameters:
spotPriceLimit
- The hourly price threshold of a instance, and it takes effect only when parameter 'spot_strategy' is 'SpotWithPriceLimit'. Three decimals is allowed at most.- Returns:
- builder
-
spotPriceLimit
public InstanceArgs.Builder spotPriceLimit(java.lang.Double spotPriceLimit)
- Parameters:
spotPriceLimit
- The hourly price threshold of a instance, and it takes effect only when parameter 'spot_strategy' is 'SpotWithPriceLimit'. Three decimals is allowed at most.- Returns:
- builder
-
spotStrategy
public InstanceArgs.Builder spotStrategy(@Nullable com.pulumi.core.Output<java.lang.String> spotStrategy)
- Parameters:
spotStrategy
- The spot strategy of a Pay-As-You-Go instance, and it takes effect only when parameter `instance_charge_type` is 'PostPaid'. Value range: - NoSpot: A regular Pay-As-You-Go instance. - SpotWithPriceLimit: A price threshold for a spot instance - SpotAsPriceGo: A price that is based on the highest Pay-As-You-Go instance Default to NoSpot. Note: Currently, the spot instance only supports domestic site account.- Returns:
- builder
-
spotStrategy
public InstanceArgs.Builder spotStrategy(java.lang.String spotStrategy)
- Parameters:
spotStrategy
- The spot strategy of a Pay-As-You-Go instance, and it takes effect only when parameter `instance_charge_type` is 'PostPaid'. Value range: - NoSpot: A regular Pay-As-You-Go instance. - SpotWithPriceLimit: A price threshold for a spot instance - SpotAsPriceGo: A price that is based on the highest Pay-As-You-Go instance Default to NoSpot. Note: Currently, the spot instance only supports domestic site account.- Returns:
- builder
-
status
public InstanceArgs.Builder status(@Nullable com.pulumi.core.Output<java.lang.String> status)
- Parameters:
status
- The instance status. Valid values: ["Running", "Stopped"]. You can control the instance start and stop through this parameter. Default to `Running`.- Returns:
- builder
-
status
public InstanceArgs.Builder status(java.lang.String status)
- Parameters:
status
- The instance status. Valid values: ["Running", "Stopped"]. You can control the instance start and stop through this parameter. Default to `Running`.- Returns:
- builder
-
stoppedMode
public InstanceArgs.Builder stoppedMode(@Nullable com.pulumi.core.Output<java.lang.String> stoppedMode)
- Parameters:
stoppedMode
- The stop mode of the pay-as-you-go instance. Valid values: `StopCharging`,`KeepCharging`, `Not-applicable`. Default value: If the prerequisites required for enabling the economical mode are met, and you have enabled this mode in the ECS console, the default value is `StopCharging`. For more information, see "Enable the economical mode" in [Economical mode](https://www.alibabacloud.com/help/en/elastic-compute-service/latest/economical-mode). Otherwise, the default value is `KeepCharging`. **Note:** `Not-applicable`: Economical mode is not applicable to the instance.`- Returns:
- builder
-
stoppedMode
public InstanceArgs.Builder stoppedMode(java.lang.String stoppedMode)
- Parameters:
stoppedMode
- The stop mode of the pay-as-you-go instance. Valid values: `StopCharging`,`KeepCharging`, `Not-applicable`. Default value: If the prerequisites required for enabling the economical mode are met, and you have enabled this mode in the ECS console, the default value is `StopCharging`. For more information, see "Enable the economical mode" in [Economical mode](https://www.alibabacloud.com/help/en/elastic-compute-service/latest/economical-mode). Otherwise, the default value is `KeepCharging`. **Note:** `Not-applicable`: Economical mode is not applicable to the instance.`- Returns:
- builder
-
systemDiskAutoSnapshotPolicyId
public InstanceArgs.Builder systemDiskAutoSnapshotPolicyId(@Nullable com.pulumi.core.Output<java.lang.String> systemDiskAutoSnapshotPolicyId)
- Parameters:
systemDiskAutoSnapshotPolicyId
- The ID of the automatic snapshot policy applied to the system disk.- Returns:
- builder
-
systemDiskAutoSnapshotPolicyId
public InstanceArgs.Builder systemDiskAutoSnapshotPolicyId(java.lang.String systemDiskAutoSnapshotPolicyId)
- Parameters:
systemDiskAutoSnapshotPolicyId
- The ID of the automatic snapshot policy applied to the system disk.- Returns:
- builder
-
systemDiskCategory
public InstanceArgs.Builder systemDiskCategory(@Nullable com.pulumi.core.Output<java.lang.String> systemDiskCategory)
- Parameters:
systemDiskCategory
- Valid values are `ephemeral_ssd`, `cloud_efficiency`, `cloud_ssd`, `cloud_essd`, `cloud`, `cloud_auto`. only is used to some none I/O optimized instance. Default to `cloud_efficiency`. Valid values `cloud_auto` Available since 1.184.0+.- Returns:
- builder
-
systemDiskCategory
public InstanceArgs.Builder systemDiskCategory(java.lang.String systemDiskCategory)
- Parameters:
systemDiskCategory
- Valid values are `ephemeral_ssd`, `cloud_efficiency`, `cloud_ssd`, `cloud_essd`, `cloud`, `cloud_auto`. only is used to some none I/O optimized instance. Default to `cloud_efficiency`. Valid values `cloud_auto` Available since 1.184.0+.- Returns:
- builder
-
systemDiskDescription
public InstanceArgs.Builder systemDiskDescription(@Nullable com.pulumi.core.Output<java.lang.String> systemDiskDescription)
- Parameters:
systemDiskDescription
- The description of the system disk. The description must be 2 to 256 characters in length and cannot start with http:// or https://.- Returns:
- builder
-
systemDiskDescription
public InstanceArgs.Builder systemDiskDescription(java.lang.String systemDiskDescription)
- Parameters:
systemDiskDescription
- The description of the system disk. The description must be 2 to 256 characters in length and cannot start with http:// or https://.- Returns:
- builder
-
systemDiskEncryptAlgorithm
public InstanceArgs.Builder systemDiskEncryptAlgorithm(@Nullable com.pulumi.core.Output<java.lang.String> systemDiskEncryptAlgorithm)
- Parameters:
systemDiskEncryptAlgorithm
- The algorithm to be used to encrypt the system disk. Valid values are `aes-256`, `sm4-128`. Default value is `aes-256`.- Returns:
- builder
-
systemDiskEncryptAlgorithm
public InstanceArgs.Builder systemDiskEncryptAlgorithm(java.lang.String systemDiskEncryptAlgorithm)
- Parameters:
systemDiskEncryptAlgorithm
- The algorithm to be used to encrypt the system disk. Valid values are `aes-256`, `sm4-128`. Default value is `aes-256`.- Returns:
- builder
-
systemDiskEncrypted
public InstanceArgs.Builder systemDiskEncrypted(@Nullable com.pulumi.core.Output<java.lang.Boolean> systemDiskEncrypted)
- Parameters:
systemDiskEncrypted
- Specifies whether to encrypt the system disk. Valid values: `true`,`false`. Default value: `false`.- Returns:
- builder
-
systemDiskEncrypted
public InstanceArgs.Builder systemDiskEncrypted(java.lang.Boolean systemDiskEncrypted)
- Parameters:
systemDiskEncrypted
- Specifies whether to encrypt the system disk. Valid values: `true`,`false`. Default value: `false`.- Returns:
- builder
-
systemDiskKmsKeyId
public InstanceArgs.Builder systemDiskKmsKeyId(@Nullable com.pulumi.core.Output<java.lang.String> systemDiskKmsKeyId)
- Parameters:
systemDiskKmsKeyId
- The ID of the Key Management Service (KMS) key to be used for the system disk.- Returns:
- builder
-
systemDiskKmsKeyId
public InstanceArgs.Builder systemDiskKmsKeyId(java.lang.String systemDiskKmsKeyId)
- Parameters:
systemDiskKmsKeyId
- The ID of the Key Management Service (KMS) key to be used for the system disk.- Returns:
- builder
-
systemDiskName
public InstanceArgs.Builder systemDiskName(@Nullable com.pulumi.core.Output<java.lang.String> systemDiskName)
- Parameters:
systemDiskName
- The name of the system disk. The name must be 2 to 128 characters in length and can contain letters, digits, periods (.), colons (:), underscores (_), and hyphens (-). It must start with a letter and cannot start with http:// or https://.- Returns:
- builder
-
systemDiskName
public InstanceArgs.Builder systemDiskName(java.lang.String systemDiskName)
- Parameters:
systemDiskName
- The name of the system disk. The name must be 2 to 128 characters in length and can contain letters, digits, periods (.), colons (:), underscores (_), and hyphens (-). It must start with a letter and cannot start with http:// or https://.- Returns:
- builder
-
systemDiskPerformanceLevel
public InstanceArgs.Builder systemDiskPerformanceLevel(@Nullable com.pulumi.core.Output<java.lang.String> systemDiskPerformanceLevel)
- Parameters:
systemDiskPerformanceLevel
- The performance level of the ESSD used as the system disk, Valid values: `PL0`, `PL1`, `PL2`, `PL3`, Default to `PL1`;For more information about ESSD, See [Encryption Context](https://www.alibabacloud.com/help/doc-detail/122389.htm).- Returns:
- builder
-
systemDiskPerformanceLevel
public InstanceArgs.Builder systemDiskPerformanceLevel(java.lang.String systemDiskPerformanceLevel)
- Parameters:
systemDiskPerformanceLevel
- The performance level of the ESSD used as the system disk, Valid values: `PL0`, `PL1`, `PL2`, `PL3`, Default to `PL1`;For more information about ESSD, See [Encryption Context](https://www.alibabacloud.com/help/doc-detail/122389.htm).- Returns:
- builder
-
systemDiskSize
public InstanceArgs.Builder systemDiskSize(@Nullable com.pulumi.core.Output<java.lang.Integer> systemDiskSize)
- Parameters:
systemDiskSize
- Size of the system disk, measured in GiB. Value range: [20, 500]. The specified value must be equal to or greater than max{20, Imagesize}. Default value: max{40, ImageSize}.- Returns:
- builder
-
systemDiskSize
public InstanceArgs.Builder systemDiskSize(java.lang.Integer systemDiskSize)
- Parameters:
systemDiskSize
- Size of the system disk, measured in GiB. Value range: [20, 500]. The specified value must be equal to or greater than max{20, Imagesize}. Default value: max{40, ImageSize}.- Returns:
- builder
-
systemDiskStorageClusterId
public InstanceArgs.Builder systemDiskStorageClusterId(@Nullable com.pulumi.core.Output<java.lang.String> systemDiskStorageClusterId)
- Parameters:
systemDiskStorageClusterId
- The ID of the dedicated block storage cluster. If you want to use disks in a dedicated block storage cluster as system disks when you create instances, you must specify this parameter. For more information about dedicated block storage clusters.- Returns:
- builder
-
systemDiskStorageClusterId
public InstanceArgs.Builder systemDiskStorageClusterId(java.lang.String systemDiskStorageClusterId)
- Parameters:
systemDiskStorageClusterId
- The ID of the dedicated block storage cluster. If you want to use disks in a dedicated block storage cluster as system disks when you create instances, you must specify this parameter. For more information about dedicated block storage clusters.- Returns:
- builder
-
tags
public InstanceArgs.Builder tags(@Nullable com.pulumi.core.Output<java.util.Map<java.lang.String,java.lang.String>> tags)
- Parameters:
tags
- A mapping of tags to assign to the resource. - Key: It can be up to 64 characters in length. It cannot begin with "aliyun", "acs:", "http://", or "https://". It cannot be a null string. - Value: It can be up to 128 characters in length. It cannot begin with "aliyun", "acs:", "http://", or "https://". It can be a null string.- Returns:
- builder
-
tags
public InstanceArgs.Builder tags(java.util.Map<java.lang.String,java.lang.String> tags)
- Parameters:
tags
- A mapping of tags to assign to the resource. - Key: It can be up to 64 characters in length. It cannot begin with "aliyun", "acs:", "http://", or "https://". It cannot be a null string. - Value: It can be up to 128 characters in length. It cannot begin with "aliyun", "acs:", "http://", or "https://". It can be a null string.- Returns:
- builder
-
userData
public InstanceArgs.Builder userData(@Nullable com.pulumi.core.Output<java.lang.String> userData)
-
userData
public InstanceArgs.Builder userData(java.lang.String userData)
-
volumeTags
public InstanceArgs.Builder volumeTags(@Nullable com.pulumi.core.Output<java.util.Map<java.lang.String,java.lang.Object>> volumeTags)
- Parameters:
volumeTags
- A mapping of tags to assign to the devices created by the instance at launch time. - Key: It can be up to 64 characters in length. It cannot begin with "aliyun", "acs:", "http://", or "https://". It cannot be a null string. - Value: It can be up to 128 characters in length. It cannot begin with "aliyun", "acs:", "http://", or "https://". It can be a null string.- Returns:
- builder
-
volumeTags
public InstanceArgs.Builder volumeTags(java.util.Map<java.lang.String,java.lang.Object> volumeTags)
- Parameters:
volumeTags
- A mapping of tags to assign to the devices created by the instance at launch time. - Key: It can be up to 64 characters in length. It cannot begin with "aliyun", "acs:", "http://", or "https://". It cannot be a null string. - Value: It can be up to 128 characters in length. It cannot begin with "aliyun", "acs:", "http://", or "https://". It can be a null string.- Returns:
- builder
-
vswitchId
public InstanceArgs.Builder vswitchId(@Nullable com.pulumi.core.Output<java.lang.String> vswitchId)
- Parameters:
vswitchId
- The virtual switch ID to launch in VPC. This parameter must be set unless you can create classic network instances. When it is changed, the instance will reboot to make the change take effect.- Returns:
- builder
-
vswitchId
public InstanceArgs.Builder vswitchId(java.lang.String vswitchId)
- Parameters:
vswitchId
- The virtual switch ID to launch in VPC. This parameter must be set unless you can create classic network instances. When it is changed, the instance will reboot to make the change take effect.- Returns:
- builder
-
build
public InstanceArgs build()
-
-