Module ecs
This page documents the language specification for the alicloud package. If you're looking for help working with the inputs, outputs, or functions of alicloud resources in a Pulumi program, please see the resource documentation for examples and API reference.
This provider is a derived work of the Terraform Provider distributed under MPL 2.0. If you encounter a bug or missing feature, first check the
pulumi/pulumi-alicloudrepo; however, if that doesn’t turn up anything, please consult the sourceterraform-providers/terraform-provider-alicloudrepo.
Resources
- AutoProvisioningGroup
- CopyImage
- Disk
- DiskAttachment
- Eip
- EipAssociation
- Image
- ImageCopy
- ImageExport
- ImageImport
- ImageSharePermission
- Instance
- KeyPair
- KeyPairAttachment
- LaunchTemplate
- ReservedInstance
- SecurityGroup
- SecurityGroupRule
- Snapshot
- SnapshotPolicy
Functions
- getDisks
- getEips
- getImages
- getInstances
- getInstanceTypeFamilies
- getInstanceTypes
- getKeyPairs
- getNetworkInterfaces
- getSecurityGroupRules
- getSecurityGroups
- getSnapshots
Others
- AutoProvisioningGroupArgs
- AutoProvisioningGroupState
- CopyImageArgs
- CopyImageState
- DiskArgs
- DiskAttachmentArgs
- DiskAttachmentState
- DiskState
- EipArgs
- EipAssociationArgs
- EipAssociationState
- EipState
- GetDisksArgs
- GetDisksResult
- GetEipsArgs
- GetEipsResult
- GetImagesArgs
- GetImagesResult
- GetInstancesArgs
- GetInstancesResult
- GetInstanceTypeFamiliesArgs
- GetInstanceTypeFamiliesResult
- GetInstanceTypesArgs
- GetInstanceTypesResult
- GetKeyPairsArgs
- GetKeyPairsResult
- GetNetworkInterfacesArgs
- GetNetworkInterfacesResult
- GetSecurityGroupRulesArgs
- GetSecurityGroupRulesResult
- GetSecurityGroupsArgs
- GetSecurityGroupsResult
- GetSnapshotsArgs
- GetSnapshotsResult
- ImageArgs
- ImageCopyArgs
- ImageCopyState
- ImageExportArgs
- ImageExportState
- ImageImportArgs
- ImageImportState
- ImageSharePermissionArgs
- ImageSharePermissionState
- ImageState
- InstanceArgs
- InstanceState
- KeyPairArgs
- KeyPairAttachmentArgs
- KeyPairAttachmentState
- KeyPairState
- LaunchTemplateArgs
- LaunchTemplateState
- ReservedInstanceArgs
- ReservedInstanceState
- SecurityGroupArgs
- SecurityGroupRuleArgs
- SecurityGroupRuleState
- SecurityGroupState
- SnapshotArgs
- SnapshotPolicyArgs
- SnapshotPolicyState
- SnapshotState
Resources
Resource AutoProvisioningGroup
class AutoProvisioningGroup extends CustomResourceProvides a ECS auto provisioning group resource which is a solution that uses preemptive instances and payAsYouGo instances to rapidly deploy clusters.
NOTE: Available in 1.79.0+
Example Usage
import * as pulumi from "@pulumi/pulumi";
import * as alicloud from "@pulumi/alicloud";
const config = new pulumi.Config();
const name = config.get("name") || "autoProvisioningGroup";
const defaultZones = pulumi.output(alicloud.getZones({
availableDiskCategory: "cloudEfficiency",
availableResourceCreation: "VSwitch",
}, { async: true }));
const defaultNetwork = new alicloud.vpc.Network("default", {
cidrBlock: "172.16.0.0/16",
});
const defaultSwitch = new alicloud.vpc.Switch("default", {
availabilityZone: defaultZones.zones[0].id,
cidrBlock: "172.16.0.0/24",
vpcId: defaultNetwork.id,
});
const defaultSecurityGroup = new alicloud.ecs.SecurityGroup("default", {
vpcId: defaultNetwork.id,
});
const defaultImages = pulumi.output(alicloud.ecs.getImages({
mostRecent: true,
nameRegex: "^ubuntu_18.*64",
owners: "system",
}, { async: true }));
const template = new alicloud.ecs.LaunchTemplate("template", {
imageId: defaultImages.images[0].id,
instanceType: "ecs.n1.tiny",
securityGroupId: defaultSecurityGroup.id,
});
const defaultAutoProvisioningGroup = new alicloud.ecs.AutoProvisioningGroup("default", {
launchTemplateConfigs: [{
instanceType: "ecs.n1.small",
vswitchId: defaultSwitch.id,
}],
launchTemplateId: template.id,
payAsYouGoTargetCapacity: "1",
spotTargetCapacity: "2",
totalTargetCapacity: "4",
});Block config
The config mapping supports the following:
* instanceType - (Optional) The instance type of the Nth extended configurations of the launch template.
* maxPrice - (Required) The maximum price of the instance type specified in the Nth extended configurations of the launch template.
* vswitchId - (Required) The ID of the VSwitch in the Nth extended configurations of the launch template.
* weightedCapacity - (Optional) The weight of the instance type specified in the Nth extended configurations of the launch template.
* priority - (Optional) The priority of the instance type specified in the Nth extended configurations of the launch template. A value of 0 indicates the highest priority.
constructor
new AutoProvisioningGroup(name: string, args: AutoProvisioningGroupArgs, opts?: pulumi.CustomResourceOptions)Create a AutoProvisioningGroup resource with the given unique name, arguments, and options.
nameThe unique name of the resource.argsThe arguments to use to populate this resource's properties.optsA bag of options that control this resource's behavior.
method get
public static get(name: string, id: pulumi.Input<pulumi.ID>, state?: AutoProvisioningGroupState, opts?: pulumi.CustomResourceOptions): AutoProvisioningGroupGet an existing AutoProvisioningGroup resource’s state with the given name, ID, and optional extra properties used to qualify the lookup.
method getProvider
getProvider(moduleMember: string): ProviderResource | undefinedmethod isInstance
public static isInstance(obj: any): obj is AutoProvisioningGroupReturns true if the given object is an instance of AutoProvisioningGroup. This is designed to work even when multiple copies of the Pulumi SDK have been loaded into the same process.
property autoProvisioningGroupName
public autoProvisioningGroupName: pulumi.Output<string | undefined>;property autoProvisioningGroupType
public autoProvisioningGroupType: pulumi.Output<string | undefined>;property defaultTargetCapacityType
public defaultTargetCapacityType: pulumi.Output<string | undefined>;The type of supplemental instances. When the total value of PayAsYouGoTargetCapacity and SpotTargetCapacity is smaller than the value of TotalTargetCapacity, the auto provisioning group will create instances of the specified type to meet the capacity requirements. Valid values:PayAsYouGo: Pay-as-you-go instances; Spot: Preemptible instances, Default value: Spot.
property description
public description: pulumi.Output<string | undefined>;The description of the auto provisioning group.
property excessCapacityTerminationPolicy
public excessCapacityTerminationPolicy: pulumi.Output<string | undefined>;The shutdown policy for excess preemptible instances followed when the capacity of the auto provisioning group exceeds the target capacity. Valid values: no-termination and termination,Default value: no-termination.
property id
id: Output<ID>;id is the provider-assigned unique ID for this managed resource. It is set during deployments and may be missing (undefined) during planning phases.
property launchTemplateConfigs
public launchTemplateConfigs: pulumi.Output<AutoProvisioningGroupLaunchTemplateConfig[]>;DataDisk mappings to attach to ecs instance. See Block config below for details.
property launchTemplateId
public launchTemplateId: pulumi.Output<string>;The ID of the instance launch template associated with the auto provisioning group.
property launchTemplateVersion
public launchTemplateVersion: pulumi.Output<string | undefined>;The version of the instance launch template associated with the auto provisioning group.
property maxSpotPrice
public maxSpotPrice: pulumi.Output<number | undefined>;The global maximum price for preemptible instances in the auto provisioning group. If both the MaxSpotPrice and LaunchTemplateConfig.N.MaxPrice parameters are specified, the maximum price is the lower value of the two.
property payAsYouGoAllocationStrategy
public payAsYouGoAllocationStrategy: pulumi.Output<string | undefined>;The scale-out policy for pay-as-you-go instances. Valid values: lowest-price and prioritized,Default value: lowest-price.
property payAsYouGoTargetCapacity
public payAsYouGoTargetCapacity: pulumi.Output<string | undefined>;The target capacity of pay-as-you-go instances in the auto provisioning group.
property spotAllocationStrategy
public spotAllocationStrategy: pulumi.Output<string | undefined>;The scale-out policy for preemptible instances. Valid values:lowest-price and diversified,Default value: lowest-price.
property spotInstanceInterruptionBehavior
public spotInstanceInterruptionBehavior: pulumi.Output<string | undefined>;The default behavior after preemptible instances are shut down. Value values: stop and terminate,Default value: stop.
property spotInstancePoolsToUseCount
public spotInstancePoolsToUseCount: pulumi.Output<number | undefined>;This parameter takes effect when the SpotAllocationStrategy parameter is set to lowest-price. The auto provisioning group selects instance types of the lowest cost to create instances.
property spotTargetCapacity
public spotTargetCapacity: pulumi.Output<string | undefined>;The target capacity of preemptible instances in the auto provisioning group.
property terminateInstances
public terminateInstances: pulumi.Output<boolean | undefined>;Specifies whether to release instances of the auto provisioning group. Valid values:false and true, default value: false.
property terminateInstancesWithExpiration
public terminateInstancesWithExpiration: pulumi.Output<boolean | undefined>;The shutdown policy for preemptible instances when the auto provisioning group expires. Valid values: false and true, default value: false.
property totalTargetCapacity
public totalTargetCapacity: pulumi.Output<string>;The total target capacity of the auto provisioning group. The target capacity consists of the following three parts:PayAsYouGoTargetCapacity,SpotTargetCapacity and the supplemental capacity besides PayAsYouGoTargetCapacity and SpotTargetCapacity.
property urn
urn: Output<URN>;urn is the stable logical URN used to distinctly address a resource, both before and after deployments.
property validFrom
public validFrom: pulumi.Output<string | undefined>;The time when the auto provisioning group is started. The period of time between this point in time and the point in time specified by the validUntil parameter is the effective time period of the auto provisioning group.By default, an auto provisioning group is immediately started after creation.
property validUntil
public validUntil: pulumi.Output<string | undefined>;The time when the auto provisioning group expires. The period of time between this point in time and the point in time specified by the validFrom parameter is the effective time period of the auto provisioning group.By default, an auto provisioning group never expires.
Resource CopyImage
class CopyImage extends CustomResourceconstructor
new CopyImage(name: string, args: CopyImageArgs, opts?: pulumi.CustomResourceOptions)Create a CopyImage resource with the given unique name, arguments, and options.
nameThe unique name of the resource.argsThe arguments to use to populate this resource's properties.optsA bag of options that control this resource's behavior.
method get
public static get(name: string, id: pulumi.Input<pulumi.ID>, state?: CopyImageState, opts?: pulumi.CustomResourceOptions): CopyImageGet an existing CopyImage resource’s state with the given name, ID, and optional extra properties used to qualify the lookup.
method getProvider
getProvider(moduleMember: string): ProviderResource | undefinedmethod isInstance
public static isInstance(obj: any): obj is CopyImageReturns true if the given object is an instance of CopyImage. This is designed to work even when multiple copies of the Pulumi SDK have been loaded into the same process.
property description
public description: pulumi.Output<string | undefined>;property encrypted
public encrypted: pulumi.Output<boolean | undefined>;property force
public force: pulumi.Output<boolean | undefined>;property id
id: Output<ID>;id is the provider-assigned unique ID for this managed resource. It is set during deployments and may be missing (undefined) during planning phases.
property imageName
public imageName: pulumi.Output<string>;property kmsKeyId
public kmsKeyId: pulumi.Output<string | undefined>;property name
public name: pulumi.Output<string>;property sourceImageId
public sourceImageId: pulumi.Output<string>;property sourceRegionId
public sourceRegionId: pulumi.Output<string>;property tags
public tags: pulumi.Output<{[key: string]: any} | undefined>;property urn
urn: Output<URN>;urn is the stable logical URN used to distinctly address a resource, both before and after deployments.
Resource Disk
class Disk extends CustomResourceconstructor
new Disk(name: string, args: DiskArgs, opts?: pulumi.CustomResourceOptions)Create a Disk resource with the given unique name, arguments, and options.
nameThe unique name of the resource.argsThe arguments to use to populate this resource's properties.optsA bag of options that control this resource's behavior.
method get
public static get(name: string, id: pulumi.Input<pulumi.ID>, state?: DiskState, opts?: pulumi.CustomResourceOptions): DiskGet an existing Disk resource’s state with the given name, ID, and optional extra properties used to qualify the lookup.
method getProvider
getProvider(moduleMember: string): ProviderResource | undefinedmethod isInstance
public static isInstance(obj: any): obj is DiskReturns true if the given object is an instance of Disk. This is designed to work even when multiple copies of the Pulumi SDK have been loaded into the same process.
property availabilityZone
public availabilityZone: pulumi.Output<string>;The Zone to create the disk in.
property category
public category: pulumi.Output<string | undefined>;Category of the disk. Valid values are cloud, cloudEfficiency, cloudSsd, cloudEssd. Default is cloudEfficiency.
property deleteAutoSnapshot
public deleteAutoSnapshot: pulumi.Output<boolean | undefined>;Indicates whether the automatic snapshot is deleted when the disk is released. Default value: false.
property deleteWithInstance
public deleteWithInstance: pulumi.Output<boolean | undefined>;Indicates whether the disk is released together with the instance: Default value: false.
property description
public description: pulumi.Output<string | undefined>;Description of the disk. This description can have a string of 2 to 256 characters, It cannot begin with http:// or https://. Default value is null.
property enableAutoSnapshot
public enableAutoSnapshot: pulumi.Output<boolean | undefined>;Indicates whether to apply a created automatic snapshot policy to the disk. Default value: false.
property encrypted
public encrypted: pulumi.Output<boolean | undefined>;If true, the disk will be encrypted, conflict with snapshotId.
property id
id: Output<ID>;id is the provider-assigned unique ID for this managed resource. It is set during deployments and may be missing (undefined) during planning phases.
property name
public name: pulumi.Output<string>;Name of the ECS disk. This name can have a string of 2 to 128 characters, must contain only alphanumeric characters or hyphens, such as “-”,“.”,”_“, and must not begin or end with a hyphen, and must not begin with http:// or https://. Default value is null.
property resourceGroupId
public resourceGroupId: pulumi.Output<string | undefined>;The Id of resource group which the disk belongs.
> NOTE: Disk category cloud has been outdated and it only can be used none I/O Optimized ECS instances. Recommend cloudEfficiency and cloudSsd disk.
property size
public size: pulumi.Output<number>;The size of the disk in GiBs. When resize the disk, the new size must be greater than the former value, or you would get an error InvalidDiskSize.TooSmall.
property snapshotId
public snapshotId: pulumi.Output<string | undefined>;A snapshot to base the disk off of. If the disk size required by snapshot is greater than size, the size will be ignored, conflict with encrypted.
property status
public status: pulumi.Output<string>;The disk status.
property tags
public tags: pulumi.Output<{[key: string]: any} | undefined>;A mapping of tags to assign to the resource.
property urn
urn: Output<URN>;urn is the stable logical URN used to distinctly address a resource, both before and after deployments.
Resource DiskAttachment
class DiskAttachment extends CustomResourceconstructor
new DiskAttachment(name: string, args: DiskAttachmentArgs, opts?: pulumi.CustomResourceOptions)Create a DiskAttachment resource with the given unique name, arguments, and options.
nameThe unique name of the resource.argsThe arguments to use to populate this resource's properties.optsA bag of options that control this resource's behavior.
method get
public static get(name: string, id: pulumi.Input<pulumi.ID>, state?: DiskAttachmentState, opts?: pulumi.CustomResourceOptions): DiskAttachmentGet an existing DiskAttachment resource’s state with the given name, ID, and optional extra properties used to qualify the lookup.
method getProvider
getProvider(moduleMember: string): ProviderResource | undefinedmethod isInstance
public static isInstance(obj: any): obj is DiskAttachmentReturns true if the given object is an instance of DiskAttachment. This is designed to work even when multiple copies of the Pulumi SDK have been loaded into the same process.
property deviceName
public deviceName: pulumi.Output<string>;The device name has been deprecated, and when attaching disk, it will be allocated automatically by system according to default order from /dev/xvdb to /dev/xvdz.
property diskId
public diskId: pulumi.Output<string>;ID of the Disk to be attached.
property id
id: Output<ID>;id is the provider-assigned unique ID for this managed resource. It is set during deployments and may be missing (undefined) during planning phases.
property instanceId
public instanceId: pulumi.Output<string>;ID of the Instance to attach to.
property urn
urn: Output<URN>;urn is the stable logical URN used to distinctly address a resource, both before and after deployments.
Resource Eip
class Eip extends CustomResourceconstructor
new Eip(name: string, args?: EipArgs, opts?: pulumi.CustomResourceOptions)Create a Eip resource with the given unique name, arguments, and options.
nameThe unique name of the resource.argsThe arguments to use to populate this resource's properties.optsA bag of options that control this resource's behavior.
method get
public static get(name: string, id: pulumi.Input<pulumi.ID>, state?: EipState, opts?: pulumi.CustomResourceOptions): EipGet an existing Eip resource’s state with the given name, ID, and optional extra properties used to qualify the lookup.
method getProvider
getProvider(moduleMember: string): ProviderResource | undefinedmethod isInstance
public static isInstance(obj: any): obj is EipReturns true if the given object is an instance of Eip. This is designed to work even when multiple copies of the Pulumi SDK have been loaded into the same process.
property bandwidth
public bandwidth: pulumi.Output<number | undefined>;Maximum bandwidth to the elastic public network, measured in Mbps (Mega bit per second). If this value is not specified, then automatically sets it to 5 Mbps.
property description
public description: pulumi.Output<string | undefined>;Description of the EIP instance, This description can have a string of 2 to 256 characters, It cannot begin with http:// or https://. Default value is null.
property id
id: Output<ID>;id is the provider-assigned unique ID for this managed resource. It is set during deployments and may be missing (undefined) during planning phases.
property instanceChargeType
public instanceChargeType: pulumi.Output<string | undefined>;Elastic IP instance charge type. Valid values are “PrePaid” and “PostPaid”. Default to “PostPaid”.
property internetChargeType
public internetChargeType: pulumi.Output<string | undefined>;Internet charge type of the EIP, Valid values are PayByBandwidth, PayByTraffic. Default to PayByBandwidth. From version 1.7.1, default to PayByTraffic. It is only PayByBandwidth when instanceChargeType is PrePaid.
property ipAddress
public ipAddress: pulumi.Output<string>;The elastic ip address
property isp
public isp: pulumi.Output<string>;The line type of the Elastic IP instance. Default to BGP. Other type of the isp need to open a whitelist.
property name
public name: pulumi.Output<string>;The name of the EIP instance. This name can have a string of 2 to 128 characters, must contain only alphanumeric characters or hyphens, such as “-”,“.”,”_“, and must not begin or end with a hyphen, and must not begin with http:// or https://.
property period
public period: pulumi.Output<number | undefined>;The duration that you will buy the resource, in month. It is valid when instanceChargeType is PrePaid.
Default to 1. Valid values: [1-9, 12, 24, 36]. At present, the provider does not support modify “period” and you can do that via web console.
property resourceGroupId
public resourceGroupId: pulumi.Output<string>;The Id of resource group which the eip belongs.
property status
public status: pulumi.Output<string>;The EIP current status.
property tags
public tags: pulumi.Output<{[key: string]: any} | undefined>;A mapping of tags to assign to the resource.
property urn
urn: Output<URN>;urn is the stable logical URN used to distinctly address a resource, both before and after deployments.
Resource EipAssociation
class EipAssociation extends CustomResourceconstructor
new EipAssociation(name: string, args: EipAssociationArgs, opts?: pulumi.CustomResourceOptions)Create a EipAssociation resource with the given unique name, arguments, and options.
nameThe unique name of the resource.argsThe arguments to use to populate this resource's properties.optsA bag of options that control this resource's behavior.
method get
public static get(name: string, id: pulumi.Input<pulumi.ID>, state?: EipAssociationState, opts?: pulumi.CustomResourceOptions): EipAssociationGet an existing EipAssociation resource’s state with the given name, ID, and optional extra properties used to qualify the lookup.
method getProvider
getProvider(moduleMember: string): ProviderResource | undefinedmethod isInstance
public static isInstance(obj: any): obj is EipAssociationReturns true if the given object is an instance of EipAssociation. This is designed to work even when multiple copies of the Pulumi SDK have been loaded into the same process.
property allocationId
public allocationId: pulumi.Output<string>;The allocation EIP ID.
property id
id: Output<ID>;id is the provider-assigned unique ID for this managed resource. It is set during deployments and may be missing (undefined) during planning phases.
property instanceId
public instanceId: pulumi.Output<string>;The ID of the ECS or SLB instance or Nat Gateway.
property instanceType
public instanceType: pulumi.Output<string>;The type of cloud product that the eip instance to bind.
property privateIpAddress
public privateIpAddress: pulumi.Output<string>;The private IP address in the network segment of the vswitch which has been assigned.
property urn
urn: Output<URN>;urn is the stable logical URN used to distinctly address a resource, both before and after deployments.
Resource Image
class Image extends CustomResourceCreates a custom image. You can then use a custom image to create ECS instances (RunInstances) or change the system disk for an existing instance (ReplaceSystemDisk).
NOTE: If you want to create a template from an ECS instance, you can specify the instance ID (InstanceId) to create a custom image. You must make sure that the status of the specified instance is Running or Stopped. After a successful invocation, each disk of the specified instance has a new snapshot created.
NOTE: If you want to create a custom image based on the system disk of your ECS instance, you can specify one of the system disk snapshots (SnapshotId) to create a custom image. However, the specified snapshot cannot be created on or before July 15, 2013.
NOTE: If you want to combine snapshots of multiple disks into an image template, you can specify DiskDeviceMapping to create a custom image.
NOTE: Available in 1.64.0+
Example Usage
import * as pulumi from "@pulumi/pulumi";
import * as alicloud from "@pulumi/alicloud";
const defaultImage = new alicloud.ecs.Image("default", {
architecture: "x8664",
description: "test-image",
imageName: "test-image",
instanceId: "i-bp1g6zv0ce8oghu7k***",
platform: "CentOS",
resourceGroupId: "rg-bp67acfmxazb4ph***",
tags: {
FinanceDept: "FinanceDeptJoshua",
},
});constructor
new Image(name: string, args?: ImageArgs, opts?: pulumi.CustomResourceOptions)Create a Image resource with the given unique name, arguments, and options.
nameThe unique name of the resource.argsThe arguments to use to populate this resource's properties.optsA bag of options that control this resource's behavior.
method get
public static get(name: string, id: pulumi.Input<pulumi.ID>, state?: ImageState, opts?: pulumi.CustomResourceOptions): ImageGet an existing Image resource’s state with the given name, ID, and optional extra properties used to qualify the lookup.
method getProvider
getProvider(moduleMember: string): ProviderResource | undefinedmethod isInstance
public static isInstance(obj: any): obj is ImageReturns true if the given object is an instance of Image. This is designed to work even when multiple copies of the Pulumi SDK have been loaded into the same process.
property architecture
public architecture: pulumi.Output<string | undefined>;Specifies the architecture of the system disk after you specify a data disk snapshot as the data source of the system disk for creating an image. Valid values: i386 , Default is x8664.
property description
public description: pulumi.Output<string | undefined>;The description of the image. It must be 2 to 256 characters in length and must not start with http:// or https://. Default value: null.
property diskDeviceMappings
public diskDeviceMappings: pulumi.Output<ImageDiskDeviceMapping[]>;Description of the system with disks and snapshots under the image.
property force
public force: pulumi.Output<boolean | undefined>;Indicates whether to force delete the custom image, Default is false.
- true:Force deletes the custom image, regardless of whether the image is currently being used by other instances.
- false:Verifies that the image is not currently in use by any other instances before deleting the image.
property id
id: Output<ID>;id is the provider-assigned unique ID for this managed resource. It is set during deployments and may be missing (undefined) during planning phases.
property imageName
public imageName: pulumi.Output<string>;The image name. It must be 2 to 128 characters in length, and must begin with a letter or Chinese character (beginning with http:// or https:// is not allowed). It can contain digits, colons (:), underscores (_), or hyphens (-). Default value: null.
property instanceId
public instanceId: pulumi.Output<string | undefined>;The instance ID.
property name
public name: pulumi.Output<string>;property platform
public platform: pulumi.Output<string | undefined>;Specifies the operating system platform of the system disk after you specify a data disk snapshot as the data source of the system disk for creating an image. Valid values: CentOS, Ubuntu, SUSE, OpenSUSE, RedHat, Debian, CoreOS, Aliyun Linux, Windows Server 2003, Windows Server 2008, Windows Server 2012, Windows 7, Default is Others Linux, Customized Linux.
property resourceGroupId
public resourceGroupId: pulumi.Output<string | undefined>;The ID of the enterprise resource group to which a custom image belongs
property snapshotId
public snapshotId: pulumi.Output<string | undefined>;Specifies a snapshot that is used to create a combined custom image.
property tags
public tags: pulumi.Output<{[key: string]: any} | undefined>;The tag value of an image. The value of N ranges from 1 to 20.
property urn
urn: Output<URN>;urn is the stable logical URN used to distinctly address a resource, both before and after deployments.
Resource ImageCopy
class ImageCopy extends CustomResourceCopies a custom image from one region to another. You can use copied images to perform operations in the target region, such as creating instances (RunInstances) and replacing system disks (ReplaceSystemDisk).
NOTE: You can only copy the custom image when it is in the Available state.
NOTE: You can only copy the image belonging to your Alibaba Cloud account. Images cannot be copied from one account to another.
NOTE: If the copying is not completed, you cannot call DeleteImage to delete the image but you can call CancelCopyImage to cancel the copying.
NOTE: Available in 1.66.0+.
Example Usage
import * as pulumi from "@pulumi/pulumi";
import * as alicloud from "@pulumi/alicloud";
const defaultImageCopy = new alicloud.ecs.ImageCopy("default", {
description: "test-image",
imageName: "test-image",
sourceImageId: "m-bp1gxyhdswlsn18tu***",
sourceRegionId: "cn-hangzhou",
tags: {
FinanceDept: "FinanceDeptJoshua",
},
});constructor
new ImageCopy(name: string, args: ImageCopyArgs, opts?: pulumi.CustomResourceOptions)Create a ImageCopy resource with the given unique name, arguments, and options.
nameThe unique name of the resource.argsThe arguments to use to populate this resource's properties.optsA bag of options that control this resource's behavior.
method get
public static get(name: string, id: pulumi.Input<pulumi.ID>, state?: ImageCopyState, opts?: pulumi.CustomResourceOptions): ImageCopyGet an existing ImageCopy resource’s state with the given name, ID, and optional extra properties used to qualify the lookup.
method getProvider
getProvider(moduleMember: string): ProviderResource | undefinedmethod isInstance
public static isInstance(obj: any): obj is ImageCopyReturns true if the given object is an instance of ImageCopy. This is designed to work even when multiple copies of the Pulumi SDK have been loaded into the same process.
property description
public description: pulumi.Output<string | undefined>;The description of the image. It must be 2 to 256 characters in length and must not start with http:// or https://. Default value: null.
property encrypted
public encrypted: pulumi.Output<boolean | undefined>;Indicates whether to encrypt the image.
property force
public force: pulumi.Output<boolean | undefined>;Indicates whether to force delete the custom image, Default is false.
- true:Force deletes the custom image, regardless of whether the image is currently being used by other instances.
- false:Verifies that the image is not currently in use by any other instances before deleting the image.
property id
id: Output<ID>;id is the provider-assigned unique ID for this managed resource. It is set during deployments and may be missing (undefined) during planning phases.
property imageName
public imageName: pulumi.Output<string>;The image name. It must be 2 to 128 characters in length, and must begin with a letter or Chinese character (beginning with http:// or https:// is not allowed). It can contain digits, colons (:), underscores (_), or hyphens (-). Default value: null.
property kmsKeyId
public kmsKeyId: pulumi.Output<string | undefined>;Key ID used to encrypt the image.
property name
public name: pulumi.Output<string>;property sourceImageId
public sourceImageId: pulumi.Output<string>;The source image ID.
property sourceRegionId
public sourceRegionId: pulumi.Output<string>;The ID of the region to which the source custom image belongs. You can call DescribeRegions to view the latest regions of Alibaba Cloud.
property tags
public tags: pulumi.Output<{[key: string]: any} | undefined>;The tag value of an image. The value of N ranges from 1 to 20.
property urn
urn: Output<URN>;urn is the stable logical URN used to distinctly address a resource, both before and after deployments.
Resource ImageExport
class ImageExport extends CustomResourceExport a custom image to the OSS bucket in the same region as the custom image.
NOTE: If you create an ECS instance using a mirror image and create a system disk snapshot again, exporting a custom image created from the system disk snapshot is not supported.
NOTE: Support for exporting custom images that include data disk snapshot information in the image. The number of data disks cannot exceed 4 and the maximum capacity of a single data disk cannot exceed 500 GiB.
NOTE: Before exporting the image, you must authorize the cloud server ECS official service account to write OSS permissions through RAM.
NOTE: Available in 1.68.0+.
Example Usage
import * as pulumi from "@pulumi/pulumi";
import * as alicloud from "@pulumi/alicloud";
const defaultImageExport = new alicloud.ecs.ImageExport("default", {
imageId: "m-bp1gxy***",
ossBucket: "ecsimageexportconfig",
ossPrefix: "ecsExport",
});constructor
new ImageExport(name: string, args: ImageExportArgs, opts?: pulumi.CustomResourceOptions)Create a ImageExport resource with the given unique name, arguments, and options.
nameThe unique name of the resource.argsThe arguments to use to populate this resource's properties.optsA bag of options that control this resource's behavior.
method get
public static get(name: string, id: pulumi.Input<pulumi.ID>, state?: ImageExportState, opts?: pulumi.CustomResourceOptions): ImageExportGet an existing ImageExport resource’s state with the given name, ID, and optional extra properties used to qualify the lookup.
method getProvider
getProvider(moduleMember: string): ProviderResource | undefinedmethod isInstance
public static isInstance(obj: any): obj is ImageExportReturns true if the given object is an instance of ImageExport. This is designed to work even when multiple copies of the Pulumi SDK have been loaded into the same process.
property id
id: Output<ID>;id is the provider-assigned unique ID for this managed resource. It is set during deployments and may be missing (undefined) during planning phases.
property imageId
public imageId: pulumi.Output<string>;The source image ID.
property ossBucket
public ossBucket: pulumi.Output<string>;Save the exported OSS bucket.
property ossPrefix
public ossPrefix: pulumi.Output<string | undefined>;The prefix of your OSS Object. It can be composed of numbers or letters, and the character length is 1 ~ 30.
property urn
urn: Output<URN>;urn is the stable logical URN used to distinctly address a resource, both before and after deployments.
Resource ImageImport
class ImageImport extends CustomResourceImport a copy of your local on-premise file to ECS, and appear as a custom replacement in the corresponding domain.
NOTE: You must upload the image file to the object storage OSS in advance.
NOTE: The region where the image is imported must be the same region as the OSS bucket where the image file is uploaded.
NOTE: Available in 1.69.0+.
Example Usage
import * as pulumi from "@pulumi/pulumi";
import * as alicloud from "@pulumi/alicloud";
const thisImageImport = new alicloud.ecs.ImageImport("this", {
architecture: "x8664",
description: "test import image",
diskDeviceMappings: [{
diskImageSize: 5,
ossBucket: "testimportimage",
ossObject: "root.img",
}],
imageName: "test-import-image",
licenseType: "Auto",
osType: "linux",
platform: "Ubuntu",
});constructor
new ImageImport(name: string, args: ImageImportArgs, opts?: pulumi.CustomResourceOptions)Create a ImageImport resource with the given unique name, arguments, and options.
nameThe unique name of the resource.argsThe arguments to use to populate this resource's properties.optsA bag of options that control this resource's behavior.
method get
public static get(name: string, id: pulumi.Input<pulumi.ID>, state?: ImageImportState, opts?: pulumi.CustomResourceOptions): ImageImportGet an existing ImageImport resource’s state with the given name, ID, and optional extra properties used to qualify the lookup.
method getProvider
getProvider(moduleMember: string): ProviderResource | undefinedmethod isInstance
public static isInstance(obj: any): obj is ImageImportReturns true if the given object is an instance of ImageImport. This is designed to work even when multiple copies of the Pulumi SDK have been loaded into the same process.
property architecture
public architecture: pulumi.Output<string | undefined>;Specifies the architecture of the system disk after you specify a data disk snapshot as the data source of the system disk for creating an image. Valid values: i386 , Default is x8664.
property description
public description: pulumi.Output<string | undefined>;Description of the image. The length is 2 to 256 English or Chinese characters, and cannot begin with http: // and https: //.
property diskDeviceMappings
public diskDeviceMappings: pulumi.Output<ImageImportDiskDeviceMapping[]>;Description of the system with disks and snapshots under the image.
property id
id: Output<ID>;id is the provider-assigned unique ID for this managed resource. It is set during deployments and may be missing (undefined) during planning phases.
property imageName
public imageName: pulumi.Output<string | undefined>;The image name. The length is 2 ~ 128 English or Chinese characters. Must start with a english letter or Chinese, and cannot start with http: // and https: //. Can contain numbers, colons (:), underscores (_), or hyphens (-).
property licenseType
public licenseType: pulumi.Output<string | undefined>;The type of the license used to activate the operating system after the image is imported. Default value: Auto. Valid values: Auto,Aliyun,BYOL.
property osType
public osType: pulumi.Output<string | undefined>;Operating system platform type. Valid values: windows, Default is linux.
property platform
public platform: pulumi.Output<string | undefined>;Specifies the operating system platform of the system disk after you specify a data disk snapshot as the data source of the system disk for creating an image. Valid values: CentOS, Ubuntu, SUSE, OpenSUSE, Debian, CoreOS, Windows Server 2003, Windows Server 2008, Windows Server 2012, Windows 7, Default is Others Linux, Customized Linux.
property urn
urn: Output<URN>;urn is the stable logical URN used to distinctly address a resource, both before and after deployments.
Resource ImageSharePermission
class ImageSharePermission extends CustomResourceManage image sharing permissions. You can share your custom image to other Alibaba Cloud users. The user can use the shared custom image to create ECS instances or replace the system disk of the instance.
NOTE: You can only share your own custom images to other Alibaba Cloud users.
NOTE: Each custom image can be shared with up to 50 Alibaba Cloud accounts. You can submit a ticket to share with more users.
NOTE: After creating an ECS instance using a shared image, once the custom image owner releases the image sharing relationship or deletes the custom image, the instance cannot initialize the system disk.
NOTE: Available in 1.68.0+.
Example Usage
import * as pulumi from "@pulumi/pulumi";
import * as alicloud from "@pulumi/alicloud";
const defaultImageSharePermission = new alicloud.ecs.ImageSharePermission("default", {
accountId: "1234567890",
imageId: "m-bp1gxyh***",
});constructor
new ImageSharePermission(name: string, args: ImageSharePermissionArgs, opts?: pulumi.CustomResourceOptions)Create a ImageSharePermission resource with the given unique name, arguments, and options.
nameThe unique name of the resource.argsThe arguments to use to populate this resource's properties.optsA bag of options that control this resource's behavior.
method get
public static get(name: string, id: pulumi.Input<pulumi.ID>, state?: ImageSharePermissionState, opts?: pulumi.CustomResourceOptions): ImageSharePermissionGet an existing ImageSharePermission resource’s state with the given name, ID, and optional extra properties used to qualify the lookup.
method getProvider
getProvider(moduleMember: string): ProviderResource | undefinedmethod isInstance
public static isInstance(obj: any): obj is ImageSharePermissionReturns true if the given object is an instance of ImageSharePermission. This is designed to work even when multiple copies of the Pulumi SDK have been loaded into the same process.
property accountId
public accountId: pulumi.Output<string>;Alibaba Cloud Account ID. It is used to share images.
property id
id: Output<ID>;id is the provider-assigned unique ID for this managed resource. It is set during deployments and may be missing (undefined) during planning phases.
property imageId
public imageId: pulumi.Output<string>;The source image ID.
property urn
urn: Output<URN>;urn is the stable logical URN used to distinctly address a resource, both before and after deployments.
Resource Instance
class Instance extends CustomResourceconstructor
new Instance(name: string, args: InstanceArgs, opts?: pulumi.CustomResourceOptions)Create a Instance resource with the given unique name, arguments, and options.
nameThe unique name of the resource.argsThe arguments to use to populate this resource's properties.optsA bag of options that control this resource's behavior.
method get
public static get(name: string, id: pulumi.Input<pulumi.ID>, state?: InstanceState, opts?: pulumi.CustomResourceOptions): InstanceGet an existing Instance resource’s state with the given name, ID, and optional extra properties used to qualify the lookup.
method getProvider
getProvider(moduleMember: string): ProviderResource | undefinedmethod isInstance
public static isInstance(obj: any): obj is InstanceReturns true if the given object is an instance of Instance. This is designed to work even when multiple copies of the Pulumi SDK have been loaded into the same process.
property allocatePublicIp
public allocatePublicIp: pulumi.Output<boolean | undefined>;It has been deprecated from version “1.7.0”. Setting “internetMaxBandwidthOut” larger than 0 can allocate a public ip address for an instance.
property autoReleaseTime
public autoReleaseTime: pulumi.Output<string | undefined>;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.
Set it to null can cancel automatic release attribute and the ECS instance will not be released automatically.
property autoRenewPeriod
public autoRenewPeriod: pulumi.Output<number | undefined>;Auto renewal period of an instance, in the unit of month. It is valid when instanceChargeType is PrePaid. Default to 1. Valid value:
- [1, 2, 3, 6, 12] when periodUnit in “Month”
- [1, 2, 3] when periodUnit in “Week”
property availabilityZone
public availabilityZone: pulumi.Output<string>;The Zone to start the instance in. It is ignored and will be computed when set vswitchId.
property creditSpecification
public creditSpecification: pulumi.Output<string>;Performance mode of the t5 burstable instance. Valid values: ‘Standard’, ‘Unlimited’.
property dataDisks
public dataDisks: pulumi.Output<InstanceDataDisk[] | undefined>;The list of data disks created with instance.
property deletionProtection
public deletionProtection: pulumi.Output<boolean | undefined>;Whether enable the deletion protection or not. - true: Enable deletion protection. - false: Disable deletion protection.
property description
public description: pulumi.Output<string | undefined>;The description of the data disk.
property dryRun
public dryRun: pulumi.Output<boolean | undefined>;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.
property forceDelete
public forceDelete: pulumi.Output<boolean | undefined>;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”.
property hostName
public hostName: pulumi.Output<string>;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.
property id
id: Output<ID>;id is the provider-assigned unique ID for this managed resource. It is set during deployments and may be missing (undefined) during planning phases.
property imageId
public imageId: pulumi.Output<string>;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.
property includeDataDisks
public includeDataDisks: pulumi.Output<boolean | undefined>;Whether to change instance disks charge type when changing instance charge type.
property instanceChargeType
public instanceChargeType: pulumi.Output<string | undefined>;Valid values are PrePaid, PostPaid, The default is PostPaid.
property instanceName
public instanceName: pulumi.Output<string | undefined>;property instanceType
public instanceType: pulumi.Output<string>;The type of instance to start. When it is changed, the instance will reboot to make the change take effect.
property internetChargeType
public internetChargeType: pulumi.Output<string | undefined>;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”.
property internetMaxBandwidthIn
public internetMaxBandwidthIn: pulumi.Output<number>;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.
property internetMaxBandwidthOut
public internetMaxBandwidthOut: pulumi.Output<number | undefined>;Maximum outgoing bandwidth to the public network, measured in Mbps (Mega bit per second). Value range: [0, 100]. Default to 0 Mbps.
property ioOptimized
public ioOptimized: pulumi.Output<string | undefined>;It has been deprecated on instance resource. All the launched alicloud instances will be I/O optimized.
property isOutdated
public isOutdated: pulumi.Output<boolean | undefined>;Whether to use outdated instance type. Default to false.
property keyName
public keyName: pulumi.Output<string>;The name of key pair that can login ECS instance successfully without password. If it is specified, the password would be invalid.
property kmsEncryptedPassword
public kmsEncryptedPassword: pulumi.Output<string | undefined>;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.
property kmsEncryptionContext
public kmsEncryptionContext: pulumi.Output<{[key: string]: any} | undefined>;An KMS encryption context used to decrypt kmsEncryptedPassword before creating or updating an instance with kmsEncryptedPassword. See Encryption Context. It is valid when kmsEncryptedPassword is set. When it is changed, the instance will reboot to make the change take effect.
property password
public password: pulumi.Output<string | undefined>;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.
property period
public period: pulumi.Output<number | undefined>;The duration that you will buy the resource, in month. It is valid when instanceChargeType is PrePaid. Default to 1. Valid values:
- [1-9, 12, 24, 36, 48, 60] when periodUnit in “Month”
- [1-3] when periodUnit in “Week”
property periodUnit
public periodUnit: pulumi.Output<string | undefined>;The duration unit that you will buy the resource. It is valid when instanceChargeType is ‘PrePaid’. Valid value: [“Week”, “Month”]. Default to “Month”.
property privateIp
public privateIp: pulumi.Output<string>;Instance private IP address can be specified when you creating new instance. It is valid when vswitchId is specified. When it is changed, the instance will reboot to make the change take effect.
property publicIp
public publicIp: pulumi.Output<string>;The instance public ip.
property renewalStatus
public renewalStatus: pulumi.Output<string | undefined>;Whether to renew an ECS instance automatically or not. It is valid when instanceChargeType is PrePaid. Default to “Normal”. Valid values:
- AutoRenewal: Enable auto renewal.
- Normal: Disable auto renewal.
- NotRenewal: No renewal any longer. After you specify this value, Alibaba Cloud stop sending notification of instance expiry, and only gives a brief reminder on the third day before the instance expiry.
property resourceGroupId
public resourceGroupId: pulumi.Output<string | undefined>;The Id of resource group which the instance belongs.
property roleName
public roleName: pulumi.Output<string>;Instance RAM role name. The name is provided and maintained by RAM. You can use alicloud.ram.Role to create a new one.
property securityEnhancementStrategy
public securityEnhancementStrategy: pulumi.Output<string | undefined>;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.
property securityGroups
public securityGroups: pulumi.Output<string[]>;A list of security group ids to associate with.
property spotPriceLimit
public spotPriceLimit: pulumi.Output<number | undefined>;The hourly price threshold of a instance, and it takes effect only when parameter ‘spot_strategy’ is ‘SpotWithPriceLimit’. Three decimals is allowed at most.
property spotStrategy
public spotStrategy: pulumi.Output<string | undefined>;The spot strategy of a Pay-As-You-Go instance, and it takes effect only when parameter instanceChargeType 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
property status
public status: pulumi.Output<string | undefined>;The instance status. Valid values: [“Running”, “Stopped”]. You can control the instance start and stop through this parameter. Default to Running.
property subnetId
public subnetId: pulumi.Output<string>;property systemDiskAutoSnapshotPolicyId
public systemDiskAutoSnapshotPolicyId: pulumi.Output<string | undefined>;The ID of the automatic snapshot policy applied to the system disk.
property systemDiskCategory
public systemDiskCategory: pulumi.Output<string | undefined>;Valid values are ephemeralSsd, cloudEfficiency, cloudSsd, cloudEssd, cloud. cloud only is used to some none I/O optimized instance. Default to cloudEfficiency.
property systemDiskSize
public systemDiskSize: pulumi.Output<number | undefined>;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}. ECS instance’s system disk can be reset when replacing system disk. When it is changed, the instance will reboot to make the change take effect.
property tags
public tags: pulumi.Output<{[key: string]: string} | undefined>;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.
property urn
urn: Output<URN>;urn is the stable logical URN used to distinctly address a resource, both before and after deployments.
property userData
public userData: pulumi.Output<string | undefined>;User-defined data to customize the startup behaviors of an ECS instance and to pass data into an ECS instance. From version 1.60.0, it can be update in-place. If updated, the instance will reboot to make the change take effect. Note: Not all of changes will take effect and it depends on cloud-init module type.
property volumeTags
public volumeTags: pulumi.Output<{[key: string]: any}>;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.
property vswitchId
public vswitchId: pulumi.Output<string | undefined>;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.
Resource KeyPair
class KeyPair extends CustomResourceconstructor
new KeyPair(name: string, args?: KeyPairArgs, opts?: pulumi.CustomResourceOptions)Create a KeyPair resource with the given unique name, arguments, and options.
nameThe unique name of the resource.argsThe arguments to use to populate this resource's properties.optsA bag of options that control this resource's behavior.
method get
public static get(name: string, id: pulumi.Input<pulumi.ID>, state?: KeyPairState, opts?: pulumi.CustomResourceOptions): KeyPairGet an existing KeyPair resource’s state with the given name, ID, and optional extra properties used to qualify the lookup.
method getProvider
getProvider(moduleMember: string): ProviderResource | undefinedmethod isInstance
public static isInstance(obj: any): obj is KeyPairReturns true if the given object is an instance of KeyPair. This is designed to work even when multiple copies of the Pulumi SDK have been loaded into the same process.
property fingerPrint
public fingerPrint: pulumi.Output<string>;property id
id: Output<ID>;id is the provider-assigned unique ID for this managed resource. It is set during deployments and may be missing (undefined) during planning phases.
property keyFile
public keyFile: pulumi.Output<string | undefined>;The name of file to save your new key pair’s private key. Strongly suggest you to specified it when you creating key pair, otherwise, you wouldn’t get its private key ever.
property keyName
public keyName: pulumi.Output<string>;The key pair’s name. It is the only in one Alicloud account.
property keyNamePrefix
public keyNamePrefix: pulumi.Output<string | undefined>;property publicKey
public publicKey: pulumi.Output<string | undefined>;You can import an existing public key and using Alicloud key pair to manage it.
property resourceGroupId
public resourceGroupId: pulumi.Output<string | undefined>;The Id of resource group which the key pair belongs.
property tags
public tags: pulumi.Output<{[key: string]: any} | undefined>;property urn
urn: Output<URN>;urn is the stable logical URN used to distinctly address a resource, both before and after deployments.
Resource KeyPairAttachment
class KeyPairAttachment extends CustomResourceProvides a key pair attachment resource to bind key pair for several ECS instances.
NOTE: After the key pair is attached with sone instances, there instances must be rebooted to make the key pair affect.
Example Usage
import * as pulumi from "@pulumi/pulumi";
import * as alicloud from "@pulumi/alicloud";
const config = new pulumi.Config();
const name = config.get("name") || "keyPairAttachmentName";
const defaultZones = pulumi.output(alicloud.getZones({
availableDiskCategory: "cloudSsd",
availableResourceCreation: "VSwitch",
}, { async: true }));
const type = defaultZones.apply(defaultZones => alicloud.ecs.getInstanceTypes({
availabilityZone: defaultZones.zones[0].id,
cpuCoreCount: 1,
memorySize: 2,
}, { async: true }));
const images = pulumi.output(alicloud.ecs.getImages({
mostRecent: true,
nameRegex: "^ubuntu_18.*64",
owners: "system",
}, { async: true }));
const vpc = new alicloud.vpc.Network("vpc", {
cidrBlock: "10.1.0.0/21",
});
const vswitch = new alicloud.vpc.Switch("vswitch", {
availabilityZone: defaultZones.zones[0].id,
cidrBlock: "10.1.1.0/24",
vpcId: vpc.id,
});
const group = new alicloud.ecs.SecurityGroup("group", {
description: "New security group",
vpcId: vpc.id,
});
const instance: alicloud.ecs.Instance[] = [];
for (let i = 0; i < 2; i++) {
instance.push(new alicloud.ecs.Instance(`instance-${i}`, {
imageId: images.images[0].id,
instanceChargeType: "PostPaid",
instanceName: `${name}-${(i + 1)}`,
instanceType: type.instanceTypes[0].id,
internetChargeType: "PayByTraffic",
internetMaxBandwidthOut: 5,
password: "Test12345",
securityGroups: [group.id],
systemDiskCategory: "cloudSsd",
vswitchId: vswitch.id,
}));
}
const pair = new alicloud.ecs.KeyPair("pair", {
keyName: name,
});
const attachment = new alicloud.ecs.KeyPairAttachment("attachment", {
instanceIds: instance.map(v => v.id),
keyName: pair.id,
});constructor
new KeyPairAttachment(name: string, args: KeyPairAttachmentArgs, opts?: pulumi.CustomResourceOptions)Create a KeyPairAttachment resource with the given unique name, arguments, and options.
nameThe unique name of the resource.argsThe arguments to use to populate this resource's properties.optsA bag of options that control this resource's behavior.
method get
public static get(name: string, id: pulumi.Input<pulumi.ID>, state?: KeyPairAttachmentState, opts?: pulumi.CustomResourceOptions): KeyPairAttachmentGet an existing KeyPairAttachment resource’s state with the given name, ID, and optional extra properties used to qualify the lookup.
method getProvider
getProvider(moduleMember: string): ProviderResource | undefinedmethod isInstance
public static isInstance(obj: any): obj is KeyPairAttachmentReturns true if the given object is an instance of KeyPairAttachment. This is designed to work even when multiple copies of the Pulumi SDK have been loaded into the same process.
property force
public force: pulumi.Output<boolean | undefined>;Set it to true and it will reboot instances which attached with the key pair to make key pair affect immediately.
property id
id: Output<ID>;id is the provider-assigned unique ID for this managed resource. It is set during deployments and may be missing (undefined) during planning phases.
property instanceIds
public instanceIds: pulumi.Output<string[]>;The list of ECS instance’s IDs.
property keyName
public keyName: pulumi.Output<string>;The name of key pair used to bind.
property urn
urn: Output<URN>;urn is the stable logical URN used to distinctly address a resource, both before and after deployments.
Resource LaunchTemplate
class LaunchTemplate extends CustomResourceProvides an ECS Launch Template resource.
For information about Launch Template and how to use it, see Launch Template.
Example Usage
import * as pulumi from "@pulumi/pulumi";
import * as alicloud from "@pulumi/alicloud";
const images = pulumi.output(alicloud.ecs.getImages({
owners: "system",
}, { async: true }));
const instances = pulumi.output(alicloud.ecs.getInstances({ async: true }));
const template = new alicloud.ecs.LaunchTemplate("template", {
dataDisks: [
{
description: "test1",
name: "disk1",
},
{
description: "test2",
name: "disk2",
},
],
description: "test1",
hostName: "tf-test-host",
imageId: images.images[0].id,
instanceChargeType: "PrePaid",
instanceName: "tf-instance-name",
instanceType: instances.instances[0].instanceType,
internetChargeType: "PayByBandwidth",
internetMaxBandwidthIn: 5,
internetMaxBandwidthOut: 0,
ioOptimized: "none",
keyPairName: "test-key-pair",
networkInterfaces: {
description: "hello1",
name: "eth0",
primaryIp: "10.0.0.2",
securityGroupId: "xxxx",
vswitchId: "xxxxxxx",
},
networkType: "vpc",
ramRoleName: "xxxxx",
resourceGroupId: "rg-zkdfjahg9zxncv0",
securityEnhancementStrategy: "Active",
securityGroupId: "sg-zxcvj0lasdf102350asdf9a",
spotPriceLimit: 5,
spotStrategy: "SpotWithPriceLimit",
systemDiskCategory: "cloudSsd",
systemDiskDescription: "test disk",
systemDiskName: "hello",
systemDiskSize: 40,
tags: {
tag1: "hello",
tag2: "world",
},
userdata: "xxxxxxxxxxxxxx",
vpcId: "vpc-asdfnbg0as8dfk1nb2",
vswitchId: "sw-ljkngaksdjfj0nnasdf",
zoneId: "beijing-a",
});constructor
new LaunchTemplate(name: string, args?: LaunchTemplateArgs, opts?: pulumi.CustomResourceOptions)Create a LaunchTemplate resource with the given unique name, arguments, and options.
nameThe unique name of the resource.argsThe arguments to use to populate this resource's properties.optsA bag of options that control this resource's behavior.
method get
public static get(name: string, id: pulumi.Input<pulumi.ID>, state?: LaunchTemplateState, opts?: pulumi.CustomResourceOptions): LaunchTemplateGet an existing LaunchTemplate resource’s state with the given name, ID, and optional extra properties used to qualify the lookup.
method getProvider
getProvider(moduleMember: string): ProviderResource | undefinedmethod isInstance
public static isInstance(obj: any): obj is LaunchTemplateReturns true if the given object is an instance of LaunchTemplate. This is designed to work even when multiple copies of the Pulumi SDK have been loaded into the same process.
property autoReleaseTime
public autoReleaseTime: pulumi.Output<string | undefined>;Instance auto release time. The time is presented using the ISO8601 standard and in UTC time. The format is YYYY-MM-DDTHH:MM:SSZ.
property dataDisks
public dataDisks: pulumi.Output<LaunchTemplateDataDisk[] | undefined>;The list of data disks created with instance.
property description
public description: pulumi.Output<string | undefined>;The description of the data disk.
property hostName
public hostName: pulumi.Output<string | undefined>;Instance host name.It cannot start or end with a period (.) or a hyphen (-) and it cannot have two or more consecutive periods (.) or hyphens (-).For Windows: The host name can be [2, 15] characters in length. It can contain A-Z, a-z, numbers, periods (.), and hyphens (-). It cannot only contain numbers. For other operating systems: The host name can be [2, 64] characters in length. It can be segments separated by periods (.). It can contain A-Z, a-z, numbers, and hyphens (-).
property id
id: Output<ID>;id is the provider-assigned unique ID for this managed resource. It is set during deployments and may be missing (undefined) during planning phases.
property imageId
public imageId: pulumi.Output<string | undefined>;Image ID.
property imageOwnerAlias
public imageOwnerAlias: pulumi.Output<string | undefined>;property instanceChargeType
public instanceChargeType: pulumi.Output<string | undefined>;Billing methods. Optional values: - PrePaid: Monthly, or annual subscription. Make sure that your registered credit card is invalid or you have insufficient balance in your PayPal account. Otherwise, InvalidPayMethod error may occur. - PostPaid: Pay-As-You-Go.
property instanceName
public instanceName: pulumi.Output<string | undefined>;The name of the instance. The name is a string of 2 to 128 characters. It must begin with an English or a Chinese character. It can contain A-Z, a-z, Chinese characters, numbers, periods (.), colons (:), underscores (_), and hyphens (-).
property instanceType
public instanceType: pulumi.Output<string | undefined>;Instance type. For more information, call resourceAlicloudInstances to obtain the latest instance type list.
property internetChargeType
public internetChargeType: pulumi.Output<string | undefined>;Internet bandwidth billing method. Optional values: PayByTraffic.
property internetMaxBandwidthIn
public internetMaxBandwidthIn: pulumi.Output<number>;The maximum inbound bandwidth from the Internet network, measured in Mbit/s. Value range: [1, 200].
property internetMaxBandwidthOut
public internetMaxBandwidthOut: pulumi.Output<number | undefined>;Maximum outbound bandwidth from the Internet, its unit of measurement is Mbit/s. Value range: [0, 100].
property ioOptimized
public ioOptimized: pulumi.Output<string | undefined>;Whether it is an I/O-optimized instance or not. Optional values: - none - optimized
property keyPairName
public keyPairName: pulumi.Output<string | undefined>;The name of the key pair. - Ignore this parameter for Windows instances. It is null by default. Even if you enter this parameter, only the Password content is used. - The password logon method for Linux instances is set to forbidden upon initialization.
property name
public name: pulumi.Output<string>;The name of the data disk.
property networkInterfaces
public networkInterfaces: pulumi.Output<LaunchTemplateNetworkInterfaces | undefined>;The list of network interfaces created with instance.
property networkType
public networkType: pulumi.Output<string | undefined>;Network type of the instance. Value options: Classic | VPC.
property ramRoleName
public ramRoleName: pulumi.Output<string | undefined>;The RAM role name of the instance. You can use the RAM API ListRoles to query instance RAM role names.
property resourceGroupId
public resourceGroupId: pulumi.Output<string | undefined>;property securityEnhancementStrategy
public securityEnhancementStrategy: pulumi.Output<string | undefined>;Whether or not to activate the security enhancement feature and install network security software free of charge. Optional values: Active | Deactive.
property securityGroupId
public securityGroupId: pulumi.Output<string | undefined>;The security group ID must be one in the same VPC.
property spotPriceLimit
public spotPriceLimit: pulumi.Output<number | undefined>;-(Optional) Sets the maximum hourly instance price. Supports up to three decimal places.
property spotStrategy
public spotStrategy: pulumi.Output<string | undefined>;The spot strategy for a Pay-As-You-Go instance. This parameter is valid and required only when InstanceChargeType is set to PostPaid. Value range: - NoSpot: Normal Pay-As-You-Go instance. - SpotWithPriceLimit: Sets the maximum price for a spot instance. - SpotAsPriceGo: The system automatically calculates the price. The maximum value is the Pay-As-You-Go price.
property systemDiskCategory
public systemDiskCategory: pulumi.Output<string | undefined>;The category of the system disk. System disk type. Optional values: - cloud: Basic cloud disk. - cloud_efficiency: Ultra cloud disk. - cloud_ssd: SSD cloud Disks. - ephemeral_ssd: local SSD Disks - cloud_essd: ESSD cloud Disks.
property systemDiskDescription
public systemDiskDescription: pulumi.Output<string | undefined>;System disk description. It cannot begin with http:// or https://.
property systemDiskName
public systemDiskName: pulumi.Output<string | undefined>;System disk name. The name is a string of 2 to 128 characters. It must begin with an English or a Chinese character. It can contain A-Z, a-z, Chinese characters, numbers, periods (.), colons (:), underscores (_), and hyphens (-).
property systemDiskSize
public systemDiskSize: pulumi.Output<number | undefined>;Size of the system disk, measured in GB. Value range: [20, 500].
property tags
public tags: pulumi.Output<{[key: string]: any} | undefined>;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.
property urn
urn: Output<URN>;urn is the stable logical URN used to distinctly address a resource, both before and after deployments.
property userdata
public userdata: pulumi.Output<string | undefined>;User data of the instance, which is Base64-encoded. Size of the raw data cannot exceed 16 KB.
property vpcId
public vpcId: pulumi.Output<string | undefined>;property vswitchId
public vswitchId: pulumi.Output<string | undefined>;The VSwitch ID for ENI. The instance must be in the same zone of the same VPC network as the ENI, but they may belong to different VSwitches.
property zoneId
public zoneId: pulumi.Output<string | undefined>;The zone ID of the instance.
Resource ReservedInstance
class ReservedInstance extends CustomResourceProvides an Reserved Instance resource.
NOTE: Available in 1.65.0+
Example Usage
import * as pulumi from "@pulumi/pulumi";
import * as alicloud from "@pulumi/alicloud";
const _default = new alicloud.ecs.ReservedInstance("default", {
instanceType: "ecs.g6.large",
instanceAmount: "1",
periodUnit: "Year",
offeringType: "All Upfront",
description: "ReservedInstance",
zoneId: "cn-shanghai-g",
scope: "Zone",
period: "1",
});constructor
new ReservedInstance(name: string, args: ReservedInstanceArgs, opts?: pulumi.CustomResourceOptions)Create a ReservedInstance resource with the given unique name, arguments, and options.
nameThe unique name of the resource.argsThe arguments to use to populate this resource's properties.optsA bag of options that control this resource's behavior.
method get
public static get(name: string, id: pulumi.Input<pulumi.ID>, state?: ReservedInstanceState, opts?: pulumi.CustomResourceOptions): ReservedInstanceGet an existing ReservedInstance resource’s state with the given name, ID, and optional extra properties used to qualify the lookup.
method getProvider
getProvider(moduleMember: string): ProviderResource | undefinedmethod isInstance
public static isInstance(obj: any): obj is ReservedInstanceReturns true if the given object is an instance of ReservedInstance. This is designed to work even when multiple copies of the Pulumi SDK have been loaded into the same process.
property description
public description: pulumi.Output<string | undefined>;Description of the RI. 2 to 256 English or Chinese characters. It cannot start with http:// or https://.
property id
id: Output<ID>;id is the provider-assigned unique ID for this managed resource. It is set during deployments and may be missing (undefined) during planning phases.
property instanceAmount
public instanceAmount: pulumi.Output<number>;Number of instances allocated to an RI (An RI is a coupon that includes one or more allocated instances.).
property instanceType
public instanceType: pulumi.Output<string>;Instance type of the RI. For more information, see Instance type families.
property name
public name: pulumi.Output<string>;Name of the RI. The name must be a string of 2 to 128 characters in length and can contain letters, numbers, colons (:), underscores (_), and hyphens. It must start with a letter. It cannot start with http:// or https://.
property offeringType
public offeringType: pulumi.Output<string | undefined>;Payment type of the RI. Optional values: No Upfront: No upfront payment is required., Partial Upfront: A portion of upfront payment is required.All Upfront: Full upfront payment is required.
property period
public period: pulumi.Output<number | undefined>;property periodUnit
public periodUnit: pulumi.Output<string | undefined>;Term unit. Optional value: Year.
property platform
public platform: pulumi.Output<string>;The operating system type of the image used by the instance. Optional values: Windows, Linux. Default is Linux.
property resourceGroupId
public resourceGroupId: pulumi.Output<string>;Resource group ID.
property scope
public scope: pulumi.Output<string | undefined>;Scope of the RI. Optional values: Region: region-level, Zone: zone-level. Default is Region.
property urn
urn: Output<URN>;urn is the stable logical URN used to distinctly address a resource, both before and after deployments.
property zoneId
public zoneId: pulumi.Output<string | undefined>;ID of the zone to which the RI belongs. When Scope is set to Zone, this parameter is required. For information about the zone list, see DescribeZones.
Resource SecurityGroup
class SecurityGroup extends CustomResourceconstructor
new SecurityGroup(name: string, args?: SecurityGroupArgs, opts?: pulumi.CustomResourceOptions)Create a SecurityGroup resource with the given unique name, arguments, and options.
nameThe unique name of the resource.argsThe arguments to use to populate this resource's properties.optsA bag of options that control this resource's behavior.
method get
public static get(name: string, id: pulumi.Input<pulumi.ID>, state?: SecurityGroupState, opts?: pulumi.CustomResourceOptions): SecurityGroupGet an existing SecurityGroup resource’s state with the given name, ID, and optional extra properties used to qualify the lookup.
method getProvider
getProvider(moduleMember: string): ProviderResource | undefinedmethod isInstance
public static isInstance(obj: any): obj is SecurityGroupReturns true if the given object is an instance of SecurityGroup. This is designed to work even when multiple copies of the Pulumi SDK have been loaded into the same process.
property description
public description: pulumi.Output<string | undefined>;The security group description. Defaults to null.
property id
id: Output<ID>;id is the provider-assigned unique ID for this managed resource. It is set during deployments and may be missing (undefined) during planning phases.
property innerAccess
public innerAccess: pulumi.Output<boolean>;Field ‘inner_access’ has been deprecated from provider version 1.55.3. Use ‘inner_access_policy’ replaces it.
property innerAccessPolicy
public innerAccessPolicy: pulumi.Output<string>;Whether to allow both machines to access each other on all ports in the same security group. Valid values: [“Accept”, “Drop”]
property name
public name: pulumi.Output<string>;The name of the security group. Defaults to null.
property resourceGroupId
public resourceGroupId: pulumi.Output<string | undefined>;The Id of resource group which the securityGroup belongs.
property securityGroupType
public securityGroupType: pulumi.Output<string | undefined>;The type of the security group. Valid values:
normal: basic security group.
enterprise: advanced security group For more information.
property tags
public tags: pulumi.Output<{[key: string]: any} | undefined>;A mapping of tags to assign to the resource.
property urn
urn: Output<URN>;urn is the stable logical URN used to distinctly address a resource, both before and after deployments.
property vpcId
public vpcId: pulumi.Output<string | undefined>;The VPC ID.
Resource SecurityGroupRule
class SecurityGroupRule extends CustomResourceconstructor
new SecurityGroupRule(name: string, args: SecurityGroupRuleArgs, opts?: pulumi.CustomResourceOptions)Create a SecurityGroupRule resource with the given unique name, arguments, and options.
nameThe unique name of the resource.argsThe arguments to use to populate this resource's properties.optsA bag of options that control this resource's behavior.
method get
public static get(name: string, id: pulumi.Input<pulumi.ID>, state?: SecurityGroupRuleState, opts?: pulumi.CustomResourceOptions): SecurityGroupRuleGet an existing SecurityGroupRule resource’s state with the given name, ID, and optional extra properties used to qualify the lookup.
method getProvider
getProvider(moduleMember: string): ProviderResource | undefinedmethod isInstance
public static isInstance(obj: any): obj is SecurityGroupRuleReturns true if the given object is an instance of SecurityGroupRule. This is designed to work even when multiple copies of the Pulumi SDK have been loaded into the same process.
property cidrIp
public cidrIp: pulumi.Output<string | undefined>;The target IP address range. The default value is 0.0.0.0/0 (which means no restriction will be applied). Other supported formats include 10.159.6.18/12. Only IPv4 is supported.
property description
public description: pulumi.Output<string | undefined>;The description of the security group rule. The description can be up to 1 to 512 characters in length. Defaults to null.
property id
id: Output<ID>;id is the provider-assigned unique ID for this managed resource. It is set during deployments and may be missing (undefined) during planning phases.
property ipProtocol
public ipProtocol: pulumi.Output<string>;The protocol. Can be tcp, udp, icmp, gre or all.
property nicType
public nicType: pulumi.Output<string>;Network type, can be either internet or intranet, the default value is internet.
property policy
public policy: pulumi.Output<string | undefined>;Authorization policy, can be either accept or drop, the default value is accept.
property portRange
public portRange: pulumi.Output<string | undefined>;The range of port numbers relevant to the IP protocol. Default to “-1/-1”. When the protocol is tcp or udp, each side port number range from 1 to 65535 and ‘-1/-1’ will be invalid.
For example, 1/200 means that the range of the port numbers is 1-200. Other protocols’ ‘port_range’ can only be “-1/-1”, and other values will be invalid.
property priority
public priority: pulumi.Output<number | undefined>;Authorization policy priority, with parameter values: 1-100, default value: 1.
property securityGroupId
public securityGroupId: pulumi.Output<string>;The security group to apply this rule to.
property sourceGroupOwnerAccount
public sourceGroupOwnerAccount: pulumi.Output<string | undefined>;The Alibaba Cloud user account Id of the target security group when security groups are authorized across accounts. This parameter is invalid if cidrIp has already been set.
property sourceSecurityGroupId
public sourceSecurityGroupId: pulumi.Output<string | undefined>;The target security group ID within the same region. If this field is specified, the nicType can only select intranet.
property type
public type: pulumi.Output<string>;The type of rule being created. Valid options are ingress (inbound) or egress (outbound).
property urn
urn: Output<URN>;urn is the stable logical URN used to distinctly address a resource, both before and after deployments.
Resource Snapshot
class Snapshot extends CustomResourceProvides an ECS snapshot resource.
For information about snapshot and how to use it, see Snapshot.
Example Usage
import * as pulumi from "@pulumi/pulumi";
import * as alicloud from "@pulumi/alicloud";
const snapshot = new alicloud.ecs.Snapshot("snapshot", {
description: "this snapshot is created for testing",
diskId: alicloud_disk_attachment_instance_attachment.diskId,
tags: {
version: "1.2",
},
});constructor
new Snapshot(name: string, args: SnapshotArgs, opts?: pulumi.CustomResourceOptions)Create a Snapshot resource with the given unique name, arguments, and options.
nameThe unique name of the resource.argsThe arguments to use to populate this resource's properties.optsA bag of options that control this resource's behavior.
method get
public static get(name: string, id: pulumi.Input<pulumi.ID>, state?: SnapshotState, opts?: pulumi.CustomResourceOptions): SnapshotGet an existing Snapshot resource’s state with the given name, ID, and optional extra properties used to qualify the lookup.
method getProvider
getProvider(moduleMember: string): ProviderResource | undefinedmethod isInstance
public static isInstance(obj: any): obj is SnapshotReturns true if the given object is an instance of Snapshot. This is designed to work even when multiple copies of the Pulumi SDK have been loaded into the same process.
property description
public description: pulumi.Output<string | undefined>;Description of the snapshot. This description can have a string of 2 to 256 characters, It cannot begin with http:// or https://. Default value is null.
property diskId
public diskId: pulumi.Output<string>;The source disk ID.
property id
id: Output<ID>;id is the provider-assigned unique ID for this managed resource. It is set during deployments and may be missing (undefined) during planning phases.
property name
public name: pulumi.Output<string>;Name of the snapshot. This name can have a string of 2 to 128 characters, must contain only alphanumeric characters or hyphens, such as “-”, “.”, “_“, and must not begin or end with a hyphen, and must not begin with http:// or https://. Default value is null.
property tags
public tags: pulumi.Output<{[key: string]: any} | undefined>;A mapping of tags to assign to the resource.
property urn
urn: Output<URN>;urn is the stable logical URN used to distinctly address a resource, both before and after deployments.
Resource SnapshotPolicy
class SnapshotPolicy extends CustomResourceProvides an ECS snapshot policy resource.
For information about snapshot policy and how to use it, see Snapshot.
NOTE: Available in 1.42.0+.
Example Usage
import * as pulumi from "@pulumi/pulumi";
import * as alicloud from "@pulumi/alicloud";
const sp = new alicloud.ecs.SnapshotPolicy("sp", {
repeatWeekdays: [
"1",
"2",
"3",
],
retentionDays: -1,
timePoints: [
"1",
"22",
"23",
],
});constructor
new SnapshotPolicy(name: string, args: SnapshotPolicyArgs, opts?: pulumi.CustomResourceOptions)Create a SnapshotPolicy resource with the given unique name, arguments, and options.
nameThe unique name of the resource.argsThe arguments to use to populate this resource's properties.optsA bag of options that control this resource's behavior.
method get
public static get(name: string, id: pulumi.Input<pulumi.ID>, state?: SnapshotPolicyState, opts?: pulumi.CustomResourceOptions): SnapshotPolicyGet an existing SnapshotPolicy resource’s state with the given name, ID, and optional extra properties used to qualify the lookup.
method getProvider
getProvider(moduleMember: string): ProviderResource | undefinedmethod isInstance
public static isInstance(obj: any): obj is SnapshotPolicyReturns true if the given object is an instance of SnapshotPolicy. This is designed to work even when multiple copies of the Pulumi SDK have been loaded into the same process.
property id
id: Output<ID>;id is the provider-assigned unique ID for this managed resource. It is set during deployments and may be missing (undefined) during planning phases.
property name
public name: pulumi.Output<string>;The snapshot policy name.
property repeatWeekdays
public repeatWeekdays: pulumi.Output<string[]>;The automatic snapshot repetition dates. The unit of measurement is day and the repeating cycle is a week. Value range: [1, 7], which represents days starting from Monday to Sunday, for example 1 indicates Monday. When you want to schedule multiple automatic snapshot tasks for a disk in a week, you can set the RepeatWeekdays to an array. - A maximum of seven time points can be selected. - The format is an JSON array of [“1”, “2”, … “7”] and the time points are separated by commas (,).
property retentionDays
public retentionDays: pulumi.Output<number>;The snapshot retention time, and the unit of measurement is day. Optional values: - -1: The automatic snapshots are retained permanently. - [1, 65536]: The number of days retained.
property timePoints
public timePoints: pulumi.Output<string[]>;The automatic snapshot creation schedule, and the unit of measurement is hour. Value range: [0, 23], which represents from 00:00 to 24:00, for example 1 indicates 01:00. When you want to schedule multiple automatic snapshot tasks for a disk in a day, you can set the TimePoints to an array. - A maximum of 24 time points can be selected. - The format is an JSON array of [“0”, “1”, … “23”] and the time points are separated by commas (,).
property urn
urn: Output<URN>;urn is the stable logical URN used to distinctly address a resource, both before and after deployments.
Functions
Function getDisks
getDisks(args?: GetDisksArgs, opts?: pulumi.InvokeOptions): Promise<GetDisksResult>This data source provides the disks of the current Alibaba Cloud user.
Example Usage
import * as pulumi from "@pulumi/pulumi";
import * as alicloud from "@pulumi/alicloud";
const disksDs = pulumi.output(alicloud.ecs.getDisks({
nameRegex: "sampleDisk",
}, { async: true }));
export const firstDiskId = disksDs.disks[0].id;Function getEips
getEips(args?: GetEipsArgs, opts?: pulumi.InvokeOptions): Promise<GetEipsResult>This data source provides a list of EIPs (Elastic IP address) owned by an Alibaba Cloud account.
Example Usage
import * as pulumi from "@pulumi/pulumi";
import * as alicloud from "@pulumi/alicloud";
const eipsDs = pulumi.output(alicloud.ecs.getEips({ async: true }));
export const firstEipId = eipsDs.eips[0].id;Function getImages
getImages(args?: GetImagesArgs, opts?: pulumi.InvokeOptions): Promise<GetImagesResult>This data source provides available image resources. It contains user’s private images, system images provided by Alibaba Cloud, other public images and the ones available on the image market.
Example Usage
import * as pulumi from "@pulumi/pulumi";
import * as alicloud from "@pulumi/alicloud";
const imagesDs = pulumi.output(alicloud.ecs.getImages({
nameRegex: "^centos_6",
owners: "system",
}, { async: true }));
export const firstImageId = imagesDs.images[0].id;Function getInstances
getInstances(args?: GetInstancesArgs, opts?: pulumi.InvokeOptions): Promise<GetInstancesResult>The Instances data source list ECS instance resources according to their ID, name regex, image id, status and other fields.
Example Usage
import * as pulumi from "@pulumi/pulumi";
import * as alicloud from "@pulumi/alicloud";
const instancesDs = pulumi.output(alicloud.ecs.getInstances({
nameRegex: "webServer",
status: "Running",
}, { async: true }));
export const firstInstanceId = instancesDs.instances[0].id;
export const instanceIds = instancesDs.ids!;Function getInstanceTypeFamilies
getInstanceTypeFamilies(args?: GetInstanceTypeFamiliesArgs, opts?: pulumi.InvokeOptions): Promise<GetInstanceTypeFamiliesResult>This data source provides the ECS instance type families of Alibaba Cloud.
NOTE: Available in 1.54.0+
Example Usage
import * as pulumi from "@pulumi/pulumi";
import * as alicloud from "@pulumi/alicloud";
const defaultInstanceTypeFamilies = pulumi.output(alicloud.ecs.getInstanceTypeFamilies({
instanceChargeType: "PrePaid",
}, { async: true }));
export const firstInstanceTypeFamilyId = defaultInstanceTypeFamilies.families[0].id;
export const instanceIds = defaultInstanceTypeFamilies.ids;Function getInstanceTypes
getInstanceTypes(args?: GetInstanceTypesArgs, opts?: pulumi.InvokeOptions): Promise<GetInstanceTypesResult>This data source provides the ECS instance types of Alibaba Cloud.
NOTE: By default, only the upgraded instance types are returned. If you want to get outdated instance types, you must set
isOutdatedto true.NOTE: If one instance type is sold out, it will not be exported.
Example Usage
import * as pulumi from "@pulumi/pulumi";
import * as alicloud from "@pulumi/alicloud";
// Declare the data source
const typesDs = pulumi.output(alicloud.ecs.getInstanceTypes({
cpuCoreCount: 1,
memorySize: 2,
}, { async: true }));
const instance = new alicloud.ecs.Instance("instance", {
instanceType: typesDs.instanceTypes[0].id,
});Function getKeyPairs
getKeyPairs(args?: GetKeyPairsArgs, opts?: pulumi.InvokeOptions): Promise<GetKeyPairsResult>This data source provides a list of key pairs in an Alibaba Cloud account according to the specified filters.
Example Usage
import * as pulumi from "@pulumi/pulumi";
import * as alicloud from "@pulumi/alicloud";
// Declare the data source
const defaultKeyPair = new alicloud.ecs.KeyPair("default", {
keyName: "keyPairDatasource",
});
const defaultKeyPairs = defaultKeyPair.keyName.apply(keyName => alicloud.ecs.getKeyPairs({
nameRegex: keyName,
}, { async: true }));Function getNetworkInterfaces
getNetworkInterfaces(args?: GetNetworkInterfacesArgs, opts?: pulumi.InvokeOptions): Promise<GetNetworkInterfacesResult>Use this data source to get a list of elastic network interfaces according to the specified filters in an Alibaba Cloud account.
For information about elastic network interface and how to use it, see Elastic Network Interface
Example Usage
import * as pulumi from "@pulumi/pulumi";
import * as alicloud from "@pulumi/alicloud";
const config = new pulumi.Config();
const name = config.get("name") || "networkInterfacesName";
const vpc = new alicloud.vpc.Network("vpc", {
cidrBlock: "192.168.0.0/24",
});
const defaultZones = pulumi.output(alicloud.getZones({
availableResourceCreation: "VSwitch",
}, { async: true }));
const vswitch = new alicloud.vpc.Switch("vswitch", {
availabilityZone: defaultZones.zones[0].id,
cidrBlock: "192.168.0.0/24",
vpcId: vpc.id,
});
const group = new alicloud.ecs.SecurityGroup("group", {
vpcId: vpc.id,
});
const interfaceNetworkInterface = new alicloud.vpc.NetworkInterface("interface", {
description: "Basic test",
privateIp: "192.168.0.2",
securityGroups: [group.id],
tags: {
"TF-VER": "0.11.3",
},
vswitchId: vswitch.id,
});
const instance = new alicloud.ecs.Instance("instance", {
availabilityZone: defaultZones.zones[0].id,
imageId: "centos_7_04_64_20G_alibase_201701015.vhd",
instanceName: name,
instanceType: "ecs.e3.xlarge",
internetMaxBandwidthOut: 10,
securityGroups: [group.id],
systemDiskCategory: "cloudEfficiency",
vswitchId: vswitch.id,
});
const attachment = new alicloud.vpc.NetworkInterfaceAttachment("attachment", {
instanceId: instance.id,
networkInterfaceId: interfaceNetworkInterface.id,
});
const defaultNetworkInterfaces = pulumi.all([attachment.networkInterfaceId, instance.id, group.id, vpc.id, vswitch.id]).apply(([networkInterfaceId, instanceId, groupId, vpcId, vswitchId]) => alicloud.ecs.getNetworkInterfaces({
ids: [networkInterfaceId],
instanceId: instanceId,
nameRegex: name,
privateIp: "192.168.0.2",
securityGroupId: groupId,
tags: {
"TF-VER": "0.11.3",
},
type: "Secondary",
vpcId: vpcId,
vswitchId: vswitchId,
}, { async: true }));
export const eni0Name = defaultNetworkInterfaces.interfaces[0].name;Argument Reference
The following arguments are supported:
ids- (Optional) A list of ENI IDs.nameRegex- (Optional) A regex string to filter results by ENI name.vpcId- (Optional) The VPC ID linked to ENIs.vswitchId- (Optional) The VSwitch ID linked to ENIs.privateIp- (Optional) The primary private IP address of the ENI.securityGroupId- (Optional) The security group ID linked to ENIs.name- (Optional) The name of the ENIs.type- (Optional) The type of ENIs, Only support for “Primary” or “Secondary”.instanceId- (Optional) The ECS instance ID that the ENI is attached to.tags- (Optional) A map of tags assigned to ENIs.outputFile- (Optional) The name of output file that saves the filter results.resourceGroupId- (Optional, ForceNew, Available in 1.57.0+) The Id of resource group which the network interface belongs.
Function getSecurityGroupRules
getSecurityGroupRules(args: GetSecurityGroupRulesArgs, opts?: pulumi.InvokeOptions): Promise<GetSecurityGroupRulesResult>The alicloud.ecs.getSecurityGroupRules data source provides a collection of security permissions of a specific security group.
Each collection item represents a single ingress or egress permission rule.
The ID of the security group can be provided via a variable or the result from the other data source alicloud.ecs.getSecurityGroups.
Example Usage
import * as pulumi from "@pulumi/pulumi";
import * as alicloud from "@pulumi/alicloud";
const config = new pulumi.Config();
// Get the security group id from a variable
const securityGroupId = config.require("securityGroupId");
// Or get it from the alicloud.ecs.getSecurityGroups data source.
// Please note that the data source arguments must be enough to filter results to one security group.
const groupsDs = pulumi.output(alicloud.ecs.getSecurityGroups({
nameRegex: "api",
}, { async: true }));
// Filter the security group rule by group
const ingressRulesDs = groupsDs.apply(groupsDs => alicloud.ecs.getSecurityGroupRules({
direction: "ingress",
groupId: groupsDs.groups[0].id,
ipProtocol: "TCP",
nicType: "internet",
}, { async: true }));
// Pass portRange to the backend service
const backend = new alicloud.ecs.Instance("backend", {
userData: pulumi.interpolate`config_service.sh --portrange=${ingressRulesDs.rules[0].portRange}`,
});Function getSecurityGroups
getSecurityGroups(args?: GetSecurityGroupsArgs, opts?: pulumi.InvokeOptions): Promise<GetSecurityGroupsResult>This data source provides a list of Security Groups in an Alibaba Cloud account according to the specified filters.
Example Usage
import * as pulumi from "@pulumi/pulumi";
import * as alicloud from "@pulumi/alicloud";
// Filter security groups and print the results into a file
const secGroupsDs = pulumi.output(alicloud.ecs.getSecurityGroups({
nameRegex: "^web-",
outputFile: "web_access.json",
}, { async: true }));
// In conjunction with a VPC
const primaryVpcDs = new alicloud.vpc.Network("primaryVpcDs", {});
const primarySecGroupsDs = primaryVpcDs.id.apply(id => alicloud.ecs.getSecurityGroups({
vpcId: id,
}, { async: true }));
export const firstGroupId = primarySecGroupsDs.groups[0].id;Function getSnapshots
getSnapshots(args?: GetSnapshotsArgs, opts?: pulumi.InvokeOptions): Promise<GetSnapshotsResult>Use this data source to get a list of snapshot according to the specified filters in an Alibaba Cloud account.
For information about snapshot and how to use it, see Snapshot.
NOTE: Available in 1.40.0+.
Example Usage
import * as pulumi from "@pulumi/pulumi";
import * as alicloud from "@pulumi/alicloud";
const snapshots = pulumi.output(alicloud.ecs.getSnapshots({
ids: ["s-123456890abcdef"],
nameRegex: "tf-testAcc-snapshot",
}, { async: true }));Argument Reference
The following arguments are supported:
instanceId- (Optional) The specified instance ID.diskId- (Optional) The specified disk ID.encrypted- (Optional) Queries the encrypted snapshots. Optional values:- true: Encrypted snapshots.
- false: No encryption attribute limit.
Default value: false.
* ids - (Optional) A list of snapshot IDs.
* nameRegex - (Optional) A regex string to filter results by snapshot name.
* status - (Optional) The specified snapshot status.
* The snapshot status. Optional values:
* progressing: The snapshots are being created.
* accomplished: The snapshots are ready to use.
* failed: The snapshot creation failed.
* all: All status.
Default value: all.
type- (Optional) The snapshot category. Optional values:- auto: Auto snapshots.
- user: Manual snapshots.
- all: Auto and manual snapshots.
Default value: all.
* sourceDiskType - (Optional) The type of source disk:
* System: The snapshots are created for system disks.
* Data: The snapshots are created for data disks.
usage- (Optional) The usage of the snapshot:- image: The snapshots are used to create custom images.
- disk: The snapshots are used to CreateDisk.
- mage_disk: The snapshots are used to create custom images and data disks.
- none: The snapshots are not used yet.
tags- (Optional) A map of tags assigned to snapshots.outputFile- (Optional) The name of output file that saves the filter results.
Others
interface AutoProvisioningGroupArgs
interface AutoProvisioningGroupArgsThe set of arguments for constructing a AutoProvisioningGroup resource.
property autoProvisioningGroupName
autoProvisioningGroupName?: pulumi.Input<string>;property autoProvisioningGroupType
autoProvisioningGroupType?: pulumi.Input<string>;property defaultTargetCapacityType
defaultTargetCapacityType?: pulumi.Input<string>;The type of supplemental instances. When the total value of PayAsYouGoTargetCapacity and SpotTargetCapacity is smaller than the value of TotalTargetCapacity, the auto provisioning group will create instances of the specified type to meet the capacity requirements. Valid values:PayAsYouGo: Pay-as-you-go instances; Spot: Preemptible instances, Default value: Spot.
property description
description?: pulumi.Input<string>;The description of the auto provisioning group.
property excessCapacityTerminationPolicy
excessCapacityTerminationPolicy?: pulumi.Input<string>;The shutdown policy for excess preemptible instances followed when the capacity of the auto provisioning group exceeds the target capacity. Valid values: no-termination and termination,Default value: no-termination.
property launchTemplateConfigs
launchTemplateConfigs: pulumi.Input<pulumi.Input<AutoProvisioningGroupLaunchTemplateConfig>[]>;DataDisk mappings to attach to ecs instance. See Block config below for details.
property launchTemplateId
launchTemplateId: pulumi.Input<string>;The ID of the instance launch template associated with the auto provisioning group.
property launchTemplateVersion
launchTemplateVersion?: pulumi.Input<string>;The version of the instance launch template associated with the auto provisioning group.
property maxSpotPrice
maxSpotPrice?: pulumi.Input<number>;The global maximum price for preemptible instances in the auto provisioning group. If both the MaxSpotPrice and LaunchTemplateConfig.N.MaxPrice parameters are specified, the maximum price is the lower value of the two.
property payAsYouGoAllocationStrategy
payAsYouGoAllocationStrategy?: pulumi.Input<string>;The scale-out policy for pay-as-you-go instances. Valid values: lowest-price and prioritized,Default value: lowest-price.
property payAsYouGoTargetCapacity
payAsYouGoTargetCapacity?: pulumi.Input<string>;The target capacity of pay-as-you-go instances in the auto provisioning group.
property spotAllocationStrategy
spotAllocationStrategy?: pulumi.Input<string>;The scale-out policy for preemptible instances. Valid values:lowest-price and diversified,Default value: lowest-price.
property spotInstanceInterruptionBehavior
spotInstanceInterruptionBehavior?: pulumi.Input<string>;The default behavior after preemptible instances are shut down. Value values: stop and terminate,Default value: stop.
property spotInstancePoolsToUseCount
spotInstancePoolsToUseCount?: pulumi.Input<number>;This parameter takes effect when the SpotAllocationStrategy parameter is set to lowest-price. The auto provisioning group selects instance types of the lowest cost to create instances.
property spotTargetCapacity
spotTargetCapacity?: pulumi.Input<string>;The target capacity of preemptible instances in the auto provisioning group.
property terminateInstances
terminateInstances?: pulumi.Input<boolean>;Specifies whether to release instances of the auto provisioning group. Valid values:false and true, default value: false.
property terminateInstancesWithExpiration
terminateInstancesWithExpiration?: pulumi.Input<boolean>;The shutdown policy for preemptible instances when the auto provisioning group expires. Valid values: false and true, default value: false.
property totalTargetCapacity
totalTargetCapacity: pulumi.Input<string>;The total target capacity of the auto provisioning group. The target capacity consists of the following three parts:PayAsYouGoTargetCapacity,SpotTargetCapacity and the supplemental capacity besides PayAsYouGoTargetCapacity and SpotTargetCapacity.
property validFrom
validFrom?: pulumi.Input<string>;The time when the auto provisioning group is started. The period of time between this point in time and the point in time specified by the validUntil parameter is the effective time period of the auto provisioning group.By default, an auto provisioning group is immediately started after creation.
property validUntil
validUntil?: pulumi.Input<string>;The time when the auto provisioning group expires. The period of time between this point in time and the point in time specified by the validFrom parameter is the effective time period of the auto provisioning group.By default, an auto provisioning group never expires.
interface AutoProvisioningGroupState
interface AutoProvisioningGroupStateInput properties used for looking up and filtering AutoProvisioningGroup resources.
property autoProvisioningGroupName
autoProvisioningGroupName?: pulumi.Input<string>;property autoProvisioningGroupType
autoProvisioningGroupType?: pulumi.Input<string>;property defaultTargetCapacityType
defaultTargetCapacityType?: pulumi.Input<string>;The type of supplemental instances. When the total value of PayAsYouGoTargetCapacity and SpotTargetCapacity is smaller than the value of TotalTargetCapacity, the auto provisioning group will create instances of the specified type to meet the capacity requirements. Valid values:PayAsYouGo: Pay-as-you-go instances; Spot: Preemptible instances, Default value: Spot.
property description
description?: pulumi.Input<string>;The description of the auto provisioning group.
property excessCapacityTerminationPolicy
excessCapacityTerminationPolicy?: pulumi.Input<string>;The shutdown policy for excess preemptible instances followed when the capacity of the auto provisioning group exceeds the target capacity. Valid values: no-termination and termination,Default value: no-termination.
property launchTemplateConfigs
launchTemplateConfigs?: pulumi.Input<pulumi.Input<AutoProvisioningGroupLaunchTemplateConfig>[]>;DataDisk mappings to attach to ecs instance. See Block config below for details.
property launchTemplateId
launchTemplateId?: pulumi.Input<string>;The ID of the instance launch template associated with the auto provisioning group.
property launchTemplateVersion
launchTemplateVersion?: pulumi.Input<string>;The version of the instance launch template associated with the auto provisioning group.
property maxSpotPrice
maxSpotPrice?: pulumi.Input<number>;The global maximum price for preemptible instances in the auto provisioning group. If both the MaxSpotPrice and LaunchTemplateConfig.N.MaxPrice parameters are specified, the maximum price is the lower value of the two.
property payAsYouGoAllocationStrategy
payAsYouGoAllocationStrategy?: pulumi.Input<string>;The scale-out policy for pay-as-you-go instances. Valid values: lowest-price and prioritized,Default value: lowest-price.
property payAsYouGoTargetCapacity
payAsYouGoTargetCapacity?: pulumi.Input<string>;The target capacity of pay-as-you-go instances in the auto provisioning group.
property spotAllocationStrategy
spotAllocationStrategy?: pulumi.Input<string>;The scale-out policy for preemptible instances. Valid values:lowest-price and diversified,Default value: lowest-price.
property spotInstanceInterruptionBehavior
spotInstanceInterruptionBehavior?: pulumi.Input<string>;The default behavior after preemptible instances are shut down. Value values: stop and terminate,Default value: stop.
property spotInstancePoolsToUseCount
spotInstancePoolsToUseCount?: pulumi.Input<number>;This parameter takes effect when the SpotAllocationStrategy parameter is set to lowest-price. The auto provisioning group selects instance types of the lowest cost to create instances.
property spotTargetCapacity
spotTargetCapacity?: pulumi.Input<string>;The target capacity of preemptible instances in the auto provisioning group.
property terminateInstances
terminateInstances?: pulumi.Input<boolean>;Specifies whether to release instances of the auto provisioning group. Valid values:false and true, default value: false.
property terminateInstancesWithExpiration
terminateInstancesWithExpiration?: pulumi.Input<boolean>;The shutdown policy for preemptible instances when the auto provisioning group expires. Valid values: false and true, default value: false.
property totalTargetCapacity
totalTargetCapacity?: pulumi.Input<string>;The total target capacity of the auto provisioning group. The target capacity consists of the following three parts:PayAsYouGoTargetCapacity,SpotTargetCapacity and the supplemental capacity besides PayAsYouGoTargetCapacity and SpotTargetCapacity.
property validFrom
validFrom?: pulumi.Input<string>;The time when the auto provisioning group is started. The period of time between this point in time and the point in time specified by the validUntil parameter is the effective time period of the auto provisioning group.By default, an auto provisioning group is immediately started after creation.
property validUntil
validUntil?: pulumi.Input<string>;The time when the auto provisioning group expires. The period of time between this point in time and the point in time specified by the validFrom parameter is the effective time period of the auto provisioning group.By default, an auto provisioning group never expires.
interface CopyImageArgs
interface CopyImageArgsThe set of arguments for constructing a CopyImage resource.
property description
description?: pulumi.Input<string>;property encrypted
encrypted?: pulumi.Input<boolean>;property force
force?: pulumi.Input<boolean>;property imageName
imageName?: pulumi.Input<string>;property kmsKeyId
kmsKeyId?: pulumi.Input<string>;property name
name?: pulumi.Input<string>;property sourceImageId
sourceImageId: pulumi.Input<string>;property sourceRegionId
sourceRegionId: pulumi.Input<string>;property tags
tags?: pulumi.Input<{[key: string]: any}>;interface CopyImageState
interface CopyImageStateInput properties used for looking up and filtering CopyImage resources.
property description
description?: pulumi.Input<string>;property encrypted
encrypted?: pulumi.Input<boolean>;property force
force?: pulumi.Input<boolean>;property imageName
imageName?: pulumi.Input<string>;property kmsKeyId
kmsKeyId?: pulumi.Input<string>;property name
name?: pulumi.Input<string>;property sourceImageId
sourceImageId?: pulumi.Input<string>;property sourceRegionId
sourceRegionId?: pulumi.Input<string>;property tags
tags?: pulumi.Input<{[key: string]: any}>;interface DiskArgs
interface DiskArgsThe set of arguments for constructing a Disk resource.
property availabilityZone
availabilityZone: pulumi.Input<string>;The Zone to create the disk in.
property category
category?: pulumi.Input<string>;Category of the disk. Valid values are cloud, cloudEfficiency, cloudSsd, cloudEssd. Default is cloudEfficiency.
property deleteAutoSnapshot
deleteAutoSnapshot?: pulumi.Input<boolean>;Indicates whether the automatic snapshot is deleted when the disk is released. Default value: false.
property deleteWithInstance
deleteWithInstance?: pulumi.Input<boolean>;Indicates whether the disk is released together with the instance: Default value: false.
property description
description?: pulumi.Input<string>;Description of the disk. This description can have a string of 2 to 256 characters, It cannot begin with http:// or https://. Default value is null.
property enableAutoSnapshot
enableAutoSnapshot?: pulumi.Input<boolean>;Indicates whether to apply a created automatic snapshot policy to the disk. Default value: false.
property encrypted
encrypted?: pulumi.Input<boolean>;If true, the disk will be encrypted, conflict with snapshotId.
property name
name?: pulumi.Input<string>;Name of the ECS disk. This name can have a string of 2 to 128 characters, must contain only alphanumeric characters or hyphens, such as “-”,“.”,”_“, and must not begin or end with a hyphen, and must not begin with http:// or https://. Default value is null.
property resourceGroupId
resourceGroupId?: pulumi.Input<string>;The Id of resource group which the disk belongs.
> NOTE: Disk category cloud has been outdated and it only can be used none I/O Optimized ECS instances. Recommend cloudEfficiency and cloudSsd disk.
property size
size: pulumi.Input<number>;The size of the disk in GiBs. When resize the disk, the new size must be greater than the former value, or you would get an error InvalidDiskSize.TooSmall.
property snapshotId
snapshotId?: pulumi.Input<string>;A snapshot to base the disk off of. If the disk size required by snapshot is greater than size, the size will be ignored, conflict with encrypted.
property tags
tags?: pulumi.Input<{[key: string]: any}>;A mapping of tags to assign to the resource.
interface DiskAttachmentArgs
interface DiskAttachmentArgsThe set of arguments for constructing a DiskAttachment resource.
property deviceName
deviceName?: pulumi.Input<string>;The device name has been deprecated, and when attaching disk, it will be allocated automatically by system according to default order from /dev/xvdb to /dev/xvdz.
property diskId
diskId: pulumi.Input<string>;ID of the Disk to be attached.
property instanceId
instanceId: pulumi.Input<string>;ID of the Instance to attach to.
interface DiskAttachmentState
interface DiskAttachmentStateInput properties used for looking up and filtering DiskAttachment resources.
property deviceName
deviceName?: pulumi.Input<string>;The device name has been deprecated, and when attaching disk, it will be allocated automatically by system according to default order from /dev/xvdb to /dev/xvdz.
property diskId
diskId?: pulumi.Input<string>;ID of the Disk to be attached.
property instanceId
instanceId?: pulumi.Input<string>;ID of the Instance to attach to.
interface DiskState
interface DiskStateInput properties used for looking up and filtering Disk resources.
property availabilityZone
availabilityZone?: pulumi.Input<string>;The Zone to create the disk in.
property category
category?: pulumi.Input<string>;Category of the disk. Valid values are cloud, cloudEfficiency, cloudSsd, cloudEssd. Default is cloudEfficiency.
property deleteAutoSnapshot
deleteAutoSnapshot?: pulumi.Input<boolean>;Indicates whether the automatic snapshot is deleted when the disk is released. Default value: false.
property deleteWithInstance
deleteWithInstance?: pulumi.Input<boolean>;Indicates whether the disk is released together with the instance: Default value: false.
property description
description?: pulumi.Input<string>;Description of the disk. This description can have a string of 2 to 256 characters, It cannot begin with http:// or https://. Default value is null.
property enableAutoSnapshot
enableAutoSnapshot?: pulumi.Input<boolean>;Indicates whether to apply a created automatic snapshot policy to the disk. Default value: false.
property encrypted
encrypted?: pulumi.Input<boolean>;If true, the disk will be encrypted, conflict with snapshotId.
property name
name?: pulumi.Input<string>;Name of the ECS disk. This name can have a string of 2 to 128 characters, must contain only alphanumeric characters or hyphens, such as “-”,“.”,”_“, and must not begin or end with a hyphen, and must not begin with http:// or https://. Default value is null.
property resourceGroupId
resourceGroupId?: pulumi.Input<string>;The Id of resource group which the disk belongs.
> NOTE: Disk category cloud has been outdated and it only can be used none I/O Optimized ECS instances. Recommend cloudEfficiency and cloudSsd disk.
property size
size?: pulumi.Input<number>;The size of the disk in GiBs. When resize the disk, the new size must be greater than the former value, or you would get an error InvalidDiskSize.TooSmall.
property snapshotId
snapshotId?: pulumi.Input<string>;A snapshot to base the disk off of. If the disk size required by snapshot is greater than size, the size will be ignored, conflict with encrypted.
property status
status?: pulumi.Input<string>;The disk status.
property tags
tags?: pulumi.Input<{[key: string]: any}>;A mapping of tags to assign to the resource.
interface EipArgs
interface EipArgsThe set of arguments for constructing a Eip resource.
property bandwidth
bandwidth?: pulumi.Input<number>;Maximum bandwidth to the elastic public network, measured in Mbps (Mega bit per second). If this value is not specified, then automatically sets it to 5 Mbps.
property description
description?: pulumi.Input<string>;Description of the EIP instance, This description can have a string of 2 to 256 characters, It cannot begin with http:// or https://. Default value is null.
property instanceChargeType
instanceChargeType?: pulumi.Input<string>;Elastic IP instance charge type. Valid values are “PrePaid” and “PostPaid”. Default to “PostPaid”.
property internetChargeType
internetChargeType?: pulumi.Input<string>;Internet charge type of the EIP, Valid values are PayByBandwidth, PayByTraffic. Default to PayByBandwidth. From version 1.7.1, default to PayByTraffic. It is only PayByBandwidth when instanceChargeType is PrePaid.
property isp
isp?: pulumi.Input<string>;The line type of the Elastic IP instance. Default to BGP. Other type of the isp need to open a whitelist.
property name
name?: pulumi.Input<string>;The name of the EIP instance. This name can have a string of 2 to 128 characters, must contain only alphanumeric characters or hyphens, such as “-”,“.”,”_“, and must not begin or end with a hyphen, and must not begin with http:// or https://.
property period
period?: pulumi.Input<number>;The duration that you will buy the resource, in month. It is valid when instanceChargeType is PrePaid.
Default to 1. Valid values: [1-9, 12, 24, 36]. At present, the provider does not support modify “period” and you can do that via web console.
property resourceGroupId
resourceGroupId?: pulumi.Input<string>;The Id of resource group which the eip belongs.
property tags
tags?: pulumi.Input<{[key: string]: any}>;A mapping of tags to assign to the resource.
interface EipAssociationArgs
interface EipAssociationArgsThe set of arguments for constructing a EipAssociation resource.
property allocationId
allocationId: pulumi.Input<string>;The allocation EIP ID.
property instanceId
instanceId: pulumi.Input<string>;The ID of the ECS or SLB instance or Nat Gateway.
property instanceType
instanceType?: pulumi.Input<string>;The type of cloud product that the eip instance to bind.
property privateIpAddress
privateIpAddress?: pulumi.Input<string>;The private IP address in the network segment of the vswitch which has been assigned.
interface EipAssociationState
interface EipAssociationStateInput properties used for looking up and filtering EipAssociation resources.
property allocationId
allocationId?: pulumi.Input<string>;The allocation EIP ID.
property instanceId
instanceId?: pulumi.Input<string>;The ID of the ECS or SLB instance or Nat Gateway.
property instanceType
instanceType?: pulumi.Input<string>;The type of cloud product that the eip instance to bind.
property privateIpAddress
privateIpAddress?: pulumi.Input<string>;The private IP address in the network segment of the vswitch which has been assigned.
interface EipState
interface EipStateInput properties used for looking up and filtering Eip resources.
property bandwidth
bandwidth?: pulumi.Input<number>;Maximum bandwidth to the elastic public network, measured in Mbps (Mega bit per second). If this value is not specified, then automatically sets it to 5 Mbps.
property description
description?: pulumi.Input<string>;Description of the EIP instance, This description can have a string of 2 to 256 characters, It cannot begin with http:// or https://. Default value is null.
property instanceChargeType
instanceChargeType?: pulumi.Input<string>;Elastic IP instance charge type. Valid values are “PrePaid” and “PostPaid”. Default to “PostPaid”.
property internetChargeType
internetChargeType?: pulumi.Input<string>;Internet charge type of the EIP, Valid values are PayByBandwidth, PayByTraffic. Default to PayByBandwidth. From version 1.7.1, default to PayByTraffic. It is only PayByBandwidth when instanceChargeType is PrePaid.
property ipAddress
ipAddress?: pulumi.Input<string>;The elastic ip address
property isp
isp?: pulumi.Input<string>;The line type of the Elastic IP instance. Default to BGP. Other type of the isp need to open a whitelist.
property name
name?: pulumi.Input<string>;The name of the EIP instance. This name can have a string of 2 to 128 characters, must contain only alphanumeric characters or hyphens, such as “-”,“.”,”_“, and must not begin or end with a hyphen, and must not begin with http:// or https://.
property period
period?: pulumi.Input<number>;The duration that you will buy the resource, in month. It is valid when instanceChargeType is PrePaid.
Default to 1. Valid values: [1-9, 12, 24, 36]. At present, the provider does not support modify “period” and you can do that via web console.
property resourceGroupId
resourceGroupId?: pulumi.Input<string>;The Id of resource group which the eip belongs.
property status
status?: pulumi.Input<string>;The EIP current status.
property tags
tags?: pulumi.Input<{[key: string]: any}>;A mapping of tags to assign to the resource.
interface GetDisksArgs
interface GetDisksArgsA collection of arguments for invoking getDisks.
property category
category?: undefined | string;Disk category. Possible values: cloud (basic cloud disk), cloudEfficiency (ultra cloud disk), ephemeralSsd (local SSD cloud disk), cloudSsd (SSD cloud disk), and cloudEssd (ESSD cloud disk).
property encrypted
encrypted?: undefined | string;Indicate whether the disk is encrypted or not. Possible values: on and off.
property ids
ids?: string[];A list of disks IDs.
property instanceId
instanceId?: undefined | string;Filter the results by the specified ECS instance ID.
property nameRegex
nameRegex?: undefined | string;A regex string to filter results by disk name.
property outputFile
outputFile?: undefined | string;property resourceGroupId
resourceGroupId?: undefined | string;The Id of resource group which the disk belongs.
property tags
tags?: undefined | {[key: string]: any};A map of tags assigned to the disks. It must be in the format:
data "alicloud.ecs.getDisks" "disksDs" {
tags = {
tagKey1 = "tagValue1",
tagKey2 = "tagValue2"
}
}
property type
type?: undefined | string;Disk type. Possible values: system and data.
interface GetDisksResult
interface GetDisksResultA collection of values returned by getDisks.
property category
category?: undefined | string;Disk category. Possible values: cloud (basic cloud disk), cloudEfficiency (ultra cloud disk), ephemeralSsd (local SSD cloud disk), cloudSsd (SSD cloud disk), and cloudEssd (ESSD cloud disk).
property disks
disks: GetDisksDisk[];A list of disks. Each element contains the following attributes:
property encrypted
encrypted?: undefined | string;Indicate whether the disk is encrypted or not. Possible values: on and off.
property id
id: string;The provider-assigned unique ID for this managed resource.
property ids
ids: string[];property instanceId
instanceId?: undefined | string;ID of the related instance. It is null unless the status is In_use.
property nameRegex
nameRegex?: undefined | string;property outputFile
outputFile?: undefined | string;property resourceGroupId
resourceGroupId?: undefined | string;The Id of resource group.
property tags
tags?: undefined | {[key: string]: any};A map of tags assigned to the disk.
property type
type?: undefined | string;Disk type. Possible values: system and data.
interface GetEipsArgs
interface GetEipsArgsA collection of arguments for invoking getEips.
property ids
ids?: string[];A list of EIP IDs.
property inUse
inUse?: undefined | false | true;Deprecated since the version 1.8.0 of this provider.
property ipAddresses
ipAddresses?: string[];A list of EIP public IP addresses.
property outputFile
outputFile?: undefined | string;property resourceGroupId
resourceGroupId?: undefined | string;The Id of resource group which the eips belongs.
property tags
tags?: undefined | {[key: string]: any};A mapping of tags to assign to the resource.
interface GetEipsResult
interface GetEipsResultA collection of values returned by getEips.
property eips
eips: GetEipsEip[];A list of EIPs. Each element contains the following attributes:
property id
id: string;The provider-assigned unique ID for this managed resource.
property ids
ids: string[];(Optional) A list of EIP IDs.
property inUse
inUse?: undefined | false | true;property ipAddresses
ipAddresses?: string[];property names
names: string[];(Optional) A list of EIP names.
property outputFile
outputFile?: undefined | string;property resourceGroupId
resourceGroupId?: undefined | string;The Id of resource group which the eips belongs.
property tags
tags?: undefined | {[key: string]: any};interface GetImagesArgs
interface GetImagesArgsA collection of arguments for invoking getImages.
property mostRecent
mostRecent?: undefined | false | true;If more than one result are returned, select the most recent one.
property nameRegex
nameRegex?: undefined | string;A regex string to filter resulting images by name.
property outputFile
outputFile?: undefined | string;property owners
owners?: undefined | string;Filter results by a specific image owner. Valid items are system, self, others, marketplace.
interface GetImagesResult
interface GetImagesResultA collection of values returned by getImages.
property id
id: string;The provider-assigned unique ID for this managed resource.
property ids
ids: string[];A list of image IDs.
property images
images: GetImagesImage[];A list of images. Each element contains the following attributes:
property mostRecent
mostRecent?: undefined | false | true;property nameRegex
nameRegex?: undefined | string;property outputFile
outputFile?: undefined | string;property owners
owners?: undefined | string;interface GetInstancesArgs
interface GetInstancesArgsA collection of arguments for invoking getInstances.
property availabilityZone
availabilityZone?: undefined | string;Availability zone where instances are located.
property ids
ids?: string[];A list of ECS instance IDs.
property imageId
imageId?: undefined | string;The image ID of some ECS instance used.
property nameRegex
nameRegex?: undefined | string;A regex string to filter results by instance name.
property outputFile
outputFile?: undefined | string;property ramRoleName
ramRoleName?: undefined | string;The RAM role name which the instance attaches.
property resourceGroupId
resourceGroupId?: undefined | string;The Id of resource group which the instance belongs.
property status
status?: undefined | string;Instance status. Valid values: “Creating”, “Starting”, “Running”, “Stopping” and “Stopped”. If undefined, all statuses are considered.
property tags
tags?: undefined | {[key: string]: any};A map of tags assigned to the ECS instances. It must be in the format:
data "alicloud.ecs.getInstances" "taggedInstances" {
tags = {
tagKey1 = "tagValue1",
tagKey2 = "tagValue2"
}
}
property vpcId
vpcId?: undefined | string;ID of the VPC linked to the instances.
property vswitchId
vswitchId?: undefined | string;ID of the VSwitch linked to the instances.
interface GetInstancesResult
interface GetInstancesResultA collection of values returned by getInstances.
property availabilityZone
availabilityZone?: undefined | string;Availability zone the instance belongs to.
property id
id: string;The provider-assigned unique ID for this managed resource.
property ids
ids: string[];A list of ECS instance IDs.
property imageId
imageId?: undefined | string;Image ID the instance is using.
property instances
instances: GetInstancesInstance[];A list of instances. Each element contains the following attributes:
property nameRegex
nameRegex?: undefined | string;property names
names: string[];A list of instances names.
property outputFile
outputFile?: undefined | string;property ramRoleName
ramRoleName?: undefined | string;The Ram role name.
property resourceGroupId
resourceGroupId?: undefined | string;The Id of resource group.
property status
status?: undefined | string;Instance current status.
property tags
tags?: undefined | {[key: string]: any};A map of tags assigned to the ECS instance.
property vpcId
vpcId?: undefined | string;ID of the VPC the instance belongs to.
property vswitchId
vswitchId?: undefined | string;ID of the VSwitch the instance belongs to.
interface GetInstanceTypeFamiliesArgs
interface GetInstanceTypeFamiliesArgsA collection of arguments for invoking getInstanceTypeFamilies.
property generation
generation?: undefined | string;The generation of the instance type family, Valid values: ecs-1, ecs-2, ecs-3 and ecs-4. For more information, see Instance type families.
property instanceChargeType
instanceChargeType?: undefined | string;Valid values are PrePaid, PostPaid, Default to PostPaid.
property outputFile
outputFile?: undefined | string;property spotStrategy
spotStrategy?: undefined | string;Filter the results by ECS spot type. Valid values: NoSpot, SpotWithPriceLimit and SpotAsPriceGo. Default to NoSpot.
property zoneId
zoneId?: undefined | string;The Zone to launch the instance.
interface GetInstanceTypeFamiliesResult
interface GetInstanceTypeFamiliesResultA collection of values returned by getInstanceTypeFamilies.
property families
families: GetInstanceTypeFamiliesFamily[];property generation
generation?: undefined | string;The generation of the instance type family.
property id
id: string;The provider-assigned unique ID for this managed resource.
property ids
ids: string[];A list of instance type family IDs.
property instanceChargeType
instanceChargeType?: undefined | string;property outputFile
outputFile?: undefined | string;property spotStrategy
spotStrategy?: undefined | string;property zoneId
zoneId?: undefined | string;interface GetInstanceTypesArgs
interface GetInstanceTypesArgsA collection of arguments for invoking getInstanceTypes.
property availabilityZone
availabilityZone?: undefined | string;The zone where instance types are supported.
property cpuCoreCount
cpuCoreCount?: undefined | number;Filter the results to a specific number of cpu cores.
property eniAmount
eniAmount?: undefined | number;Filter the result whose network interface number is no more than eniAmount.
property gpuAmount
gpuAmount?: undefined | number;The GPU amount of an instance type.
property gpuSpec
gpuSpec?: undefined | string;The GPU spec of an instance type.
property instanceChargeType
instanceChargeType?: undefined | string;Filter the results by charge type. Valid values: PrePaid and PostPaid. Default to PostPaid.
property instanceTypeFamily
instanceTypeFamily?: undefined | string;Filter the results based on their family name. For example: ‘ecs.n4’.
property isOutdated
isOutdated?: undefined | false | true;If true, outdated instance types are included in the results. Default to false.
property kubernetesNodeRole
kubernetesNodeRole?: undefined | string;property memorySize
memorySize?: undefined | number;Filter the results to a specific memory size in GB.
property networkType
networkType?: undefined | string;Filter the results by network type. Valid values: Classic and Vpc.
property outputFile
outputFile?: undefined | string;property sortedBy
sortedBy?: undefined | string;property spotStrategy
spotStrategy?: undefined | string;Filter the results by ECS spot type. Valid values: NoSpot, SpotWithPriceLimit and SpotAsPriceGo. Default to NoSpot.
interface GetInstanceTypesResult
interface GetInstanceTypesResultA collection of values returned by getInstanceTypes.
property availabilityZone
availabilityZone?: undefined | string;property cpuCoreCount
cpuCoreCount?: undefined | number;Number of CPU cores.
property eniAmount
eniAmount?: undefined | number;The maximum number of network interfaces that an instance type can be attached to.
property gpuAmount
gpuAmount?: undefined | number;property gpuSpec
gpuSpec?: undefined | string;property id
id: string;The provider-assigned unique ID for this managed resource.
property ids
ids: string[];A list of instance type IDs.
property instanceChargeType
instanceChargeType?: undefined | string;property instanceTypeFamily
instanceTypeFamily?: undefined | string;property instanceTypes
instanceTypes: GetInstanceTypesInstanceType[];A list of image types. Each element contains the following attributes:
property isOutdated
isOutdated?: undefined | false | true;property kubernetesNodeRole
kubernetesNodeRole?: undefined | string;property memorySize
memorySize?: undefined | number;Size of memory, measured in GB.
property networkType
networkType?: undefined | string;property outputFile
outputFile?: undefined | string;property sortedBy
sortedBy?: undefined | string;property spotStrategy
spotStrategy?: undefined | string;interface GetKeyPairsArgs
interface GetKeyPairsArgsA collection of arguments for invoking getKeyPairs.
property fingerPrint
fingerPrint?: undefined | string;A finger print used to retrieve specified key pair.
property ids
ids?: string[];A list of key pair IDs.
property nameRegex
nameRegex?: undefined | string;A regex string to apply to the resulting key pairs.
property outputFile
outputFile?: undefined | string;property resourceGroupId
resourceGroupId?: undefined | string;The Id of resource group which the key pair belongs.
property tags
tags?: undefined | {[key: string]: any};A mapping of tags to assign to the resource.
interface GetKeyPairsResult
interface GetKeyPairsResultA collection of values returned by getKeyPairs.
property fingerPrint
fingerPrint: string;Finger print of the key pair.
property id
id: string;The provider-assigned unique ID for this managed resource.
property ids
ids: string[];property keyPairs
keyPairs: GetKeyPairsKeyPair[];A list of key pairs. Each element contains the following attributes:
property nameRegex
nameRegex?: undefined | string;property names
names: string[];A list of key pair names.
property outputFile
outputFile?: undefined | string;property resourceGroupId
resourceGroupId?: undefined | string;The Id of resource group.
property tags
tags?: undefined | {[key: string]: any};(Optional, Available in v1.66.0+) A mapping of tags to assign to the resource.
interface GetNetworkInterfacesArgs
interface GetNetworkInterfacesArgsA collection of arguments for invoking getNetworkInterfaces.
property ids
ids?: string[];property instanceId
instanceId?: undefined | string;ID of the instance that the ENI is attached to.
property nameRegex
nameRegex?: undefined | string;property outputFile
outputFile?: undefined | string;property privateIp
privateIp?: undefined | string;Primary private IP of the ENI.
property resourceGroupId
resourceGroupId?: undefined | string;The Id of resource group.
property securityGroupId
securityGroupId?: undefined | string;property tags
tags?: undefined | {[key: string]: any};A map of tags assigned to the ENI.
property type
type?: undefined | string;property vpcId
vpcId?: undefined | string;ID of the VPC that the ENI belongs to.
property vswitchId
vswitchId?: undefined | string;ID of the VSwitch that the ENI is linked to.
interface GetNetworkInterfacesResult
interface GetNetworkInterfacesResultA collection of values returned by getNetworkInterfaces.
property id
id: string;The provider-assigned unique ID for this managed resource.
property ids
ids: string[];property instanceId
instanceId?: undefined | string;ID of the instance that the ENI is attached to.
property interfaces
interfaces: GetNetworkInterfacesInterface[];A list of ENIs. Each element contains the following attributes:
property nameRegex
nameRegex?: undefined | string;property names
names: string[];property outputFile
outputFile?: undefined | string;property privateIp
privateIp?: undefined | string;Primary private IP of the ENI.
property resourceGroupId
resourceGroupId?: undefined | string;The Id of resource group.
property securityGroupId
securityGroupId?: undefined | string;property tags
tags?: undefined | {[key: string]: any};A map of tags assigned to the ENI.
property type
type?: undefined | string;property vpcId
vpcId?: undefined | string;ID of the VPC that the ENI belongs to.
property vswitchId
vswitchId?: undefined | string;ID of the VSwitch that the ENI is linked to.
interface GetSecurityGroupRulesArgs
interface GetSecurityGroupRulesArgsA collection of arguments for invoking getSecurityGroupRules.
property direction
direction?: undefined | string;Authorization direction. Valid values are: ingress or egress.
property groupId
groupId: string;The ID of the security group that owns the rules.
property ipProtocol
ipProtocol?: undefined | string;The IP protocol. Valid values are: tcp, udp, icmp, gre and all.
property nicType
nicType?: undefined | string;Refers to the network type. Can be either internet or intranet. The default value is internet.
property outputFile
outputFile?: undefined | string;property policy
policy?: undefined | string;Authorization policy. Can be either accept or drop. The default value is accept.
interface GetSecurityGroupRulesResult
interface GetSecurityGroupRulesResultA collection of values returned by getSecurityGroupRules.
property direction
direction?: undefined | string;Authorization direction, ingress or egress.
property groupDesc
groupDesc: string;The description of the security group that owns the rules.
property groupId
groupId: string;property groupName
groupName: string;The name of the security group that owns the rules.
property id
id: string;The provider-assigned unique ID for this managed resource.
property ipProtocol
ipProtocol?: undefined | string;The protocol. Can be tcp, udp, icmp, gre or all.
property nicType
nicType?: undefined | string;Network type, internet or intranet.
property outputFile
outputFile?: undefined | string;property policy
policy?: undefined | string;Authorization policy. Can be either accept or drop.
property rules
rules: GetSecurityGroupRulesRule[];A list of security group rules. Each element contains the following attributes:
interface GetSecurityGroupsArgs
interface GetSecurityGroupsArgsA collection of arguments for invoking getSecurityGroups.
property ids
ids?: string[];A list of Security Group IDs.
property nameRegex
nameRegex?: undefined | string;A regex string to filter the resulting security groups by their names.
property outputFile
outputFile?: undefined | string;property resourceGroupId
resourceGroupId?: undefined | string;The Id of resource group which the securityGroup belongs.
property tags
tags?: undefined | {[key: string]: any};A map of tags assigned to the ECS instances. It must be in the format:
data "alicloud.ecs.getSecurityGroups" "taggedSecurityGroups" {
tags = {
tagKey1 = "tagValue1",
tagKey2 = "tagValue2"
}
}
property vpcId
vpcId?: undefined | string;Used to retrieve security groups that belong to the specified VPC ID.
interface GetSecurityGroupsResult
interface GetSecurityGroupsResultA collection of values returned by getSecurityGroups.
property groups
groups: GetSecurityGroupsGroup[];A list of Security Groups. Each element contains the following attributes:
property id
id: string;The provider-assigned unique ID for this managed resource.
property ids
ids: string[];A list of Security Group IDs.
property nameRegex
nameRegex?: undefined | string;property names
names: string[];A list of Security Group names.
property outputFile
outputFile?: undefined | string;property resourceGroupId
resourceGroupId?: undefined | string;The Id of resource group which the securityGroup belongs.
property tags
tags?: undefined | {[key: string]: any};A map of tags assigned to the ECS instance.
property vpcId
vpcId?: undefined | string;The ID of the VPC that owns the security group.
interface GetSnapshotsArgs
interface GetSnapshotsArgsA collection of arguments for invoking getSnapshots.
property diskId
diskId?: undefined | string;property encrypted
encrypted?: undefined | false | true;Whether the snapshot is encrypted or not.
property ids
ids?: string[];A list of snapshot IDs.
property instanceId
instanceId?: undefined | string;property nameRegex
nameRegex?: undefined | string;property outputFile
outputFile?: undefined | string;property sourceDiskType
sourceDiskType?: undefined | string;Source disk attribute. Value range: * System * Data
property status
status?: undefined | string;The snapshot status. Value range: * progressing * accomplished * failed
property tags
tags?: undefined | {[key: string]: any};A map of tags assigned to the snapshot.
property type
type?: undefined | string;property usage
usage?: undefined | string;Whether the snapshots are used to create resources or not. Value range: * image * disk * imageDisk * none
interface GetSnapshotsResult
interface GetSnapshotsResultA collection of values returned by getSnapshots.
property diskId
diskId?: undefined | string;property encrypted
encrypted?: undefined | false | true;Whether the snapshot is encrypted or not.
property id
id: string;The provider-assigned unique ID for this managed resource.
property ids
ids: string[];A list of snapshot IDs.
property instanceId
instanceId?: undefined | string;property nameRegex
nameRegex?: undefined | string;property names
names: string[];A list of snapshots names.
property outputFile
outputFile?: undefined | string;property snapshots
snapshots: GetSnapshotsSnapshot[];A list of snapshots. Each element contains the following attributes:
property sourceDiskType
sourceDiskType?: undefined | string;Source disk attribute. Value range: * System * Data
property status
status?: undefined | string;The snapshot status. Value range: * progressing * accomplished * failed
property tags
tags?: undefined | {[key: string]: any};A map of tags assigned to the snapshot.
property type
type?: undefined | string;property usage
usage?: undefined | string;Whether the snapshots are used to create resources or not. Value range: * image * disk * imageDisk * none
interface ImageArgs
interface ImageArgsThe set of arguments for constructing a Image resource.
property architecture
architecture?: pulumi.Input<string>;Specifies the architecture of the system disk after you specify a data disk snapshot as the data source of the system disk for creating an image. Valid values: i386 , Default is x8664.
property description
description?: pulumi.Input<string>;The description of the image. It must be 2 to 256 characters in length and must not start with http:// or https://. Default value: null.
property diskDeviceMappings
diskDeviceMappings?: pulumi.Input<pulumi.Input<ImageDiskDeviceMapping>[]>;Description of the system with disks and snapshots under the image.
property force
force?: pulumi.Input<boolean>;Indicates whether to force delete the custom image, Default is false.
- true:Force deletes the custom image, regardless of whether the image is currently being used by other instances.
- false:Verifies that the image is not currently in use by any other instances before deleting the image.
property imageName
imageName?: pulumi.Input<string>;The image name. It must be 2 to 128 characters in length, and must begin with a letter or Chinese character (beginning with http:// or https:// is not allowed). It can contain digits, colons (:), underscores (_), or hyphens (-). Default value: null.
property instanceId
instanceId?: pulumi.Input<string>;The instance ID.
property name
name?: pulumi.Input<string>;property platform
platform?: pulumi.Input<string>;Specifies the operating system platform of the system disk after you specify a data disk snapshot as the data source of the system disk for creating an image. Valid values: CentOS, Ubuntu, SUSE, OpenSUSE, RedHat, Debian, CoreOS, Aliyun Linux, Windows Server 2003, Windows Server 2008, Windows Server 2012, Windows 7, Default is Others Linux, Customized Linux.
property resourceGroupId
resourceGroupId?: pulumi.Input<string>;The ID of the enterprise resource group to which a custom image belongs
property snapshotId
snapshotId?: pulumi.Input<string>;Specifies a snapshot that is used to create a combined custom image.
property tags
tags?: pulumi.Input<{[key: string]: any}>;The tag value of an image. The value of N ranges from 1 to 20.
interface ImageCopyArgs
interface ImageCopyArgsThe set of arguments for constructing a ImageCopy resource.
property description
description?: pulumi.Input<string>;The description of the image. It must be 2 to 256 characters in length and must not start with http:// or https://. Default value: null.
property encrypted
encrypted?: pulumi.Input<boolean>;Indicates whether to encrypt the image.
property force
force?: pulumi.Input<boolean>;Indicates whether to force delete the custom image, Default is false.
- true:Force deletes the custom image, regardless of whether the image is currently being used by other instances.
- false:Verifies that the image is not currently in use by any other instances before deleting the image.
property imageName
imageName?: pulumi.Input<string>;The image name. It must be 2 to 128 characters in length, and must begin with a letter or Chinese character (beginning with http:// or https:// is not allowed). It can contain digits, colons (:), underscores (_), or hyphens (-). Default value: null.
property kmsKeyId
kmsKeyId?: pulumi.Input<string>;Key ID used to encrypt the image.
property name
name?: pulumi.Input<string>;property sourceImageId
sourceImageId: pulumi.Input<string>;The source image ID.
property sourceRegionId
sourceRegionId: pulumi.Input<string>;The ID of the region to which the source custom image belongs. You can call DescribeRegions to view the latest regions of Alibaba Cloud.
property tags
tags?: pulumi.Input<{[key: string]: any}>;The tag value of an image. The value of N ranges from 1 to 20.
interface ImageCopyState
interface ImageCopyStateInput properties used for looking up and filtering ImageCopy resources.
property description
description?: pulumi.Input<string>;The description of the image. It must be 2 to 256 characters in length and must not start with http:// or https://. Default value: null.
property encrypted
encrypted?: pulumi.Input<boolean>;Indicates whether to encrypt the image.
property force
force?: pulumi.Input<boolean>;Indicates whether to force delete the custom image, Default is false.
- true:Force deletes the custom image, regardless of whether the image is currently being used by other instances.
- false:Verifies that the image is not currently in use by any other instances before deleting the image.
property imageName
imageName?: pulumi.Input<string>;The image name. It must be 2 to 128 characters in length, and must begin with a letter or Chinese character (beginning with http:// or https:// is not allowed). It can contain digits, colons (:), underscores (_), or hyphens (-). Default value: null.
property kmsKeyId
kmsKeyId?: pulumi.Input<string>;Key ID used to encrypt the image.
property name
name?: pulumi.Input<string>;property sourceImageId
sourceImageId?: pulumi.Input<string>;The source image ID.
property sourceRegionId
sourceRegionId?: pulumi.Input<string>;The ID of the region to which the source custom image belongs. You can call DescribeRegions to view the latest regions of Alibaba Cloud.
property tags
tags?: pulumi.Input<{[key: string]: any}>;The tag value of an image. The value of N ranges from 1 to 20.
interface ImageExportArgs
interface ImageExportArgsThe set of arguments for constructing a ImageExport resource.
property imageId
imageId: pulumi.Input<string>;The source image ID.
property ossBucket
ossBucket: pulumi.Input<string>;Save the exported OSS bucket.
property ossPrefix
ossPrefix?: pulumi.Input<string>;The prefix of your OSS Object. It can be composed of numbers or letters, and the character length is 1 ~ 30.
interface ImageExportState
interface ImageExportStateInput properties used for looking up and filtering ImageExport resources.
property imageId
imageId?: pulumi.Input<string>;The source image ID.
property ossBucket
ossBucket?: pulumi.Input<string>;Save the exported OSS bucket.
property ossPrefix
ossPrefix?: pulumi.Input<string>;The prefix of your OSS Object. It can be composed of numbers or letters, and the character length is 1 ~ 30.
interface ImageImportArgs
interface ImageImportArgsThe set of arguments for constructing a ImageImport resource.
property architecture
architecture?: pulumi.Input<string>;Specifies the architecture of the system disk after you specify a data disk snapshot as the data source of the system disk for creating an image. Valid values: i386 , Default is x8664.
property description
description?: pulumi.Input<string>;Description of the image. The length is 2 to 256 English or Chinese characters, and cannot begin with http: // and https: //.
property diskDeviceMappings
diskDeviceMappings: pulumi.Input<pulumi.Input<ImageImportDiskDeviceMapping>[]>;Description of the system with disks and snapshots under the image.
property imageName
imageName?: pulumi.Input<string>;The image name. The length is 2 ~ 128 English or Chinese characters. Must start with a english letter or Chinese, and cannot start with http: // and https: //. Can contain numbers, colons (:), underscores (_), or hyphens (-).
property licenseType
licenseType?: pulumi.Input<string>;The type of the license used to activate the operating system after the image is imported. Default value: Auto. Valid values: Auto,Aliyun,BYOL.
property osType
osType?: pulumi.Input<string>;Operating system platform type. Valid values: windows, Default is linux.
property platform
platform?: pulumi.Input<string>;Specifies the operating system platform of the system disk after you specify a data disk snapshot as the data source of the system disk for creating an image. Valid values: CentOS, Ubuntu, SUSE, OpenSUSE, Debian, CoreOS, Windows Server 2003, Windows Server 2008, Windows Server 2012, Windows 7, Default is Others Linux, Customized Linux.
interface ImageImportState
interface ImageImportStateInput properties used for looking up and filtering ImageImport resources.
property architecture
architecture?: pulumi.Input<string>;Specifies the architecture of the system disk after you specify a data disk snapshot as the data source of the system disk for creating an image. Valid values: i386 , Default is x8664.
property description
description?: pulumi.Input<string>;Description of the image. The length is 2 to 256 English or Chinese characters, and cannot begin with http: // and https: //.
property diskDeviceMappings
diskDeviceMappings?: pulumi.Input<pulumi.Input<ImageImportDiskDeviceMapping>[]>;Description of the system with disks and snapshots under the image.
property imageName
imageName?: pulumi.Input<string>;The image name. The length is 2 ~ 128 English or Chinese characters. Must start with a english letter or Chinese, and cannot start with http: // and https: //. Can contain numbers, colons (:), underscores (_), or hyphens (-).
property licenseType
licenseType?: pulumi.Input<string>;The type of the license used to activate the operating system after the image is imported. Default value: Auto. Valid values: Auto,Aliyun,BYOL.
property osType
osType?: pulumi.Input<string>;Operating system platform type. Valid values: windows, Default is linux.
property platform
platform?: pulumi.Input<string>;Specifies the operating system platform of the system disk after you specify a data disk snapshot as the data source of the system disk for creating an image. Valid values: CentOS, Ubuntu, SUSE, OpenSUSE, Debian, CoreOS, Windows Server 2003, Windows Server 2008, Windows Server 2012, Windows 7, Default is Others Linux, Customized Linux.
interface ImageSharePermissionArgs
interface ImageSharePermissionArgsThe set of arguments for constructing a ImageSharePermission resource.
property accountId
accountId: pulumi.Input<string>;Alibaba Cloud Account ID. It is used to share images.
property imageId
imageId: pulumi.Input<string>;The source image ID.
interface ImageSharePermissionState
interface ImageSharePermissionStateInput properties used for looking up and filtering ImageSharePermission resources.
property accountId
accountId?: pulumi.Input<string>;Alibaba Cloud Account ID. It is used to share images.
property imageId
imageId?: pulumi.Input<string>;The source image ID.
interface ImageState
interface ImageStateInput properties used for looking up and filtering Image resources.
property architecture
architecture?: pulumi.Input<string>;Specifies the architecture of the system disk after you specify a data disk snapshot as the data source of the system disk for creating an image. Valid values: i386 , Default is x8664.
property description
description?: pulumi.Input<string>;The description of the image. It must be 2 to 256 characters in length and must not start with http:// or https://. Default value: null.
property diskDeviceMappings
diskDeviceMappings?: pulumi.Input<pulumi.Input<ImageDiskDeviceMapping>[]>;Description of the system with disks and snapshots under the image.
property force
force?: pulumi.Input<boolean>;Indicates whether to force delete the custom image, Default is false.
- true:Force deletes the custom image, regardless of whether the image is currently being used by other instances.
- false:Verifies that the image is not currently in use by any other instances before deleting the image.
property imageName
imageName?: pulumi.Input<string>;The image name. It must be 2 to 128 characters in length, and must begin with a letter or Chinese character (beginning with http:// or https:// is not allowed). It can contain digits, colons (:), underscores (_), or hyphens (-). Default value: null.
property instanceId
instanceId?: pulumi.Input<string>;The instance ID.
property name
name?: pulumi.Input<string>;property platform
platform?: pulumi.Input<string>;Specifies the operating system platform of the system disk after you specify a data disk snapshot as the data source of the system disk for creating an image. Valid values: CentOS, Ubuntu, SUSE, OpenSUSE, RedHat, Debian, CoreOS, Aliyun Linux, Windows Server 2003, Windows Server 2008, Windows Server 2012, Windows 7, Default is Others Linux, Customized Linux.
property resourceGroupId
resourceGroupId?: pulumi.Input<string>;The ID of the enterprise resource group to which a custom image belongs
property snapshotId
snapshotId?: pulumi.Input<string>;Specifies a snapshot that is used to create a combined custom image.
property tags
tags?: pulumi.Input<{[key: string]: any}>;The tag value of an image. The value of N ranges from 1 to 20.
interface InstanceArgs
interface InstanceArgsThe set of arguments for constructing a Instance resource.
property allocatePublicIp
allocatePublicIp?: pulumi.Input<boolean>;It has been deprecated from version “1.7.0”. Setting “internetMaxBandwidthOut” larger than 0 can allocate a public ip address for an instance.
property autoReleaseTime
autoReleaseTime?: pulumi.Input<string>;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.
Set it to null can cancel automatic release attribute and the ECS instance will not be released automatically.
property autoRenewPeriod
autoRenewPeriod?: pulumi.Input<number>;Auto renewal period of an instance, in the unit of month. It is valid when instanceChargeType is PrePaid. Default to 1. Valid value:
- [1, 2, 3, 6, 12] when periodUnit in “Month”
- [1, 2, 3] when periodUnit in “Week”
property availabilityZone
availabilityZone?: pulumi.Input<string>;The Zone to start the instance in. It is ignored and will be computed when set vswitchId.
property creditSpecification
creditSpecification?: pulumi.Input<string>;Performance mode of the t5 burstable instance. Valid values: ‘Standard’, ‘Unlimited’.
property dataDisks
dataDisks?: pulumi.Input<pulumi.Input<InstanceDataDisk>[]>;The list of data disks created with instance.
property deletionProtection
deletionProtection?: pulumi.Input<boolean>;Whether enable the deletion protection or not. - true: Enable deletion protection. - false: Disable deletion protection.
property description
description?: pulumi.Input<string>;The description of the data disk.
property dryRun
dryRun?: pulumi.Input<boolean>;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.
property forceDelete
forceDelete?: pulumi.Input<boolean>;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”.
property hostName
hostName?: pulumi.Input<string>;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.
property imageId
imageId: pulumi.Input<string>;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.
property includeDataDisks
includeDataDisks?: pulumi.Input<boolean>;Whether to change instance disks charge type when changing instance charge type.
property instanceChargeType
instanceChargeType?: pulumi.Input<string>;Valid values are PrePaid, PostPaid, The default is PostPaid.
property instanceName
instanceName?: pulumi.Input<string>;property instanceType
instanceType: pulumi.Input<string>;The type of instance to start. When it is changed, the instance will reboot to make the change take effect.
property internetChargeType
internetChargeType?: pulumi.Input<string>;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”.
property internetMaxBandwidthIn
internetMaxBandwidthIn?: pulumi.Input<number>;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.
property internetMaxBandwidthOut
internetMaxBandwidthOut?: pulumi.Input<number>;Maximum outgoing bandwidth to the public network, measured in Mbps (Mega bit per second). Value range: [0, 100]. Default to 0 Mbps.
property ioOptimized
ioOptimized?: pulumi.Input<string>;It has been deprecated on instance resource. All the launched alicloud instances will be I/O optimized.
property isOutdated
isOutdated?: pulumi.Input<boolean>;Whether to use outdated instance type. Default to false.
property keyName
keyName?: pulumi.Input<string>;The name of key pair that can login ECS instance successfully without password. If it is specified, the password would be invalid.
property kmsEncryptedPassword
kmsEncryptedPassword?: pulumi.Input<string>;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.
property kmsEncryptionContext
kmsEncryptionContext?: pulumi.Input<{[key: string]: any}>;An KMS encryption context used to decrypt kmsEncryptedPassword before creating or updating an instance with kmsEncryptedPassword. See Encryption Context. It is valid when kmsEncryptedPassword is set. When it is changed, the instance will reboot to make the change take effect.
property password
password?: pulumi.Input<string>;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.
property period
period?: pulumi.Input<number>;The duration that you will buy the resource, in month. It is valid when instanceChargeType is PrePaid. Default to 1. Valid values:
- [1-9, 12, 24, 36, 48, 60] when periodUnit in “Month”
- [1-3] when periodUnit in “Week”
property periodUnit
periodUnit?: pulumi.Input<string>;The duration unit that you will buy the resource. It is valid when instanceChargeType is ‘PrePaid’. Valid value: [“Week”, “Month”]. Default to “Month”.
property privateIp
privateIp?: pulumi.Input<string>;Instance private IP address can be specified when you creating new instance. It is valid when vswitchId is specified. When it is changed, the instance will reboot to make the change take effect.
property renewalStatus
renewalStatus?: pulumi.Input<string>;Whether to renew an ECS instance automatically or not. It is valid when instanceChargeType is PrePaid. Default to “Normal”. Valid values:
- AutoRenewal: Enable auto renewal.
- Normal: Disable auto renewal.
- NotRenewal: No renewal any longer. After you specify this value, Alibaba Cloud stop sending notification of instance expiry, and only gives a brief reminder on the third day before the instance expiry.
property resourceGroupId
resourceGroupId?: pulumi.Input<string>;The Id of resource group which the instance belongs.
property roleName
roleName?: pulumi.Input<string>;Instance RAM role name. The name is provided and maintained by RAM. You can use alicloud.ram.Role to create a new one.
property securityEnhancementStrategy
securityEnhancementStrategy?: pulumi.Input<string>;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.
property securityGroups
securityGroups: pulumi.Input<pulumi.Input<string>[]>;A list of security group ids to associate with.
property spotPriceLimit
spotPriceLimit?: pulumi.Input<number>;The hourly price threshold of a instance, and it takes effect only when parameter ‘spot_strategy’ is ‘SpotWithPriceLimit’. Three decimals is allowed at most.
property spotStrategy
spotStrategy?: pulumi.Input<string>;The spot strategy of a Pay-As-You-Go instance, and it takes effect only when parameter instanceChargeType 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
property status
status?: pulumi.Input<string>;The instance status. Valid values: [“Running”, “Stopped”]. You can control the instance start and stop through this parameter. Default to Running.
property subnetId
subnetId?: pulumi.Input<string>;property systemDiskAutoSnapshotPolicyId
systemDiskAutoSnapshotPolicyId?: pulumi.Input<string>;The ID of the automatic snapshot policy applied to the system disk.
property systemDiskCategory
systemDiskCategory?: pulumi.Input<string>;Valid values are ephemeralSsd, cloudEfficiency, cloudSsd, cloudEssd, cloud. cloud only is used to some none I/O optimized instance. Default to cloudEfficiency.
property systemDiskSize
systemDiskSize?: pulumi.Input<number>;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}. ECS instance’s system disk can be reset when replacing system disk. When it is changed, the instance will reboot to make the change take effect.
property tags
tags?: pulumi.Input<{[key: string]: pulumi.Input<string>}>;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.
property userData
userData?: pulumi.Input<string>;User-defined data to customize the startup behaviors of an ECS instance and to pass data into an ECS instance. From version 1.60.0, it can be update in-place. If updated, the instance will reboot to make the change take effect. Note: Not all of changes will take effect and it depends on cloud-init module type.
property volumeTags
volumeTags?: pulumi.Input<{[key: string]: any}>;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.
property vswitchId
vswitchId?: pulumi.Input<string>;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.
interface InstanceState
interface InstanceStateInput properties used for looking up and filtering Instance resources.
property allocatePublicIp
allocatePublicIp?: pulumi.Input<boolean>;It has been deprecated from version “1.7.0”. Setting “internetMaxBandwidthOut” larger than 0 can allocate a public ip address for an instance.
property autoReleaseTime
autoReleaseTime?: pulumi.Input<string>;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.
Set it to null can cancel automatic release attribute and the ECS instance will not be released automatically.
property autoRenewPeriod
autoRenewPeriod?: pulumi.Input<number>;Auto renewal period of an instance, in the unit of month. It is valid when instanceChargeType is PrePaid. Default to 1. Valid value:
- [1, 2, 3, 6, 12] when periodUnit in “Month”
- [1, 2, 3] when periodUnit in “Week”
property availabilityZone
availabilityZone?: pulumi.Input<string>;The Zone to start the instance in. It is ignored and will be computed when set vswitchId.
property creditSpecification
creditSpecification?: pulumi.Input<string>;Performance mode of the t5 burstable instance. Valid values: ‘Standard’, ‘Unlimited’.
property dataDisks
dataDisks?: pulumi.Input<pulumi.Input<InstanceDataDisk>[]>;The list of data disks created with instance.
property deletionProtection
deletionProtection?: pulumi.Input<boolean>;Whether enable the deletion protection or not. - true: Enable deletion protection. - false: Disable deletion protection.
property description
description?: pulumi.Input<string>;The description of the data disk.
property dryRun
dryRun?: pulumi.Input<boolean>;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.
property forceDelete
forceDelete?: pulumi.Input<boolean>;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”.
property hostName
hostName?: pulumi.Input<string>;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.
property imageId
imageId?: pulumi.Input<string>;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.
property includeDataDisks
includeDataDisks?: pulumi.Input<boolean>;Whether to change instance disks charge type when changing instance charge type.
property instanceChargeType
instanceChargeType?: pulumi.Input<string>;Valid values are PrePaid, PostPaid, The default is PostPaid.
property instanceName
instanceName?: pulumi.Input<string>;property instanceType
instanceType?: pulumi.Input<string>;The type of instance to start. When it is changed, the instance will reboot to make the change take effect.
property internetChargeType
internetChargeType?: pulumi.Input<string>;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”.
property internetMaxBandwidthIn
internetMaxBandwidthIn?: pulumi.Input<number>;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.
property internetMaxBandwidthOut
internetMaxBandwidthOut?: pulumi.Input<number>;Maximum outgoing bandwidth to the public network, measured in Mbps (Mega bit per second). Value range: [0, 100]. Default to 0 Mbps.
property ioOptimized
ioOptimized?: pulumi.Input<string>;It has been deprecated on instance resource. All the launched alicloud instances will be I/O optimized.
property isOutdated
isOutdated?: pulumi.Input<boolean>;Whether to use outdated instance type. Default to false.
property keyName
keyName?: pulumi.Input<string>;The name of key pair that can login ECS instance successfully without password. If it is specified, the password would be invalid.
property kmsEncryptedPassword
kmsEncryptedPassword?: pulumi.Input<string>;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.
property kmsEncryptionContext
kmsEncryptionContext?: pulumi.Input<{[key: string]: any}>;An KMS encryption context used to decrypt kmsEncryptedPassword before creating or updating an instance with kmsEncryptedPassword. See Encryption Context. It is valid when kmsEncryptedPassword is set. When it is changed, the instance will reboot to make the change take effect.
property password
password?: pulumi.Input<string>;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.
property period
period?: pulumi.Input<number>;The duration that you will buy the resource, in month. It is valid when instanceChargeType is PrePaid. Default to 1. Valid values:
- [1-9, 12, 24, 36, 48, 60] when periodUnit in “Month”
- [1-3] when periodUnit in “Week”
property periodUnit
periodUnit?: pulumi.Input<string>;The duration unit that you will buy the resource. It is valid when instanceChargeType is ‘PrePaid’. Valid value: [“Week”, “Month”]. Default to “Month”.
property privateIp
privateIp?: pulumi.Input<string>;Instance private IP address can be specified when you creating new instance. It is valid when vswitchId is specified. When it is changed, the instance will reboot to make the change take effect.
property publicIp
publicIp?: pulumi.Input<string>;The instance public ip.
property renewalStatus
renewalStatus?: pulumi.Input<string>;Whether to renew an ECS instance automatically or not. It is valid when instanceChargeType is PrePaid. Default to “Normal”. Valid values:
- AutoRenewal: Enable auto renewal.
- Normal: Disable auto renewal.
- NotRenewal: No renewal any longer. After you specify this value, Alibaba Cloud stop sending notification of instance expiry, and only gives a brief reminder on the third day before the instance expiry.
property resourceGroupId
resourceGroupId?: pulumi.Input<string>;The Id of resource group which the instance belongs.
property roleName
roleName?: pulumi.Input<string>;Instance RAM role name. The name is provided and maintained by RAM. You can use alicloud.ram.Role to create a new one.
property securityEnhancementStrategy
securityEnhancementStrategy?: pulumi.Input<string>;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.
property securityGroups
securityGroups?: pulumi.Input<pulumi.Input<string>[]>;A list of security group ids to associate with.
property spotPriceLimit
spotPriceLimit?: pulumi.Input<number>;The hourly price threshold of a instance, and it takes effect only when parameter ‘spot_strategy’ is ‘SpotWithPriceLimit’. Three decimals is allowed at most.
property spotStrategy
spotStrategy?: pulumi.Input<string>;The spot strategy of a Pay-As-You-Go instance, and it takes effect only when parameter instanceChargeType 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
property status
status?: pulumi.Input<string>;The instance status. Valid values: [“Running”, “Stopped”]. You can control the instance start and stop through this parameter. Default to Running.
property subnetId
subnetId?: pulumi.Input<string>;property systemDiskAutoSnapshotPolicyId
systemDiskAutoSnapshotPolicyId?: pulumi.Input<string>;The ID of the automatic snapshot policy applied to the system disk.
property systemDiskCategory
systemDiskCategory?: pulumi.Input<string>;Valid values are ephemeralSsd, cloudEfficiency, cloudSsd, cloudEssd, cloud. cloud only is used to some none I/O optimized instance. Default to cloudEfficiency.
property systemDiskSize
systemDiskSize?: pulumi.Input<number>;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}. ECS instance’s system disk can be reset when replacing system disk. When it is changed, the instance will reboot to make the change take effect.
property tags
tags?: pulumi.Input<{[key: string]: pulumi.Input<string>}>;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.
property userData
userData?: pulumi.Input<string>;User-defined data to customize the startup behaviors of an ECS instance and to pass data into an ECS instance. From version 1.60.0, it can be update in-place. If updated, the instance will reboot to make the change take effect. Note: Not all of changes will take effect and it depends on cloud-init module type.
property volumeTags
volumeTags?: pulumi.Input<{[key: string]: any}>;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.
property vswitchId
vswitchId?: pulumi.Input<string>;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.
interface KeyPairArgs
interface KeyPairArgsThe set of arguments for constructing a KeyPair resource.
property keyFile
keyFile?: pulumi.Input<string>;The name of file to save your new key pair’s private key. Strongly suggest you to specified it when you creating key pair, otherwise, you wouldn’t get its private key ever.
property keyName
keyName?: pulumi.Input<string>;The key pair’s name. It is the only in one Alicloud account.
property keyNamePrefix
keyNamePrefix?: pulumi.Input<string>;property publicKey
publicKey?: pulumi.Input<string>;You can import an existing public key and using Alicloud key pair to manage it.
property resourceGroupId
resourceGroupId?: pulumi.Input<string>;The Id of resource group which the key pair belongs.
property tags
tags?: pulumi.Input<{[key: string]: any}>;interface KeyPairAttachmentArgs
interface KeyPairAttachmentArgsThe set of arguments for constructing a KeyPairAttachment resource.
property force
force?: pulumi.Input<boolean>;Set it to true and it will reboot instances which attached with the key pair to make key pair affect immediately.
property instanceIds
instanceIds: pulumi.Input<pulumi.Input<string>[]>;The list of ECS instance’s IDs.
property keyName
keyName: pulumi.Input<string>;The name of key pair used to bind.
interface KeyPairAttachmentState
interface KeyPairAttachmentStateInput properties used for looking up and filtering KeyPairAttachment resources.
property force
force?: pulumi.Input<boolean>;Set it to true and it will reboot instances which attached with the key pair to make key pair affect immediately.
property instanceIds
instanceIds?: pulumi.Input<pulumi.Input<string>[]>;The list of ECS instance’s IDs.
property keyName
keyName?: pulumi.Input<string>;The name of key pair used to bind.
interface KeyPairState
interface KeyPairStateInput properties used for looking up and filtering KeyPair resources.
property fingerPrint
fingerPrint?: pulumi.Input<string>;property keyFile
keyFile?: pulumi.Input<string>;The name of file to save your new key pair’s private key. Strongly suggest you to specified it when you creating key pair, otherwise, you wouldn’t get its private key ever.
property keyName
keyName?: pulumi.Input<string>;The key pair’s name. It is the only in one Alicloud account.
property keyNamePrefix
keyNamePrefix?: pulumi.Input<string>;property publicKey
publicKey?: pulumi.Input<string>;You can import an existing public key and using Alicloud key pair to manage it.
property resourceGroupId
resourceGroupId?: pulumi.Input<string>;The Id of resource group which the key pair belongs.
property tags
tags?: pulumi.Input<{[key: string]: any}>;interface LaunchTemplateArgs
interface LaunchTemplateArgsThe set of arguments for constructing a LaunchTemplate resource.
property autoReleaseTime
autoReleaseTime?: pulumi.Input<string>;Instance auto release time. The time is presented using the ISO8601 standard and in UTC time. The format is YYYY-MM-DDTHH:MM:SSZ.
property dataDisks
dataDisks?: pulumi.Input<pulumi.Input<LaunchTemplateDataDisk>[]>;The list of data disks created with instance.
property description
description?: pulumi.Input<string>;The description of the data disk.
property hostName
hostName?: pulumi.Input<string>;Instance host name.It cannot start or end with a period (.) or a hyphen (-) and it cannot have two or more consecutive periods (.) or hyphens (-).For Windows: The host name can be [2, 15] characters in length. It can contain A-Z, a-z, numbers, periods (.), and hyphens (-). It cannot only contain numbers. For other operating systems: The host name can be [2, 64] characters in length. It can be segments separated by periods (.). It can contain A-Z, a-z, numbers, and hyphens (-).
property imageId
imageId?: pulumi.Input<string>;Image ID.
property imageOwnerAlias
imageOwnerAlias?: pulumi.Input<string>;property instanceChargeType
instanceChargeType?: pulumi.Input<string>;Billing methods. Optional values: - PrePaid: Monthly, or annual subscription. Make sure that your registered credit card is invalid or you have insufficient balance in your PayPal account. Otherwise, InvalidPayMethod error may occur. - PostPaid: Pay-As-You-Go.
property instanceName
instanceName?: pulumi.Input<string>;The name of the instance. The name is a string of 2 to 128 characters. It must begin with an English or a Chinese character. It can contain A-Z, a-z, Chinese characters, numbers, periods (.), colons (:), underscores (_), and hyphens (-).
property instanceType
instanceType?: pulumi.Input<string>;Instance type. For more information, call resourceAlicloudInstances to obtain the latest instance type list.
property internetChargeType
internetChargeType?: pulumi.Input<string>;Internet bandwidth billing method. Optional values: PayByTraffic.
property internetMaxBandwidthIn
internetMaxBandwidthIn?: pulumi.Input<number>;The maximum inbound bandwidth from the Internet network, measured in Mbit/s. Value range: [1, 200].
property internetMaxBandwidthOut
internetMaxBandwidthOut?: pulumi.Input<number>;Maximum outbound bandwidth from the Internet, its unit of measurement is Mbit/s. Value range: [0, 100].
property ioOptimized
ioOptimized?: pulumi.Input<string>;Whether it is an I/O-optimized instance or not. Optional values: - none - optimized
property keyPairName
keyPairName?: pulumi.Input<string>;The name of the key pair. - Ignore this parameter for Windows instances. It is null by default. Even if you enter this parameter, only the Password content is used. - The password logon method for Linux instances is set to forbidden upon initialization.
property name
name?: pulumi.Input<string>;The name of the data disk.
property networkInterfaces
networkInterfaces?: pulumi.Input<LaunchTemplateNetworkInterfaces>;The list of network interfaces created with instance.
property networkType
networkType?: pulumi.Input<string>;Network type of the instance. Value options: Classic | VPC.
property ramRoleName
ramRoleName?: pulumi.Input<string>;The RAM role name of the instance. You can use the RAM API ListRoles to query instance RAM role names.
property resourceGroupId
resourceGroupId?: pulumi.Input<string>;property securityEnhancementStrategy
securityEnhancementStrategy?: pulumi.Input<string>;Whether or not to activate the security enhancement feature and install network security software free of charge. Optional values: Active | Deactive.
property securityGroupId
securityGroupId?: pulumi.Input<string>;The security group ID must be one in the same VPC.
property spotPriceLimit
spotPriceLimit?: pulumi.Input<number>;-(Optional) Sets the maximum hourly instance price. Supports up to three decimal places.
property spotStrategy
spotStrategy?: pulumi.Input<string>;The spot strategy for a Pay-As-You-Go instance. This parameter is valid and required only when InstanceChargeType is set to PostPaid. Value range: - NoSpot: Normal Pay-As-You-Go instance. - SpotWithPriceLimit: Sets the maximum price for a spot instance. - SpotAsPriceGo: The system automatically calculates the price. The maximum value is the Pay-As-You-Go price.
property systemDiskCategory
systemDiskCategory?: pulumi.Input<string>;The category of the system disk. System disk type. Optional values: - cloud: Basic cloud disk. - cloud_efficiency: Ultra cloud disk. - cloud_ssd: SSD cloud Disks. - ephemeral_ssd: local SSD Disks - cloud_essd: ESSD cloud Disks.
property systemDiskDescription
systemDiskDescription?: pulumi.Input<string>;System disk description. It cannot begin with http:// or https://.
property systemDiskName
systemDiskName?: pulumi.Input<string>;System disk name. The name is a string of 2 to 128 characters. It must begin with an English or a Chinese character. It can contain A-Z, a-z, Chinese characters, numbers, periods (.), colons (:), underscores (_), and hyphens (-).
property systemDiskSize
systemDiskSize?: pulumi.Input<number>;Size of the system disk, measured in GB. Value range: [20, 500].
property tags
tags?: pulumi.Input<{[key: string]: any}>;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.
property userdata
userdata?: pulumi.Input<string>;User data of the instance, which is Base64-encoded. Size of the raw data cannot exceed 16 KB.
property vpcId
vpcId?: pulumi.Input<string>;property vswitchId
vswitchId?: pulumi.Input<string>;The VSwitch ID for ENI. The instance must be in the same zone of the same VPC network as the ENI, but they may belong to different VSwitches.
property zoneId
zoneId?: pulumi.Input<string>;The zone ID of the instance.
interface LaunchTemplateState
interface LaunchTemplateStateInput properties used for looking up and filtering LaunchTemplate resources.
property autoReleaseTime
autoReleaseTime?: pulumi.Input<string>;Instance auto release time. The time is presented using the ISO8601 standard and in UTC time. The format is YYYY-MM-DDTHH:MM:SSZ.
property dataDisks
dataDisks?: pulumi.Input<pulumi.Input<LaunchTemplateDataDisk>[]>;The list of data disks created with instance.
property description
description?: pulumi.Input<string>;The description of the data disk.
property hostName
hostName?: pulumi.Input<string>;Instance host name.It cannot start or end with a period (.) or a hyphen (-) and it cannot have two or more consecutive periods (.) or hyphens (-).For Windows: The host name can be [2, 15] characters in length. It can contain A-Z, a-z, numbers, periods (.), and hyphens (-). It cannot only contain numbers. For other operating systems: The host name can be [2, 64] characters in length. It can be segments separated by periods (.). It can contain A-Z, a-z, numbers, and hyphens (-).
property imageId
imageId?: pulumi.Input<string>;Image ID.
property imageOwnerAlias
imageOwnerAlias?: pulumi.Input<string>;property instanceChargeType
instanceChargeType?: pulumi.Input<string>;Billing methods. Optional values: - PrePaid: Monthly, or annual subscription. Make sure that your registered credit card is invalid or you have insufficient balance in your PayPal account. Otherwise, InvalidPayMethod error may occur. - PostPaid: Pay-As-You-Go.
property instanceName
instanceName?: pulumi.Input<string>;The name of the instance. The name is a string of 2 to 128 characters. It must begin with an English or a Chinese character. It can contain A-Z, a-z, Chinese characters, numbers, periods (.), colons (:), underscores (_), and hyphens (-).
property instanceType
instanceType?: pulumi.Input<string>;Instance type. For more information, call resourceAlicloudInstances to obtain the latest instance type list.
property internetChargeType
internetChargeType?: pulumi.Input<string>;Internet bandwidth billing method. Optional values: PayByTraffic.
property internetMaxBandwidthIn
internetMaxBandwidthIn?: pulumi.Input<number>;The maximum inbound bandwidth from the Internet network, measured in Mbit/s. Value range: [1, 200].
property internetMaxBandwidthOut
internetMaxBandwidthOut?: pulumi.Input<number>;Maximum outbound bandwidth from the Internet, its unit of measurement is Mbit/s. Value range: [0, 100].
property ioOptimized
ioOptimized?: pulumi.Input<string>;Whether it is an I/O-optimized instance or not. Optional values: - none - optimized
property keyPairName
keyPairName?: pulumi.Input<string>;The name of the key pair. - Ignore this parameter for Windows instances. It is null by default. Even if you enter this parameter, only the Password content is used. - The password logon method for Linux instances is set to forbidden upon initialization.
property name
name?: pulumi.Input<string>;The name of the data disk.
property networkInterfaces
networkInterfaces?: pulumi.Input<LaunchTemplateNetworkInterfaces>;The list of network interfaces created with instance.
property networkType
networkType?: pulumi.Input<string>;Network type of the instance. Value options: Classic | VPC.
property ramRoleName
ramRoleName?: pulumi.Input<string>;The RAM role name of the instance. You can use the RAM API ListRoles to query instance RAM role names.
property resourceGroupId
resourceGroupId?: pulumi.Input<string>;property securityEnhancementStrategy
securityEnhancementStrategy?: pulumi.Input<string>;Whether or not to activate the security enhancement feature and install network security software free of charge. Optional values: Active | Deactive.
property securityGroupId
securityGroupId?: pulumi.Input<string>;The security group ID must be one in the same VPC.
property spotPriceLimit
spotPriceLimit?: pulumi.Input<number>;-(Optional) Sets the maximum hourly instance price. Supports up to three decimal places.
property spotStrategy
spotStrategy?: pulumi.Input<string>;The spot strategy for a Pay-As-You-Go instance. This parameter is valid and required only when InstanceChargeType is set to PostPaid. Value range: - NoSpot: Normal Pay-As-You-Go instance. - SpotWithPriceLimit: Sets the maximum price for a spot instance. - SpotAsPriceGo: The system automatically calculates the price. The maximum value is the Pay-As-You-Go price.
property systemDiskCategory
systemDiskCategory?: pulumi.Input<string>;The category of the system disk. System disk type. Optional values: - cloud: Basic cloud disk. - cloud_efficiency: Ultra cloud disk. - cloud_ssd: SSD cloud Disks. - ephemeral_ssd: local SSD Disks - cloud_essd: ESSD cloud Disks.
property systemDiskDescription
systemDiskDescription?: pulumi.Input<string>;System disk description. It cannot begin with http:// or https://.
property systemDiskName
systemDiskName?: pulumi.Input<string>;System disk name. The name is a string of 2 to 128 characters. It must begin with an English or a Chinese character. It can contain A-Z, a-z, Chinese characters, numbers, periods (.), colons (:), underscores (_), and hyphens (-).
property systemDiskSize
systemDiskSize?: pulumi.Input<number>;Size of the system disk, measured in GB. Value range: [20, 500].
property tags
tags?: pulumi.Input<{[key: string]: any}>;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.
property userdata
userdata?: pulumi.Input<string>;User data of the instance, which is Base64-encoded. Size of the raw data cannot exceed 16 KB.
property vpcId
vpcId?: pulumi.Input<string>;property vswitchId
vswitchId?: pulumi.Input<string>;The VSwitch ID for ENI. The instance must be in the same zone of the same VPC network as the ENI, but they may belong to different VSwitches.
property zoneId
zoneId?: pulumi.Input<string>;The zone ID of the instance.
interface ReservedInstanceArgs
interface ReservedInstanceArgsThe set of arguments for constructing a ReservedInstance resource.
property description
description?: pulumi.Input<string>;Description of the RI. 2 to 256 English or Chinese characters. It cannot start with http:// or https://.
property instanceAmount
instanceAmount?: pulumi.Input<number>;Number of instances allocated to an RI (An RI is a coupon that includes one or more allocated instances.).
property instanceType
instanceType: pulumi.Input<string>;Instance type of the RI. For more information, see Instance type families.
property name
name?: pulumi.Input<string>;Name of the RI. The name must be a string of 2 to 128 characters in length and can contain letters, numbers, colons (:), underscores (_), and hyphens. It must start with a letter. It cannot start with http:// or https://.
property offeringType
offeringType?: pulumi.Input<string>;Payment type of the RI. Optional values: No Upfront: No upfront payment is required., Partial Upfront: A portion of upfront payment is required.All Upfront: Full upfront payment is required.
property period
period?: pulumi.Input<number>;property periodUnit
periodUnit?: pulumi.Input<string>;Term unit. Optional value: Year.
property platform
platform?: pulumi.Input<string>;The operating system type of the image used by the instance. Optional values: Windows, Linux. Default is Linux.
property resourceGroupId
resourceGroupId?: pulumi.Input<string>;Resource group ID.
property scope
scope?: pulumi.Input<string>;Scope of the RI. Optional values: Region: region-level, Zone: zone-level. Default is Region.
property zoneId
zoneId?: pulumi.Input<string>;ID of the zone to which the RI belongs. When Scope is set to Zone, this parameter is required. For information about the zone list, see DescribeZones.
interface ReservedInstanceState
interface ReservedInstanceStateInput properties used for looking up and filtering ReservedInstance resources.
property description
description?: pulumi.Input<string>;Description of the RI. 2 to 256 English or Chinese characters. It cannot start with http:// or https://.
property instanceAmount
instanceAmount?: pulumi.Input<number>;Number of instances allocated to an RI (An RI is a coupon that includes one or more allocated instances.).
property instanceType
instanceType?: pulumi.Input<string>;Instance type of the RI. For more information, see Instance type families.
property name
name?: pulumi.Input<string>;Name of the RI. The name must be a string of 2 to 128 characters in length and can contain letters, numbers, colons (:), underscores (_), and hyphens. It must start with a letter. It cannot start with http:// or https://.
property offeringType
offeringType?: pulumi.Input<string>;Payment type of the RI. Optional values: No Upfront: No upfront payment is required., Partial Upfront: A portion of upfront payment is required.All Upfront: Full upfront payment is required.
property period
period?: pulumi.Input<number>;property periodUnit
periodUnit?: pulumi.Input<string>;Term unit. Optional value: Year.
property platform
platform?: pulumi.Input<string>;The operating system type of the image used by the instance. Optional values: Windows, Linux. Default is Linux.
property resourceGroupId
resourceGroupId?: pulumi.Input<string>;Resource group ID.
property scope
scope?: pulumi.Input<string>;Scope of the RI. Optional values: Region: region-level, Zone: zone-level. Default is Region.
property zoneId
zoneId?: pulumi.Input<string>;ID of the zone to which the RI belongs. When Scope is set to Zone, this parameter is required. For information about the zone list, see DescribeZones.
interface SecurityGroupArgs
interface SecurityGroupArgsThe set of arguments for constructing a SecurityGroup resource.
property description
description?: pulumi.Input<string>;The security group description. Defaults to null.
property innerAccess
innerAccess?: pulumi.Input<boolean>;Field ‘inner_access’ has been deprecated from provider version 1.55.3. Use ‘inner_access_policy’ replaces it.
property innerAccessPolicy
innerAccessPolicy?: pulumi.Input<string>;Whether to allow both machines to access each other on all ports in the same security group. Valid values: [“Accept”, “Drop”]
property name
name?: pulumi.Input<string>;The name of the security group. Defaults to null.
property resourceGroupId
resourceGroupId?: pulumi.Input<string>;The Id of resource group which the securityGroup belongs.
property securityGroupType
securityGroupType?: pulumi.Input<string>;The type of the security group. Valid values:
normal: basic security group.
enterprise: advanced security group For more information.
property tags
tags?: pulumi.Input<{[key: string]: any}>;A mapping of tags to assign to the resource.
property vpcId
vpcId?: pulumi.Input<string>;The VPC ID.
interface SecurityGroupRuleArgs
interface SecurityGroupRuleArgsThe set of arguments for constructing a SecurityGroupRule resource.
property cidrIp
cidrIp?: pulumi.Input<string>;The target IP address range. The default value is 0.0.0.0/0 (which means no restriction will be applied). Other supported formats include 10.159.6.18/12. Only IPv4 is supported.
property description
description?: pulumi.Input<string>;The description of the security group rule. The description can be up to 1 to 512 characters in length. Defaults to null.
property ipProtocol
ipProtocol: pulumi.Input<string>;The protocol. Can be tcp, udp, icmp, gre or all.
property nicType
nicType?: pulumi.Input<string>;Network type, can be either internet or intranet, the default value is internet.
property policy
policy?: pulumi.Input<string>;Authorization policy, can be either accept or drop, the default value is accept.
property portRange
portRange?: pulumi.Input<string>;The range of port numbers relevant to the IP protocol. Default to “-1/-1”. When the protocol is tcp or udp, each side port number range from 1 to 65535 and ‘-1/-1’ will be invalid.
For example, 1/200 means that the range of the port numbers is 1-200. Other protocols’ ‘port_range’ can only be “-1/-1”, and other values will be invalid.
property priority
priority?: pulumi.Input<number>;Authorization policy priority, with parameter values: 1-100, default value: 1.
property securityGroupId
securityGroupId: pulumi.Input<string>;The security group to apply this rule to.
property sourceGroupOwnerAccount
sourceGroupOwnerAccount?: pulumi.Input<string>;The Alibaba Cloud user account Id of the target security group when security groups are authorized across accounts. This parameter is invalid if cidrIp has already been set.
property sourceSecurityGroupId
sourceSecurityGroupId?: pulumi.Input<string>;The target security group ID within the same region. If this field is specified, the nicType can only select intranet.
property type
type: pulumi.Input<string>;The type of rule being created. Valid options are ingress (inbound) or egress (outbound).
interface SecurityGroupRuleState
interface SecurityGroupRuleStateInput properties used for looking up and filtering SecurityGroupRule resources.
property cidrIp
cidrIp?: pulumi.Input<string>;The target IP address range. The default value is 0.0.0.0/0 (which means no restriction will be applied). Other supported formats include 10.159.6.18/12. Only IPv4 is supported.
property description
description?: pulumi.Input<string>;The description of the security group rule. The description can be up to 1 to 512 characters in length. Defaults to null.
property ipProtocol
ipProtocol?: pulumi.Input<string>;The protocol. Can be tcp, udp, icmp, gre or all.
property nicType
nicType?: pulumi.Input<string>;Network type, can be either internet or intranet, the default value is internet.
property policy
policy?: pulumi.Input<string>;Authorization policy, can be either accept or drop, the default value is accept.
property portRange
portRange?: pulumi.Input<string>;The range of port numbers relevant to the IP protocol. Default to “-1/-1”. When the protocol is tcp or udp, each side port number range from 1 to 65535 and ‘-1/-1’ will be invalid.
For example, 1/200 means that the range of the port numbers is 1-200. Other protocols’ ‘port_range’ can only be “-1/-1”, and other values will be invalid.
property priority
priority?: pulumi.Input<number>;Authorization policy priority, with parameter values: 1-100, default value: 1.
property securityGroupId
securityGroupId?: pulumi.Input<string>;The security group to apply this rule to.
property sourceGroupOwnerAccount
sourceGroupOwnerAccount?: pulumi.Input<string>;The Alibaba Cloud user account Id of the target security group when security groups are authorized across accounts. This parameter is invalid if cidrIp has already been set.
property sourceSecurityGroupId
sourceSecurityGroupId?: pulumi.Input<string>;The target security group ID within the same region. If this field is specified, the nicType can only select intranet.
property type
type?: pulumi.Input<string>;The type of rule being created. Valid options are ingress (inbound) or egress (outbound).
interface SecurityGroupState
interface SecurityGroupStateInput properties used for looking up and filtering SecurityGroup resources.
property description
description?: pulumi.Input<string>;The security group description. Defaults to null.
property innerAccess
innerAccess?: pulumi.Input<boolean>;Field ‘inner_access’ has been deprecated from provider version 1.55.3. Use ‘inner_access_policy’ replaces it.
property innerAccessPolicy
innerAccessPolicy?: pulumi.Input<string>;Whether to allow both machines to access each other on all ports in the same security group. Valid values: [“Accept”, “Drop”]
property name
name?: pulumi.Input<string>;The name of the security group. Defaults to null.
property resourceGroupId
resourceGroupId?: pulumi.Input<string>;The Id of resource group which the securityGroup belongs.
property securityGroupType
securityGroupType?: pulumi.Input<string>;The type of the security group. Valid values:
normal: basic security group.
enterprise: advanced security group For more information.
property tags
tags?: pulumi.Input<{[key: string]: any}>;A mapping of tags to assign to the resource.
property vpcId
vpcId?: pulumi.Input<string>;The VPC ID.
interface SnapshotArgs
interface SnapshotArgsThe set of arguments for constructing a Snapshot resource.
property description
description?: pulumi.Input<string>;Description of the snapshot. This description can have a string of 2 to 256 characters, It cannot begin with http:// or https://. Default value is null.
property diskId
diskId: pulumi.Input<string>;The source disk ID.
property name
name?: pulumi.Input<string>;Name of the snapshot. This name can have a string of 2 to 128 characters, must contain only alphanumeric characters or hyphens, such as “-”, “.”, “_“, and must not begin or end with a hyphen, and must not begin with http:// or https://. Default value is null.
property tags
tags?: pulumi.Input<{[key: string]: any}>;A mapping of tags to assign to the resource.
interface SnapshotPolicyArgs
interface SnapshotPolicyArgsThe set of arguments for constructing a SnapshotPolicy resource.
property name
name?: pulumi.Input<string>;The snapshot policy name.
property repeatWeekdays
repeatWeekdays: pulumi.Input<pulumi.Input<string>[]>;The automatic snapshot repetition dates. The unit of measurement is day and the repeating cycle is a week. Value range: [1, 7], which represents days starting from Monday to Sunday, for example 1 indicates Monday. When you want to schedule multiple automatic snapshot tasks for a disk in a week, you can set the RepeatWeekdays to an array. - A maximum of seven time points can be selected. - The format is an JSON array of [“1”, “2”, … “7”] and the time points are separated by commas (,).
property retentionDays
retentionDays: pulumi.Input<number>;The snapshot retention time, and the unit of measurement is day. Optional values: - -1: The automatic snapshots are retained permanently. - [1, 65536]: The number of days retained.
property timePoints
timePoints: pulumi.Input<pulumi.Input<string>[]>;The automatic snapshot creation schedule, and the unit of measurement is hour. Value range: [0, 23], which represents from 00:00 to 24:00, for example 1 indicates 01:00. When you want to schedule multiple automatic snapshot tasks for a disk in a day, you can set the TimePoints to an array. - A maximum of 24 time points can be selected. - The format is an JSON array of [“0”, “1”, … “23”] and the time points are separated by commas (,).
interface SnapshotPolicyState
interface SnapshotPolicyStateInput properties used for looking up and filtering SnapshotPolicy resources.
property name
name?: pulumi.Input<string>;The snapshot policy name.
property repeatWeekdays
repeatWeekdays?: pulumi.Input<pulumi.Input<string>[]>;The automatic snapshot repetition dates. The unit of measurement is day and the repeating cycle is a week. Value range: [1, 7], which represents days starting from Monday to Sunday, for example 1 indicates Monday. When you want to schedule multiple automatic snapshot tasks for a disk in a week, you can set the RepeatWeekdays to an array. - A maximum of seven time points can be selected. - The format is an JSON array of [“1”, “2”, … “7”] and the time points are separated by commas (,).
property retentionDays
retentionDays?: pulumi.Input<number>;The snapshot retention time, and the unit of measurement is day. Optional values: - -1: The automatic snapshots are retained permanently. - [1, 65536]: The number of days retained.
property timePoints
timePoints?: pulumi.Input<pulumi.Input<string>[]>;The automatic snapshot creation schedule, and the unit of measurement is hour. Value range: [0, 23], which represents from 00:00 to 24:00, for example 1 indicates 01:00. When you want to schedule multiple automatic snapshot tasks for a disk in a day, you can set the TimePoints to an array. - A maximum of 24 time points can be selected. - The format is an JSON array of [“0”, “1”, … “23”] and the time points are separated by commas (,).
interface SnapshotState
interface SnapshotStateInput properties used for looking up and filtering Snapshot resources.
property description
description?: pulumi.Input<string>;Description of the snapshot. This description can have a string of 2 to 256 characters, It cannot begin with http:// or https://. Default value is null.
property diskId
diskId?: pulumi.Input<string>;The source disk ID.
property name
name?: pulumi.Input<string>;Name of the snapshot. This name can have a string of 2 to 128 characters, must contain only alphanumeric characters or hyphens, such as “-”, “.”, “_“, and must not begin or end with a hyphen, and must not begin with http:// or https://. Default value is null.
property tags
tags?: pulumi.Input<{[key: string]: any}>;A mapping of tags to assign to the resource.