ens

package
v3.54.0 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Apr 24, 2024 License: Apache-2.0 Imports: 7 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type Disk added in v3.45.0

type Disk struct {
	pulumi.CustomResourceState

	// Types of disk instancesValues: cloudEfficiency (high-efficiency cloud disk),cloud_ssd (full Flash cloud disk),local_hdd (local HDD),local_ssd (local ssd).
	Category pulumi.StringOutput `pulumi:"category"`
	// Disk instance creation time.
	CreateTime pulumi.StringOutput `pulumi:"createTime"`
	// Name of the disk instance.
	DiskName pulumi.StringPtrOutput `pulumi:"diskName"`
	// Indicates whether the cloud disk is Encrypted. If Encrypted = true, the default service key is used when KMSKeyId is not entered. Value range:`true`, `false`(default).
	Encrypted pulumi.BoolPtrOutput `pulumi:"encrypted"`
	// Ens node IDExample value: cn-chengdu-telecom.
	EnsRegionId pulumi.StringOutput `pulumi:"ensRegionId"`
	// The ID of the KMS key used by the cloud disk. If Encrypted is set to true, the service default key is used when KMSKeyId is empty.
	KmsKeyId pulumi.StringOutput `pulumi:"kmsKeyId"`
	// Billing type of the disk instanceValue: PayAsYouGo.
	PaymentType pulumi.StringOutput `pulumi:"paymentType"`
	// The size of the disk instance. Unit: GiB.
	Size pulumi.IntPtrOutput `pulumi:"size"`
	// The ID of the snapshot used to create the cloud disk.
	//
	// The SnapshotId and Size parameters have the following limitations:
	// - If the snapshot capacity corresponding to the **SnapshotId** parameter is greater than the specified **Size** parameter, the Size of the cloud disk created is the Size of the specified snapshot.
	// - If the snapshot capacity corresponding to the **SnapshotId** parameter is less than the set **Size** parameter value, the Size of the cloud disk created is the specified **Size** parameter value.
	SnapshotId pulumi.StringPtrOutput `pulumi:"snapshotId"`
	// Status of the disk instance:Value:In-use: In useAvailable: To be mountedAttaching: AttachingDetaching: uninstallingCreating: CreatingReIniting: Resetting.
	Status pulumi.StringOutput `pulumi:"status"`
}

Provides a ENS Disk resource. The disk. When you use it for the first time, please contact the product classmates to add a resource whitelist.

For information about ENS Disk and how to use it, see [What is Disk](https://www.alibabacloud.com/help/en/ens/developer-reference/api-createdisk).

> **NOTE:** Available since v1.213.0.

## Example Usage

Basic Usage

```go package main

import (

"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/ens"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		cfg := config.New(ctx, "")
		name := "terraform-example"
		if param := cfg.Get("name"); param != "" {
			name = param
		}
		_, err := ens.NewDisk(ctx, "default", &ens.DiskArgs{
			Category:    pulumi.String("cloud_ssd"),
			Size:        pulumi.Int(20),
			PaymentType: pulumi.String("PayAsYouGo"),
			EnsRegionId: pulumi.String("cn-chongqing-11"),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

ENS Disk can be imported using the id, e.g.

```sh $ pulumi import alicloud:ens/disk:Disk example <id> ```

func GetDisk added in v3.45.0

func GetDisk(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *DiskState, opts ...pulumi.ResourceOption) (*Disk, error)

GetDisk gets an existing Disk resource's state with the given name, ID, and optional state properties that are used to uniquely qualify the lookup (nil if not required).

func NewDisk added in v3.45.0

func NewDisk(ctx *pulumi.Context,
	name string, args *DiskArgs, opts ...pulumi.ResourceOption) (*Disk, error)

NewDisk registers a new resource with the given unique name, arguments, and options.

func (*Disk) ElementType added in v3.45.0

func (*Disk) ElementType() reflect.Type

func (*Disk) ToDiskOutput added in v3.45.0

func (i *Disk) ToDiskOutput() DiskOutput

func (*Disk) ToDiskOutputWithContext added in v3.45.0

func (i *Disk) ToDiskOutputWithContext(ctx context.Context) DiskOutput

type DiskArgs added in v3.45.0

type DiskArgs struct {
	// Types of disk instancesValues: cloudEfficiency (high-efficiency cloud disk),cloud_ssd (full Flash cloud disk),local_hdd (local HDD),local_ssd (local ssd).
	Category pulumi.StringInput
	// Name of the disk instance.
	DiskName pulumi.StringPtrInput
	// Indicates whether the cloud disk is Encrypted. If Encrypted = true, the default service key is used when KMSKeyId is not entered. Value range:`true`, `false`(default).
	Encrypted pulumi.BoolPtrInput
	// Ens node IDExample value: cn-chengdu-telecom.
	EnsRegionId pulumi.StringInput
	// The ID of the KMS key used by the cloud disk. If Encrypted is set to true, the service default key is used when KMSKeyId is empty.
	KmsKeyId pulumi.StringPtrInput
	// Billing type of the disk instanceValue: PayAsYouGo.
	PaymentType pulumi.StringInput
	// The size of the disk instance. Unit: GiB.
	Size pulumi.IntPtrInput
	// The ID of the snapshot used to create the cloud disk.
	//
	// The SnapshotId and Size parameters have the following limitations:
	// - If the snapshot capacity corresponding to the **SnapshotId** parameter is greater than the specified **Size** parameter, the Size of the cloud disk created is the Size of the specified snapshot.
	// - If the snapshot capacity corresponding to the **SnapshotId** parameter is less than the set **Size** parameter value, the Size of the cloud disk created is the specified **Size** parameter value.
	SnapshotId pulumi.StringPtrInput
}

The set of arguments for constructing a Disk resource.

func (DiskArgs) ElementType added in v3.45.0

func (DiskArgs) ElementType() reflect.Type

type DiskArray added in v3.45.0

type DiskArray []DiskInput

func (DiskArray) ElementType added in v3.45.0

func (DiskArray) ElementType() reflect.Type

func (DiskArray) ToDiskArrayOutput added in v3.45.0

func (i DiskArray) ToDiskArrayOutput() DiskArrayOutput

func (DiskArray) ToDiskArrayOutputWithContext added in v3.45.0

func (i DiskArray) ToDiskArrayOutputWithContext(ctx context.Context) DiskArrayOutput

type DiskArrayInput added in v3.45.0

type DiskArrayInput interface {
	pulumi.Input

	ToDiskArrayOutput() DiskArrayOutput
	ToDiskArrayOutputWithContext(context.Context) DiskArrayOutput
}

DiskArrayInput is an input type that accepts DiskArray and DiskArrayOutput values. You can construct a concrete instance of `DiskArrayInput` via:

DiskArray{ DiskArgs{...} }

type DiskArrayOutput added in v3.45.0

type DiskArrayOutput struct{ *pulumi.OutputState }

func (DiskArrayOutput) ElementType added in v3.45.0

func (DiskArrayOutput) ElementType() reflect.Type

func (DiskArrayOutput) Index added in v3.45.0

func (DiskArrayOutput) ToDiskArrayOutput added in v3.45.0

func (o DiskArrayOutput) ToDiskArrayOutput() DiskArrayOutput

func (DiskArrayOutput) ToDiskArrayOutputWithContext added in v3.45.0

func (o DiskArrayOutput) ToDiskArrayOutputWithContext(ctx context.Context) DiskArrayOutput

type DiskInput added in v3.45.0

type DiskInput interface {
	pulumi.Input

	ToDiskOutput() DiskOutput
	ToDiskOutputWithContext(ctx context.Context) DiskOutput
}

type DiskInstanceAttachment added in v3.48.0

type DiskInstanceAttachment struct {
	pulumi.CustomResourceState

	// Whether the cloud disk to be mounted is released with the instance  Value: true: When the instance is released, the cloud disk is released together with the instance. false: When the instance is released, the cloud disk is retained and is not released together with the instance. Empty means false by default.
	DeleteWithInstance pulumi.StringPtrOutput `pulumi:"deleteWithInstance"`
	// The ID of the cloud disk to be mounted. The Cloud Disk (DiskId) and the instance (InstanceId) must be on the same node.
	DiskId pulumi.StringOutput `pulumi:"diskId"`
	// Instance ID.
	InstanceId pulumi.StringOutput `pulumi:"instanceId"`
}

Provides a ENS Disk Instance Attachment resource. Disk instance mount.

For information about ENS Disk Instance Attachment and how to use it, see [What is Disk Instance Attachment](https://www.alibabacloud.com/help/en/).

> **NOTE:** Available since v1.216.0.

## Example Usage

Basic Usage

```go package main

import (

"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/ens"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		cfg := config.New(ctx, "")
		name := "terraform-example"
		if param := cfg.Get("name"); param != "" {
			name = param
		}
		_, err := ens.NewDisk(ctx, "default", &ens.DiskArgs{
			Size:        pulumi.Int(20),
			EnsRegionId: pulumi.String("cn-chenzhou-telecom_unicom_cmcc"),
			PaymentType: pulumi.String("PayAsYouGo"),
			Category:    pulumi.String("cloud_efficiency"),
		})
		if err != nil {
			return err
		}
		defaultInstance, err := ens.NewInstance(ctx, "default", &ens.InstanceArgs{
			SystemDisk: &ens.InstanceSystemDiskArgs{
				Size: pulumi.Int(20),
			},
			ImageId:                 pulumi.String("centos_6_08_64_20G_alibase_20171208"),
			PaymentType:             pulumi.String("Subscription"),
			InstanceType:            pulumi.String("ens.sn1.stiny"),
			Password:                pulumi.String("12345678ABCabc"),
			Amount:                  pulumi.Int(1),
			InternetMaxBandwidthOut: pulumi.Int(10),
			UniqueSuffix:            pulumi.Bool(true),
			PublicIpIdentification:  pulumi.Bool(true),
			EnsRegionId:             pulumi.String("cn-chenzhou-telecom_unicom_cmcc"),
			ScheduleAreaLevel:       pulumi.String("Region"),
			PeriodUnit:              pulumi.String("Month"),
			Period:                  pulumi.Int(1),
		})
		if err != nil {
			return err
		}
		_, err = ens.NewDiskInstanceAttachment(ctx, "default", &ens.DiskInstanceAttachmentArgs{
			InstanceId:         defaultInstance.ID(),
			DeleteWithInstance: pulumi.String("false"),
			DiskId:             _default.ID(),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

ENS Disk Instance Attachment can be imported using the id, e.g.

```sh $ pulumi import alicloud:ens/diskInstanceAttachment:DiskInstanceAttachment example <disk_id>:<instance_id> ```

func GetDiskInstanceAttachment added in v3.48.0

func GetDiskInstanceAttachment(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *DiskInstanceAttachmentState, opts ...pulumi.ResourceOption) (*DiskInstanceAttachment, error)

GetDiskInstanceAttachment gets an existing DiskInstanceAttachment resource's state with the given name, ID, and optional state properties that are used to uniquely qualify the lookup (nil if not required).

func NewDiskInstanceAttachment added in v3.48.0

func NewDiskInstanceAttachment(ctx *pulumi.Context,
	name string, args *DiskInstanceAttachmentArgs, opts ...pulumi.ResourceOption) (*DiskInstanceAttachment, error)

NewDiskInstanceAttachment registers a new resource with the given unique name, arguments, and options.

func (*DiskInstanceAttachment) ElementType added in v3.48.0

func (*DiskInstanceAttachment) ElementType() reflect.Type

func (*DiskInstanceAttachment) ToDiskInstanceAttachmentOutput added in v3.48.0

func (i *DiskInstanceAttachment) ToDiskInstanceAttachmentOutput() DiskInstanceAttachmentOutput

func (*DiskInstanceAttachment) ToDiskInstanceAttachmentOutputWithContext added in v3.48.0

func (i *DiskInstanceAttachment) ToDiskInstanceAttachmentOutputWithContext(ctx context.Context) DiskInstanceAttachmentOutput

type DiskInstanceAttachmentArgs added in v3.48.0

type DiskInstanceAttachmentArgs struct {
	// Whether the cloud disk to be mounted is released with the instance  Value: true: When the instance is released, the cloud disk is released together with the instance. false: When the instance is released, the cloud disk is retained and is not released together with the instance. Empty means false by default.
	DeleteWithInstance pulumi.StringPtrInput
	// The ID of the cloud disk to be mounted. The Cloud Disk (DiskId) and the instance (InstanceId) must be on the same node.
	DiskId pulumi.StringInput
	// Instance ID.
	InstanceId pulumi.StringInput
}

The set of arguments for constructing a DiskInstanceAttachment resource.

func (DiskInstanceAttachmentArgs) ElementType added in v3.48.0

func (DiskInstanceAttachmentArgs) ElementType() reflect.Type

type DiskInstanceAttachmentArray added in v3.48.0

type DiskInstanceAttachmentArray []DiskInstanceAttachmentInput

func (DiskInstanceAttachmentArray) ElementType added in v3.48.0

func (DiskInstanceAttachmentArray) ToDiskInstanceAttachmentArrayOutput added in v3.48.0

func (i DiskInstanceAttachmentArray) ToDiskInstanceAttachmentArrayOutput() DiskInstanceAttachmentArrayOutput

func (DiskInstanceAttachmentArray) ToDiskInstanceAttachmentArrayOutputWithContext added in v3.48.0

func (i DiskInstanceAttachmentArray) ToDiskInstanceAttachmentArrayOutputWithContext(ctx context.Context) DiskInstanceAttachmentArrayOutput

type DiskInstanceAttachmentArrayInput added in v3.48.0

type DiskInstanceAttachmentArrayInput interface {
	pulumi.Input

	ToDiskInstanceAttachmentArrayOutput() DiskInstanceAttachmentArrayOutput
	ToDiskInstanceAttachmentArrayOutputWithContext(context.Context) DiskInstanceAttachmentArrayOutput
}

DiskInstanceAttachmentArrayInput is an input type that accepts DiskInstanceAttachmentArray and DiskInstanceAttachmentArrayOutput values. You can construct a concrete instance of `DiskInstanceAttachmentArrayInput` via:

DiskInstanceAttachmentArray{ DiskInstanceAttachmentArgs{...} }

type DiskInstanceAttachmentArrayOutput added in v3.48.0

type DiskInstanceAttachmentArrayOutput struct{ *pulumi.OutputState }

func (DiskInstanceAttachmentArrayOutput) ElementType added in v3.48.0

func (DiskInstanceAttachmentArrayOutput) Index added in v3.48.0

func (DiskInstanceAttachmentArrayOutput) ToDiskInstanceAttachmentArrayOutput added in v3.48.0

func (o DiskInstanceAttachmentArrayOutput) ToDiskInstanceAttachmentArrayOutput() DiskInstanceAttachmentArrayOutput

func (DiskInstanceAttachmentArrayOutput) ToDiskInstanceAttachmentArrayOutputWithContext added in v3.48.0

func (o DiskInstanceAttachmentArrayOutput) ToDiskInstanceAttachmentArrayOutputWithContext(ctx context.Context) DiskInstanceAttachmentArrayOutput

type DiskInstanceAttachmentInput added in v3.48.0

type DiskInstanceAttachmentInput interface {
	pulumi.Input

	ToDiskInstanceAttachmentOutput() DiskInstanceAttachmentOutput
	ToDiskInstanceAttachmentOutputWithContext(ctx context.Context) DiskInstanceAttachmentOutput
}

type DiskInstanceAttachmentMap added in v3.48.0

type DiskInstanceAttachmentMap map[string]DiskInstanceAttachmentInput

func (DiskInstanceAttachmentMap) ElementType added in v3.48.0

func (DiskInstanceAttachmentMap) ElementType() reflect.Type

func (DiskInstanceAttachmentMap) ToDiskInstanceAttachmentMapOutput added in v3.48.0

func (i DiskInstanceAttachmentMap) ToDiskInstanceAttachmentMapOutput() DiskInstanceAttachmentMapOutput

func (DiskInstanceAttachmentMap) ToDiskInstanceAttachmentMapOutputWithContext added in v3.48.0

func (i DiskInstanceAttachmentMap) ToDiskInstanceAttachmentMapOutputWithContext(ctx context.Context) DiskInstanceAttachmentMapOutput

type DiskInstanceAttachmentMapInput added in v3.48.0

type DiskInstanceAttachmentMapInput interface {
	pulumi.Input

	ToDiskInstanceAttachmentMapOutput() DiskInstanceAttachmentMapOutput
	ToDiskInstanceAttachmentMapOutputWithContext(context.Context) DiskInstanceAttachmentMapOutput
}

DiskInstanceAttachmentMapInput is an input type that accepts DiskInstanceAttachmentMap and DiskInstanceAttachmentMapOutput values. You can construct a concrete instance of `DiskInstanceAttachmentMapInput` via:

DiskInstanceAttachmentMap{ "key": DiskInstanceAttachmentArgs{...} }

type DiskInstanceAttachmentMapOutput added in v3.48.0

type DiskInstanceAttachmentMapOutput struct{ *pulumi.OutputState }

func (DiskInstanceAttachmentMapOutput) ElementType added in v3.48.0

func (DiskInstanceAttachmentMapOutput) MapIndex added in v3.48.0

func (DiskInstanceAttachmentMapOutput) ToDiskInstanceAttachmentMapOutput added in v3.48.0

func (o DiskInstanceAttachmentMapOutput) ToDiskInstanceAttachmentMapOutput() DiskInstanceAttachmentMapOutput

func (DiskInstanceAttachmentMapOutput) ToDiskInstanceAttachmentMapOutputWithContext added in v3.48.0

func (o DiskInstanceAttachmentMapOutput) ToDiskInstanceAttachmentMapOutputWithContext(ctx context.Context) DiskInstanceAttachmentMapOutput

type DiskInstanceAttachmentOutput added in v3.48.0

type DiskInstanceAttachmentOutput struct{ *pulumi.OutputState }

func (DiskInstanceAttachmentOutput) DeleteWithInstance added in v3.48.0

func (o DiskInstanceAttachmentOutput) DeleteWithInstance() pulumi.StringPtrOutput

Whether the cloud disk to be mounted is released with the instance Value: true: When the instance is released, the cloud disk is released together with the instance. false: When the instance is released, the cloud disk is retained and is not released together with the instance. Empty means false by default.

func (DiskInstanceAttachmentOutput) DiskId added in v3.48.0

The ID of the cloud disk to be mounted. The Cloud Disk (DiskId) and the instance (InstanceId) must be on the same node.

func (DiskInstanceAttachmentOutput) ElementType added in v3.48.0

func (DiskInstanceAttachmentOutput) InstanceId added in v3.48.0

Instance ID.

func (DiskInstanceAttachmentOutput) ToDiskInstanceAttachmentOutput added in v3.48.0

func (o DiskInstanceAttachmentOutput) ToDiskInstanceAttachmentOutput() DiskInstanceAttachmentOutput

func (DiskInstanceAttachmentOutput) ToDiskInstanceAttachmentOutputWithContext added in v3.48.0

func (o DiskInstanceAttachmentOutput) ToDiskInstanceAttachmentOutputWithContext(ctx context.Context) DiskInstanceAttachmentOutput

type DiskInstanceAttachmentState added in v3.48.0

type DiskInstanceAttachmentState struct {
	// Whether the cloud disk to be mounted is released with the instance  Value: true: When the instance is released, the cloud disk is released together with the instance. false: When the instance is released, the cloud disk is retained and is not released together with the instance. Empty means false by default.
	DeleteWithInstance pulumi.StringPtrInput
	// The ID of the cloud disk to be mounted. The Cloud Disk (DiskId) and the instance (InstanceId) must be on the same node.
	DiskId pulumi.StringPtrInput
	// Instance ID.
	InstanceId pulumi.StringPtrInput
}

func (DiskInstanceAttachmentState) ElementType added in v3.48.0

type DiskMap added in v3.45.0

type DiskMap map[string]DiskInput

func (DiskMap) ElementType added in v3.45.0

func (DiskMap) ElementType() reflect.Type

func (DiskMap) ToDiskMapOutput added in v3.45.0

func (i DiskMap) ToDiskMapOutput() DiskMapOutput

func (DiskMap) ToDiskMapOutputWithContext added in v3.45.0

func (i DiskMap) ToDiskMapOutputWithContext(ctx context.Context) DiskMapOutput

type DiskMapInput added in v3.45.0

type DiskMapInput interface {
	pulumi.Input

	ToDiskMapOutput() DiskMapOutput
	ToDiskMapOutputWithContext(context.Context) DiskMapOutput
}

DiskMapInput is an input type that accepts DiskMap and DiskMapOutput values. You can construct a concrete instance of `DiskMapInput` via:

DiskMap{ "key": DiskArgs{...} }

type DiskMapOutput added in v3.45.0

type DiskMapOutput struct{ *pulumi.OutputState }

func (DiskMapOutput) ElementType added in v3.45.0

func (DiskMapOutput) ElementType() reflect.Type

func (DiskMapOutput) MapIndex added in v3.45.0

func (DiskMapOutput) ToDiskMapOutput added in v3.45.0

func (o DiskMapOutput) ToDiskMapOutput() DiskMapOutput

func (DiskMapOutput) ToDiskMapOutputWithContext added in v3.45.0

func (o DiskMapOutput) ToDiskMapOutputWithContext(ctx context.Context) DiskMapOutput

type DiskOutput added in v3.45.0

type DiskOutput struct{ *pulumi.OutputState }

func (DiskOutput) Category added in v3.45.0

func (o DiskOutput) Category() pulumi.StringOutput

Types of disk instancesValues: cloudEfficiency (high-efficiency cloud disk),cloud_ssd (full Flash cloud disk),local_hdd (local HDD),local_ssd (local ssd).

func (DiskOutput) CreateTime added in v3.45.0

func (o DiskOutput) CreateTime() pulumi.StringOutput

Disk instance creation time.

func (DiskOutput) DiskName added in v3.45.0

func (o DiskOutput) DiskName() pulumi.StringPtrOutput

Name of the disk instance.

func (DiskOutput) ElementType added in v3.45.0

func (DiskOutput) ElementType() reflect.Type

func (DiskOutput) Encrypted added in v3.45.0

func (o DiskOutput) Encrypted() pulumi.BoolPtrOutput

Indicates whether the cloud disk is Encrypted. If Encrypted = true, the default service key is used when KMSKeyId is not entered. Value range:`true`, `false`(default).

func (DiskOutput) EnsRegionId added in v3.45.0

func (o DiskOutput) EnsRegionId() pulumi.StringOutput

Ens node IDExample value: cn-chengdu-telecom.

func (DiskOutput) KmsKeyId added in v3.45.0

func (o DiskOutput) KmsKeyId() pulumi.StringOutput

The ID of the KMS key used by the cloud disk. If Encrypted is set to true, the service default key is used when KMSKeyId is empty.

func (DiskOutput) PaymentType added in v3.45.0

func (o DiskOutput) PaymentType() pulumi.StringOutput

Billing type of the disk instanceValue: PayAsYouGo.

func (DiskOutput) Size added in v3.45.0

func (o DiskOutput) Size() pulumi.IntPtrOutput

The size of the disk instance. Unit: GiB.

func (DiskOutput) SnapshotId added in v3.45.0

func (o DiskOutput) SnapshotId() pulumi.StringPtrOutput

The ID of the snapshot used to create the cloud disk.

The SnapshotId and Size parameters have the following limitations: - If the snapshot capacity corresponding to the **SnapshotId** parameter is greater than the specified **Size** parameter, the Size of the cloud disk created is the Size of the specified snapshot. - If the snapshot capacity corresponding to the **SnapshotId** parameter is less than the set **Size** parameter value, the Size of the cloud disk created is the specified **Size** parameter value.

func (DiskOutput) Status added in v3.45.0

func (o DiskOutput) Status() pulumi.StringOutput

Status of the disk instance:Value:In-use: In useAvailable: To be mountedAttaching: AttachingDetaching: uninstallingCreating: CreatingReIniting: Resetting.

func (DiskOutput) ToDiskOutput added in v3.45.0

func (o DiskOutput) ToDiskOutput() DiskOutput

func (DiskOutput) ToDiskOutputWithContext added in v3.45.0

func (o DiskOutput) ToDiskOutputWithContext(ctx context.Context) DiskOutput

type DiskState added in v3.45.0

type DiskState struct {
	// Types of disk instancesValues: cloudEfficiency (high-efficiency cloud disk),cloud_ssd (full Flash cloud disk),local_hdd (local HDD),local_ssd (local ssd).
	Category pulumi.StringPtrInput
	// Disk instance creation time.
	CreateTime pulumi.StringPtrInput
	// Name of the disk instance.
	DiskName pulumi.StringPtrInput
	// Indicates whether the cloud disk is Encrypted. If Encrypted = true, the default service key is used when KMSKeyId is not entered. Value range:`true`, `false`(default).
	Encrypted pulumi.BoolPtrInput
	// Ens node IDExample value: cn-chengdu-telecom.
	EnsRegionId pulumi.StringPtrInput
	// The ID of the KMS key used by the cloud disk. If Encrypted is set to true, the service default key is used when KMSKeyId is empty.
	KmsKeyId pulumi.StringPtrInput
	// Billing type of the disk instanceValue: PayAsYouGo.
	PaymentType pulumi.StringPtrInput
	// The size of the disk instance. Unit: GiB.
	Size pulumi.IntPtrInput
	// The ID of the snapshot used to create the cloud disk.
	//
	// The SnapshotId and Size parameters have the following limitations:
	// - If the snapshot capacity corresponding to the **SnapshotId** parameter is greater than the specified **Size** parameter, the Size of the cloud disk created is the Size of the specified snapshot.
	// - If the snapshot capacity corresponding to the **SnapshotId** parameter is less than the set **Size** parameter value, the Size of the cloud disk created is the specified **Size** parameter value.
	SnapshotId pulumi.StringPtrInput
	// Status of the disk instance:Value:In-use: In useAvailable: To be mountedAttaching: AttachingDetaching: uninstallingCreating: CreatingReIniting: Resetting.
	Status pulumi.StringPtrInput
}

func (DiskState) ElementType added in v3.45.0

func (DiskState) ElementType() reflect.Type

type Eip added in v3.45.0

type Eip struct {
	pulumi.CustomResourceState

	// The peak bandwidth of the EIP to be specified.Rules:Default value: 5, value range: 5~10000, unit: Mbps. Example value: 5.
	Bandwidth pulumi.IntOutput `pulumi:"bandwidth"`
	// The creation time of the EIP instance.
	CreateTime pulumi.StringOutput `pulumi:"createTime"`
	// The description of the EIP.
	Description pulumi.StringPtrOutput `pulumi:"description"`
	// Name of the EIP instance.
	EipName pulumi.StringPtrOutput `pulumi:"eipName"`
	// Ens node ID.
	EnsRegionId pulumi.StringOutput `pulumi:"ensRegionId"`
	// Billing type of the EIP instance. Valid value: 95bandwidthbymonth.
	InternetChargeType pulumi.StringOutput `pulumi:"internetChargeType"`
	// Internet service provider, if not filled in, it will be assigned according to the default rules.
	Isp pulumi.StringOutput `pulumi:"isp"`
	// The billing type of the EIP instanceValue: PayAsYouGo.
	PaymentType pulumi.StringOutput `pulumi:"paymentType"`
	// The status of the EIP instance.Rules:Associating: bindingUnassociating: UnbindingInUse: AssignedAvailable: AvailableCreating: CreatingReleasing: Releasing.
	Status pulumi.StringOutput `pulumi:"status"`
}

Provides a ENS Eip resource. Edge elastic public network IP. When you use it for the first time, please contact the product classmates to add a resource whitelist.

For information about ENS Eip and how to use it, see [What is Eip](https://www.alibabacloud.com/help/en/ens/developer-reference/api-createeipinstance).

> **NOTE:** Available since v1.213.0.

## Example Usage

Basic Usage

```go package main

import (

"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/ens"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		cfg := config.New(ctx, "")
		name := "terraform-example"
		if param := cfg.Get("name"); param != "" {
			name = param
		}
		_, err := ens.NewEip(ctx, "default", &ens.EipArgs{
			Description:        pulumi.String("EipDescription_autotest"),
			Bandwidth:          pulumi.Int(5),
			Isp:                pulumi.String("cmcc"),
			PaymentType:        pulumi.String("PayAsYouGo"),
			EnsRegionId:        pulumi.String("cn-chenzhou-telecom_unicom_cmcc"),
			EipName:            pulumi.String(name),
			InternetChargeType: pulumi.String("95BandwidthByMonth"),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

ENS Eip can be imported using the id, e.g.

```sh $ pulumi import alicloud:ens/eip:Eip example <id> ```

func GetEip added in v3.45.0

func GetEip(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *EipState, opts ...pulumi.ResourceOption) (*Eip, error)

GetEip gets an existing Eip resource's state with the given name, ID, and optional state properties that are used to uniquely qualify the lookup (nil if not required).

func NewEip added in v3.45.0

func NewEip(ctx *pulumi.Context,
	name string, args *EipArgs, opts ...pulumi.ResourceOption) (*Eip, error)

NewEip registers a new resource with the given unique name, arguments, and options.

func (*Eip) ElementType added in v3.45.0

func (*Eip) ElementType() reflect.Type

func (*Eip) ToEipOutput added in v3.45.0

func (i *Eip) ToEipOutput() EipOutput

func (*Eip) ToEipOutputWithContext added in v3.45.0

func (i *Eip) ToEipOutputWithContext(ctx context.Context) EipOutput

type EipArgs added in v3.45.0

type EipArgs struct {
	// The peak bandwidth of the EIP to be specified.Rules:Default value: 5, value range: 5~10000, unit: Mbps. Example value: 5.
	Bandwidth pulumi.IntPtrInput
	// The description of the EIP.
	Description pulumi.StringPtrInput
	// Name of the EIP instance.
	EipName pulumi.StringPtrInput
	// Ens node ID.
	EnsRegionId pulumi.StringInput
	// Billing type of the EIP instance. Valid value: 95bandwidthbymonth.
	InternetChargeType pulumi.StringInput
	// Internet service provider, if not filled in, it will be assigned according to the default rules.
	Isp pulumi.StringPtrInput
	// The billing type of the EIP instanceValue: PayAsYouGo.
	PaymentType pulumi.StringInput
}

The set of arguments for constructing a Eip resource.

func (EipArgs) ElementType added in v3.45.0

func (EipArgs) ElementType() reflect.Type

type EipArray added in v3.45.0

type EipArray []EipInput

func (EipArray) ElementType added in v3.45.0

func (EipArray) ElementType() reflect.Type

func (EipArray) ToEipArrayOutput added in v3.45.0

func (i EipArray) ToEipArrayOutput() EipArrayOutput

func (EipArray) ToEipArrayOutputWithContext added in v3.45.0

func (i EipArray) ToEipArrayOutputWithContext(ctx context.Context) EipArrayOutput

type EipArrayInput added in v3.45.0

type EipArrayInput interface {
	pulumi.Input

	ToEipArrayOutput() EipArrayOutput
	ToEipArrayOutputWithContext(context.Context) EipArrayOutput
}

EipArrayInput is an input type that accepts EipArray and EipArrayOutput values. You can construct a concrete instance of `EipArrayInput` via:

EipArray{ EipArgs{...} }

type EipArrayOutput added in v3.45.0

type EipArrayOutput struct{ *pulumi.OutputState }

func (EipArrayOutput) ElementType added in v3.45.0

func (EipArrayOutput) ElementType() reflect.Type

func (EipArrayOutput) Index added in v3.45.0

func (EipArrayOutput) ToEipArrayOutput added in v3.45.0

func (o EipArrayOutput) ToEipArrayOutput() EipArrayOutput

func (EipArrayOutput) ToEipArrayOutputWithContext added in v3.45.0

func (o EipArrayOutput) ToEipArrayOutputWithContext(ctx context.Context) EipArrayOutput

type EipInput added in v3.45.0

type EipInput interface {
	pulumi.Input

	ToEipOutput() EipOutput
	ToEipOutputWithContext(ctx context.Context) EipOutput
}

type EipMap added in v3.45.0

type EipMap map[string]EipInput

func (EipMap) ElementType added in v3.45.0

func (EipMap) ElementType() reflect.Type

func (EipMap) ToEipMapOutput added in v3.45.0

func (i EipMap) ToEipMapOutput() EipMapOutput

func (EipMap) ToEipMapOutputWithContext added in v3.45.0

func (i EipMap) ToEipMapOutputWithContext(ctx context.Context) EipMapOutput

type EipMapInput added in v3.45.0

type EipMapInput interface {
	pulumi.Input

	ToEipMapOutput() EipMapOutput
	ToEipMapOutputWithContext(context.Context) EipMapOutput
}

EipMapInput is an input type that accepts EipMap and EipMapOutput values. You can construct a concrete instance of `EipMapInput` via:

EipMap{ "key": EipArgs{...} }

type EipMapOutput added in v3.45.0

type EipMapOutput struct{ *pulumi.OutputState }

func (EipMapOutput) ElementType added in v3.45.0

func (EipMapOutput) ElementType() reflect.Type

func (EipMapOutput) MapIndex added in v3.45.0

func (o EipMapOutput) MapIndex(k pulumi.StringInput) EipOutput

func (EipMapOutput) ToEipMapOutput added in v3.45.0

func (o EipMapOutput) ToEipMapOutput() EipMapOutput

func (EipMapOutput) ToEipMapOutputWithContext added in v3.45.0

func (o EipMapOutput) ToEipMapOutputWithContext(ctx context.Context) EipMapOutput

type EipOutput added in v3.45.0

type EipOutput struct{ *pulumi.OutputState }

func (EipOutput) Bandwidth added in v3.45.0

func (o EipOutput) Bandwidth() pulumi.IntOutput

The peak bandwidth of the EIP to be specified.Rules:Default value: 5, value range: 5~10000, unit: Mbps. Example value: 5.

func (EipOutput) CreateTime added in v3.45.0

func (o EipOutput) CreateTime() pulumi.StringOutput

The creation time of the EIP instance.

func (EipOutput) Description added in v3.45.0

func (o EipOutput) Description() pulumi.StringPtrOutput

The description of the EIP.

func (EipOutput) EipName added in v3.45.0

func (o EipOutput) EipName() pulumi.StringPtrOutput

Name of the EIP instance.

func (EipOutput) ElementType added in v3.45.0

func (EipOutput) ElementType() reflect.Type

func (EipOutput) EnsRegionId added in v3.45.0

func (o EipOutput) EnsRegionId() pulumi.StringOutput

Ens node ID.

func (EipOutput) InternetChargeType added in v3.45.0

func (o EipOutput) InternetChargeType() pulumi.StringOutput

Billing type of the EIP instance. Valid value: 95bandwidthbymonth.

func (EipOutput) Isp added in v3.45.0

func (o EipOutput) Isp() pulumi.StringOutput

Internet service provider, if not filled in, it will be assigned according to the default rules.

func (EipOutput) PaymentType added in v3.45.0

func (o EipOutput) PaymentType() pulumi.StringOutput

The billing type of the EIP instanceValue: PayAsYouGo.

func (EipOutput) Status added in v3.45.0

func (o EipOutput) Status() pulumi.StringOutput

The status of the EIP instance.Rules:Associating: bindingUnassociating: UnbindingInUse: AssignedAvailable: AvailableCreating: CreatingReleasing: Releasing.

func (EipOutput) ToEipOutput added in v3.45.0

func (o EipOutput) ToEipOutput() EipOutput

func (EipOutput) ToEipOutputWithContext added in v3.45.0

func (o EipOutput) ToEipOutputWithContext(ctx context.Context) EipOutput

type EipState added in v3.45.0

type EipState struct {
	// The peak bandwidth of the EIP to be specified.Rules:Default value: 5, value range: 5~10000, unit: Mbps. Example value: 5.
	Bandwidth pulumi.IntPtrInput
	// The creation time of the EIP instance.
	CreateTime pulumi.StringPtrInput
	// The description of the EIP.
	Description pulumi.StringPtrInput
	// Name of the EIP instance.
	EipName pulumi.StringPtrInput
	// Ens node ID.
	EnsRegionId pulumi.StringPtrInput
	// Billing type of the EIP instance. Valid value: 95bandwidthbymonth.
	InternetChargeType pulumi.StringPtrInput
	// Internet service provider, if not filled in, it will be assigned according to the default rules.
	Isp pulumi.StringPtrInput
	// The billing type of the EIP instanceValue: PayAsYouGo.
	PaymentType pulumi.StringPtrInput
	// The status of the EIP instance.Rules:Associating: bindingUnassociating: UnbindingInUse: AssignedAvailable: AvailableCreating: CreatingReleasing: Releasing.
	Status pulumi.StringPtrInput
}

func (EipState) ElementType added in v3.45.0

func (EipState) ElementType() reflect.Type

type GetKeyPairsArgs

type GetKeyPairsArgs struct {
	// The name of the key pair.
	KeyPairName *string `pulumi:"keyPairName"`
	// A regex string to filter results by Key Pair name.
	NameRegex *string `pulumi:"nameRegex"`
	// File name where to save data source results (after running `pulumi preview`).
	OutputFile *string `pulumi:"outputFile"`
	// The version number.
	Version string `pulumi:"version"`
}

A collection of arguments for invoking getKeyPairs.

type GetKeyPairsOutputArgs added in v3.9.0

type GetKeyPairsOutputArgs struct {
	// The name of the key pair.
	KeyPairName pulumi.StringPtrInput `pulumi:"keyPairName"`
	// A regex string to filter results by Key Pair name.
	NameRegex pulumi.StringPtrInput `pulumi:"nameRegex"`
	// File name where to save data source results (after running `pulumi preview`).
	OutputFile pulumi.StringPtrInput `pulumi:"outputFile"`
	// The version number.
	Version pulumi.StringInput `pulumi:"version"`
}

A collection of arguments for invoking getKeyPairs.

func (GetKeyPairsOutputArgs) ElementType added in v3.9.0

func (GetKeyPairsOutputArgs) ElementType() reflect.Type

type GetKeyPairsPair

type GetKeyPairsPair struct {
	// The creation time of the key pair. The date format is in accordance with ISO8601 notation and uses UTC time. The format is yyyy-MM-ddTHH:mm:ssZ.
	CreateTime string `pulumi:"createTime"`
	// The ID of the Key Pair.
	Id string `pulumi:"id"`
	// Fingerprint of the key pair.
	KeyPairFingerPrint string `pulumi:"keyPairFingerPrint"`
	// The name of the key pair.
	KeyPairName string `pulumi:"keyPairName"`
	// The version number.
	Version string `pulumi:"version"`
}

type GetKeyPairsPairArgs

type GetKeyPairsPairArgs struct {
	// The creation time of the key pair. The date format is in accordance with ISO8601 notation and uses UTC time. The format is yyyy-MM-ddTHH:mm:ssZ.
	CreateTime pulumi.StringInput `pulumi:"createTime"`
	// The ID of the Key Pair.
	Id pulumi.StringInput `pulumi:"id"`
	// Fingerprint of the key pair.
	KeyPairFingerPrint pulumi.StringInput `pulumi:"keyPairFingerPrint"`
	// The name of the key pair.
	KeyPairName pulumi.StringInput `pulumi:"keyPairName"`
	// The version number.
	Version pulumi.StringInput `pulumi:"version"`
}

func (GetKeyPairsPairArgs) ElementType

func (GetKeyPairsPairArgs) ElementType() reflect.Type

func (GetKeyPairsPairArgs) ToGetKeyPairsPairOutput

func (i GetKeyPairsPairArgs) ToGetKeyPairsPairOutput() GetKeyPairsPairOutput

func (GetKeyPairsPairArgs) ToGetKeyPairsPairOutputWithContext

func (i GetKeyPairsPairArgs) ToGetKeyPairsPairOutputWithContext(ctx context.Context) GetKeyPairsPairOutput

type GetKeyPairsPairArray

type GetKeyPairsPairArray []GetKeyPairsPairInput

func (GetKeyPairsPairArray) ElementType

func (GetKeyPairsPairArray) ElementType() reflect.Type

func (GetKeyPairsPairArray) ToGetKeyPairsPairArrayOutput

func (i GetKeyPairsPairArray) ToGetKeyPairsPairArrayOutput() GetKeyPairsPairArrayOutput

func (GetKeyPairsPairArray) ToGetKeyPairsPairArrayOutputWithContext

func (i GetKeyPairsPairArray) ToGetKeyPairsPairArrayOutputWithContext(ctx context.Context) GetKeyPairsPairArrayOutput

type GetKeyPairsPairArrayInput

type GetKeyPairsPairArrayInput interface {
	pulumi.Input

	ToGetKeyPairsPairArrayOutput() GetKeyPairsPairArrayOutput
	ToGetKeyPairsPairArrayOutputWithContext(context.Context) GetKeyPairsPairArrayOutput
}

GetKeyPairsPairArrayInput is an input type that accepts GetKeyPairsPairArray and GetKeyPairsPairArrayOutput values. You can construct a concrete instance of `GetKeyPairsPairArrayInput` via:

GetKeyPairsPairArray{ GetKeyPairsPairArgs{...} }

type GetKeyPairsPairArrayOutput

type GetKeyPairsPairArrayOutput struct{ *pulumi.OutputState }

func (GetKeyPairsPairArrayOutput) ElementType

func (GetKeyPairsPairArrayOutput) ElementType() reflect.Type

func (GetKeyPairsPairArrayOutput) Index

func (GetKeyPairsPairArrayOutput) ToGetKeyPairsPairArrayOutput

func (o GetKeyPairsPairArrayOutput) ToGetKeyPairsPairArrayOutput() GetKeyPairsPairArrayOutput

func (GetKeyPairsPairArrayOutput) ToGetKeyPairsPairArrayOutputWithContext

func (o GetKeyPairsPairArrayOutput) ToGetKeyPairsPairArrayOutputWithContext(ctx context.Context) GetKeyPairsPairArrayOutput

type GetKeyPairsPairInput

type GetKeyPairsPairInput interface {
	pulumi.Input

	ToGetKeyPairsPairOutput() GetKeyPairsPairOutput
	ToGetKeyPairsPairOutputWithContext(context.Context) GetKeyPairsPairOutput
}

GetKeyPairsPairInput is an input type that accepts GetKeyPairsPairArgs and GetKeyPairsPairOutput values. You can construct a concrete instance of `GetKeyPairsPairInput` via:

GetKeyPairsPairArgs{...}

type GetKeyPairsPairOutput

type GetKeyPairsPairOutput struct{ *pulumi.OutputState }

func (GetKeyPairsPairOutput) CreateTime

func (o GetKeyPairsPairOutput) CreateTime() pulumi.StringOutput

The creation time of the key pair. The date format is in accordance with ISO8601 notation and uses UTC time. The format is yyyy-MM-ddTHH:mm:ssZ.

func (GetKeyPairsPairOutput) ElementType

func (GetKeyPairsPairOutput) ElementType() reflect.Type

func (GetKeyPairsPairOutput) Id

The ID of the Key Pair.

func (GetKeyPairsPairOutput) KeyPairFingerPrint

func (o GetKeyPairsPairOutput) KeyPairFingerPrint() pulumi.StringOutput

Fingerprint of the key pair.

func (GetKeyPairsPairOutput) KeyPairName

func (o GetKeyPairsPairOutput) KeyPairName() pulumi.StringOutput

The name of the key pair.

func (GetKeyPairsPairOutput) ToGetKeyPairsPairOutput

func (o GetKeyPairsPairOutput) ToGetKeyPairsPairOutput() GetKeyPairsPairOutput

func (GetKeyPairsPairOutput) ToGetKeyPairsPairOutputWithContext

func (o GetKeyPairsPairOutput) ToGetKeyPairsPairOutputWithContext(ctx context.Context) GetKeyPairsPairOutput

func (GetKeyPairsPairOutput) Version

The version number.

type GetKeyPairsResult

type GetKeyPairsResult struct {
	// The provider-assigned unique ID for this managed resource.
	Id          string            `pulumi:"id"`
	Ids         []string          `pulumi:"ids"`
	KeyPairName *string           `pulumi:"keyPairName"`
	NameRegex   *string           `pulumi:"nameRegex"`
	Names       []string          `pulumi:"names"`
	OutputFile  *string           `pulumi:"outputFile"`
	Pairs       []GetKeyPairsPair `pulumi:"pairs"`
	Version     string            `pulumi:"version"`
}

A collection of values returned by getKeyPairs.

func GetKeyPairs

func GetKeyPairs(ctx *pulumi.Context, args *GetKeyPairsArgs, opts ...pulumi.InvokeOption) (*GetKeyPairsResult, error)

This data source provides the Ens Key Pairs of the current Alibaba Cloud user.

> **NOTE:** Available in v1.133.0+.

## Example Usage

Basic Usage

```go package main

import (

"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/ens"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		nameRegex, err := ens.GetKeyPairs(ctx, &ens.GetKeyPairsArgs{
			Version:   "example_value",
			NameRegex: pulumi.StringRef("^my-KeyPair"),
		}, nil)
		if err != nil {
			return err
		}
		ctx.Export("ensKeyPairId1", nameRegex.Pairs[0].Id)
		return nil
	})
}

```

type GetKeyPairsResultOutput added in v3.9.0

type GetKeyPairsResultOutput struct{ *pulumi.OutputState }

A collection of values returned by getKeyPairs.

func GetKeyPairsOutput added in v3.9.0

func GetKeyPairsOutput(ctx *pulumi.Context, args GetKeyPairsOutputArgs, opts ...pulumi.InvokeOption) GetKeyPairsResultOutput

func (GetKeyPairsResultOutput) ElementType added in v3.9.0

func (GetKeyPairsResultOutput) ElementType() reflect.Type

func (GetKeyPairsResultOutput) Id added in v3.9.0

The provider-assigned unique ID for this managed resource.

func (GetKeyPairsResultOutput) Ids added in v3.9.0

func (GetKeyPairsResultOutput) KeyPairName added in v3.9.0

func (GetKeyPairsResultOutput) NameRegex added in v3.9.0

func (GetKeyPairsResultOutput) Names added in v3.9.0

func (GetKeyPairsResultOutput) OutputFile added in v3.9.0

func (GetKeyPairsResultOutput) Pairs added in v3.9.0

func (GetKeyPairsResultOutput) ToGetKeyPairsResultOutput added in v3.9.0

func (o GetKeyPairsResultOutput) ToGetKeyPairsResultOutput() GetKeyPairsResultOutput

func (GetKeyPairsResultOutput) ToGetKeyPairsResultOutputWithContext added in v3.9.0

func (o GetKeyPairsResultOutput) ToGetKeyPairsResultOutputWithContext(ctx context.Context) GetKeyPairsResultOutput

func (GetKeyPairsResultOutput) Version added in v3.9.0

type Image added in v3.48.0

type Image struct {
	pulumi.CustomResourceState

	// Image creation time.
	CreateTime pulumi.StringOutput `pulumi:"createTime"`
	// Whether the instance is automatically released after the image is packaged and uploaded successfully, only the build machine is supported.  Optional values: true: When the instance is released, the image is released together with the instance. false: When the instance is released, the image is retained and is not released together with the instance. Empty means false by default.
	DeleteAfterImageUpload pulumi.StringPtrOutput `pulumi:"deleteAfterImageUpload"`
	// Image Name.
	ImageName pulumi.StringOutput `pulumi:"imageName"`
	// The ID of the instance corresponding to the image.
	InstanceId pulumi.StringPtrOutput `pulumi:"instanceId"`
	// Mirror Status  Optional values: Creating: Creating Packing: Packing Uploading: Uploading Pack_failed: Packing failed Upload_failed: Upload failed Available: Only images in the Available state can be used and operated. Unavailable: Not available Copying: Copying.
	Status pulumi.StringOutput `pulumi:"status"`
}

Provides a ENS Image resource.

For information about ENS Image and how to use it, see [What is Image](https://www.alibabacloud.com/help/en/).

> **NOTE:** Available since v1.216.0.

## Example Usage

Basic Usage

```go package main

import (

"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/ens"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		cfg := config.New(ctx, "")
		name := "terraform-example"
		if param := cfg.Get("name"); param != "" {
			name = param
		}
		_, err := ens.NewInstance(ctx, "default", &ens.InstanceArgs{
			SystemDisk: &ens.InstanceSystemDiskArgs{
				Size: pulumi.Int(20),
			},
			ScheduleAreaLevel:       pulumi.String("Region"),
			ImageId:                 pulumi.String("centos_6_08_64_20G_alibase_20171208"),
			PaymentType:             pulumi.String("PayAsYouGo"),
			Password:                pulumi.String("12345678ABCabc"),
			Amount:                  pulumi.Int(1),
			InternetMaxBandwidthOut: pulumi.Int(10),
			PublicIpIdentification:  pulumi.Bool(true),
			EnsRegionId:             pulumi.String("cn-chenzhou-telecom_unicom_cmcc"),
			PeriodUnit:              pulumi.String("Month"),
			InstanceType:            pulumi.String("ens.sn1.stiny"),
			Status:                  pulumi.String("Stopped"),
		})
		if err != nil {
			return err
		}
		_, err = ens.NewImage(ctx, "default", &ens.ImageArgs{
			ImageName:              pulumi.String(name),
			InstanceId:             _default.ID(),
			DeleteAfterImageUpload: pulumi.String("false"),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

ENS Image can be imported using the id, e.g.

```sh $ pulumi import alicloud:ens/image:Image example <id> ```

func GetImage added in v3.48.0

func GetImage(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *ImageState, opts ...pulumi.ResourceOption) (*Image, error)

GetImage gets an existing Image resource's state with the given name, ID, and optional state properties that are used to uniquely qualify the lookup (nil if not required).

func NewImage added in v3.48.0

func NewImage(ctx *pulumi.Context,
	name string, args *ImageArgs, opts ...pulumi.ResourceOption) (*Image, error)

NewImage registers a new resource with the given unique name, arguments, and options.

func (*Image) ElementType added in v3.48.0

func (*Image) ElementType() reflect.Type

func (*Image) ToImageOutput added in v3.48.0

func (i *Image) ToImageOutput() ImageOutput

func (*Image) ToImageOutputWithContext added in v3.48.0

func (i *Image) ToImageOutputWithContext(ctx context.Context) ImageOutput

type ImageArgs added in v3.48.0

type ImageArgs struct {
	// Whether the instance is automatically released after the image is packaged and uploaded successfully, only the build machine is supported.  Optional values: true: When the instance is released, the image is released together with the instance. false: When the instance is released, the image is retained and is not released together with the instance. Empty means false by default.
	DeleteAfterImageUpload pulumi.StringPtrInput
	// Image Name.
	ImageName pulumi.StringInput
	// The ID of the instance corresponding to the image.
	InstanceId pulumi.StringPtrInput
}

The set of arguments for constructing a Image resource.

func (ImageArgs) ElementType added in v3.48.0

func (ImageArgs) ElementType() reflect.Type

type ImageArray added in v3.48.0

type ImageArray []ImageInput

func (ImageArray) ElementType added in v3.48.0

func (ImageArray) ElementType() reflect.Type

func (ImageArray) ToImageArrayOutput added in v3.48.0

func (i ImageArray) ToImageArrayOutput() ImageArrayOutput

func (ImageArray) ToImageArrayOutputWithContext added in v3.48.0

func (i ImageArray) ToImageArrayOutputWithContext(ctx context.Context) ImageArrayOutput

type ImageArrayInput added in v3.48.0

type ImageArrayInput interface {
	pulumi.Input

	ToImageArrayOutput() ImageArrayOutput
	ToImageArrayOutputWithContext(context.Context) ImageArrayOutput
}

ImageArrayInput is an input type that accepts ImageArray and ImageArrayOutput values. You can construct a concrete instance of `ImageArrayInput` via:

ImageArray{ ImageArgs{...} }

type ImageArrayOutput added in v3.48.0

type ImageArrayOutput struct{ *pulumi.OutputState }

func (ImageArrayOutput) ElementType added in v3.48.0

func (ImageArrayOutput) ElementType() reflect.Type

func (ImageArrayOutput) Index added in v3.48.0

func (ImageArrayOutput) ToImageArrayOutput added in v3.48.0

func (o ImageArrayOutput) ToImageArrayOutput() ImageArrayOutput

func (ImageArrayOutput) ToImageArrayOutputWithContext added in v3.48.0

func (o ImageArrayOutput) ToImageArrayOutputWithContext(ctx context.Context) ImageArrayOutput

type ImageInput added in v3.48.0

type ImageInput interface {
	pulumi.Input

	ToImageOutput() ImageOutput
	ToImageOutputWithContext(ctx context.Context) ImageOutput
}

type ImageMap added in v3.48.0

type ImageMap map[string]ImageInput

func (ImageMap) ElementType added in v3.48.0

func (ImageMap) ElementType() reflect.Type

func (ImageMap) ToImageMapOutput added in v3.48.0

func (i ImageMap) ToImageMapOutput() ImageMapOutput

func (ImageMap) ToImageMapOutputWithContext added in v3.48.0

func (i ImageMap) ToImageMapOutputWithContext(ctx context.Context) ImageMapOutput

type ImageMapInput added in v3.48.0

type ImageMapInput interface {
	pulumi.Input

	ToImageMapOutput() ImageMapOutput
	ToImageMapOutputWithContext(context.Context) ImageMapOutput
}

ImageMapInput is an input type that accepts ImageMap and ImageMapOutput values. You can construct a concrete instance of `ImageMapInput` via:

ImageMap{ "key": ImageArgs{...} }

type ImageMapOutput added in v3.48.0

type ImageMapOutput struct{ *pulumi.OutputState }

func (ImageMapOutput) ElementType added in v3.48.0

func (ImageMapOutput) ElementType() reflect.Type

func (ImageMapOutput) MapIndex added in v3.48.0

func (ImageMapOutput) ToImageMapOutput added in v3.48.0

func (o ImageMapOutput) ToImageMapOutput() ImageMapOutput

func (ImageMapOutput) ToImageMapOutputWithContext added in v3.48.0

func (o ImageMapOutput) ToImageMapOutputWithContext(ctx context.Context) ImageMapOutput

type ImageOutput added in v3.48.0

type ImageOutput struct{ *pulumi.OutputState }

func (ImageOutput) CreateTime added in v3.48.0

func (o ImageOutput) CreateTime() pulumi.StringOutput

Image creation time.

func (ImageOutput) DeleteAfterImageUpload added in v3.48.0

func (o ImageOutput) DeleteAfterImageUpload() pulumi.StringPtrOutput

Whether the instance is automatically released after the image is packaged and uploaded successfully, only the build machine is supported. Optional values: true: When the instance is released, the image is released together with the instance. false: When the instance is released, the image is retained and is not released together with the instance. Empty means false by default.

func (ImageOutput) ElementType added in v3.48.0

func (ImageOutput) ElementType() reflect.Type

func (ImageOutput) ImageName added in v3.48.0

func (o ImageOutput) ImageName() pulumi.StringOutput

Image Name.

func (ImageOutput) InstanceId added in v3.48.0

func (o ImageOutput) InstanceId() pulumi.StringPtrOutput

The ID of the instance corresponding to the image.

func (ImageOutput) Status added in v3.48.0

func (o ImageOutput) Status() pulumi.StringOutput

Mirror Status Optional values: Creating: Creating Packing: Packing Uploading: Uploading Pack_failed: Packing failed Upload_failed: Upload failed Available: Only images in the Available state can be used and operated. Unavailable: Not available Copying: Copying.

func (ImageOutput) ToImageOutput added in v3.48.0

func (o ImageOutput) ToImageOutput() ImageOutput

func (ImageOutput) ToImageOutputWithContext added in v3.48.0

func (o ImageOutput) ToImageOutputWithContext(ctx context.Context) ImageOutput

type ImageState added in v3.48.0

type ImageState struct {
	// Image creation time.
	CreateTime pulumi.StringPtrInput
	// Whether the instance is automatically released after the image is packaged and uploaded successfully, only the build machine is supported.  Optional values: true: When the instance is released, the image is released together with the instance. false: When the instance is released, the image is retained and is not released together with the instance. Empty means false by default.
	DeleteAfterImageUpload pulumi.StringPtrInput
	// Image Name.
	ImageName pulumi.StringPtrInput
	// The ID of the instance corresponding to the image.
	InstanceId pulumi.StringPtrInput
	// Mirror Status  Optional values: Creating: Creating Packing: Packing Uploading: Uploading Pack_failed: Packing failed Upload_failed: Upload failed Available: Only images in the Available state can be used and operated. Unavailable: Not available Copying: Copying.
	Status pulumi.StringPtrInput
}

func (ImageState) ElementType added in v3.48.0

func (ImageState) ElementType() reflect.Type

type Instance added in v3.42.0

type Instance struct {
	pulumi.CustomResourceState

	// The number of instances created, with a minimum of 1 and a maximum of 100.
	Amount pulumi.IntPtrOutput `pulumi:"amount"`
	// Whether to automatically renew the logo. The default value is false. This parameter is invalid when you pay by volume.
	AutoRenew pulumi.BoolPtrOutput `pulumi:"autoRenew"`
	// Whether to use vouchers. The default is to use. Value:
	// - true (used)
	// - false (not used).
	AutoUseCoupon pulumi.StringPtrOutput `pulumi:"autoUseCoupon"`
	// The billing cycle for instance computing resources. Only instance-level pay-as-you-go is supported. Value
	// - Hour: hourly billing
	// - Day: Daily billing
	// - Month: monthly billing.
	BillingCycle pulumi.StringPtrOutput `pulumi:"billingCycle"`
	// Operator, required for regional scheduling. Optional values:
	// - cmcc (mobile)
	// - unicom
	// - telecom.
	Carrier pulumi.StringPtrOutput `pulumi:"carrier"`
	// Data disk specifications. See `dataDisk` below.
	DataDisks InstanceDataDiskArrayOutput `pulumi:"dataDisks"`
	// The node ID. When ScheduleAreaLevel is Region, EnsRegionId is required. When ScheduleAreaLevel is Big,Middle,Small, EnsRegionId is invalid.
	EnsRegionId pulumi.StringOutput `pulumi:"ensRegionId"`
	// Whether to force the identity when operating the instance. Optional values:
	// - true: Force
	// - false (default): non-mandatory
	ForceStop pulumi.StringPtrOutput `pulumi:"forceStop"`
	// The host name of the instance. Example value: test-HostName.
	HostName pulumi.StringOutput `pulumi:"hostName"`
	// The image ID of the instance. The arm version card cannot be filled in. Other specifications are required. Example value: m-5si16wo6simkt267p8b7h * * * *.
	ImageId pulumi.StringPtrOutput `pulumi:"imageId"`
	// Whether the Payment type of the disk created with the instance is converted.
	IncludeDataDisks pulumi.BoolPtrOutput `pulumi:"includeDataDisks"`
	// The instance billing policy. Optional values:
	// - instance: instance granularity (the subscription method does not support instance)
	// - user: user Dimension (user is not transmitted or supported in the prepaid mode).
	InstanceChargeStrategy pulumi.StringPtrOutput `pulumi:"instanceChargeStrategy"`
	// The instance name. Example value: test-InstanceName. It must be 2 to 128 characters in length and must start with an uppercase or lowercase letter or a Chinese character. It cannot start with http:// or https. Can contain Chinese, English, numbers, half-width colons (:), underscores (_), periods (.), or hyphens (-) The default value is the InstanceId of the instance. .
	InstanceName pulumi.StringOutput `pulumi:"instanceName"`
	// The specification of the instance. Example value: ens.sn1.small.
	InstanceType pulumi.StringOutput `pulumi:"instanceType"`
	// Instance bandwidth billing method. If the billing method can be selected for the first purchase, the subsequent value of this field will be processed by default according to the billing method selected for the first time. Optional values:
	// - BandwidthByDay: Daily peak bandwidth
	// - 95bandwidthbymonth: 95 peak bandwidth.
	InternetChargeType pulumi.StringPtrOutput `pulumi:"internetChargeType"`
	// Maximum public network bandwidth. The field type is Long, and the precision may be lost during serialization/deserialization. Please note that the value must not be greater than 9007199254740991.
	InternetMaxBandwidthOut pulumi.IntOutput `pulumi:"internetMaxBandwidthOut"`
	// The IP type. Value:
	// - ipv4 (default):IPv4
	// - ipv6:IPv6
	// - ipv4Andipv6:IPv4 and IPv6.
	IpType pulumi.StringPtrOutput `pulumi:"ipType"`
	// The area code. Example value: 350000. Required for regional-level scheduling, invalid for node-level scheduling.
	NetDistrictCode pulumi.StringPtrOutput `pulumi:"netDistrictCode"`
	// The network ID of the instance. Can only be used in node-level scheduling.
	NetWorkId pulumi.StringOutput `pulumi:"netWorkId"`
	// The instance password. At least one of Password, KeyPairName, and PasswordInherit.
	Password pulumi.StringPtrOutput `pulumi:"password"`
	// Whether to use image preset password prompt: Password and KeyPairNamePasswordInherit must be passed.
	PasswordInherit pulumi.BoolPtrOutput `pulumi:"passwordInherit"`
	// Instance payment method. Optional values:
	// - Subscription: prepaid, annual and monthly
	// - PayAsYouGo: Pay by volume.
	PaymentType pulumi.StringOutput `pulumi:"paymentType"`
	// The duration of the resource purchase. Value method:
	// - If PeriodUnit is set to Day, Period can only be set to 3.
	// - If PeriodUnit is set to Month, Period can be set to 1-9,12.
	Period pulumi.IntPtrOutput `pulumi:"period"`
	// The unit of time for purchasing resources. Value:
	// - Month (default): purchase by Month
	// - Day: buy by Day.
	PeriodUnit pulumi.StringPtrOutput `pulumi:"periodUnit"`
	// The private IP address. Can only be used for node-level scheduling. If a private IP address is specified, the number of instances can only be one, and both the private IP address and the vSwitch ID are not empty, the private IP address takes effect.
	PrivateIpAddress pulumi.StringOutput `pulumi:"privateIpAddress"`
	// Whether to assign a public IP identifier. Value:
	// - true (default): Assign
	// - false: do not assign.
	PublicIpIdentification pulumi.BoolPtrOutput `pulumi:"publicIpIdentification"`
	// Scheduling level, through which node-level scheduling or area scheduling is performed. Optional values:
	// - Node-level scheduling: Region
	// - Regional scheduling: Big (region),Middle (province),Small (city).
	ScheduleAreaLevel pulumi.StringOutput `pulumi:"scheduleAreaLevel"`
	// Scheduling price policy. If it is not filled in, the default priority is low price. Value:
	// - PriceLowPriority
	// - PriceLowPriority (priority low price).
	SchedulingPriceStrategy pulumi.StringPtrOutput `pulumi:"schedulingPriceStrategy"`
	// Scheduling policy. Optional values:
	// - Concentrate for node-level scheduling
	// - For regional scheduling, Concentrate, Disperse.
	SchedulingStrategy pulumi.StringPtrOutput `pulumi:"schedulingStrategy"`
	// ID of the security group to which the instance belongs.
	SecurityId pulumi.StringOutput `pulumi:"securityId"`
	// Status of the instance.
	Status pulumi.StringOutput `pulumi:"status"`
	// System Disk Specification. SystemDisk is a non-required parameter when InstanceType is x86_pm,x86_bmi,x86_bm,pc_bmi, or arm_bmi. SystemDisk is a required parameter when instanceType is other specification families. See `systemDisk` below.
	SystemDisk InstanceSystemDiskPtrOutput `pulumi:"systemDisk"`
	// Indicates whether to add an ordered suffix to HostName and InstanceName. The ordered suffix starts from 001 and cannot exceed 999.
	UniqueSuffix pulumi.BoolPtrOutput `pulumi:"uniqueSuffix"`
	// User-defined data, maximum support 16KB. You can pass in the UserData information. The UserData is encoded in Base64 format.
	UserData pulumi.StringPtrOutput `pulumi:"userData"`
	// The ID of the vSwitch to which the instance belongs. Can only be used in node-level scheduling.
	VswitchId pulumi.StringOutput `pulumi:"vswitchId"`
}

## Import

ENS Instance can be imported using the id, e.g.

```sh $ pulumi import alicloud:ens/instance:Instance example <id> ```

func GetInstance added in v3.42.0

func GetInstance(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *InstanceState, opts ...pulumi.ResourceOption) (*Instance, error)

GetInstance gets an existing Instance resource's state with the given name, ID, and optional state properties that are used to uniquely qualify the lookup (nil if not required).

func NewInstance added in v3.42.0

func NewInstance(ctx *pulumi.Context,
	name string, args *InstanceArgs, opts ...pulumi.ResourceOption) (*Instance, error)

NewInstance registers a new resource with the given unique name, arguments, and options.

func (*Instance) ElementType added in v3.42.0

func (*Instance) ElementType() reflect.Type

func (*Instance) ToInstanceOutput added in v3.42.0

func (i *Instance) ToInstanceOutput() InstanceOutput

func (*Instance) ToInstanceOutputWithContext added in v3.42.0

func (i *Instance) ToInstanceOutputWithContext(ctx context.Context) InstanceOutput

type InstanceArgs added in v3.42.0

type InstanceArgs struct {
	// The number of instances created, with a minimum of 1 and a maximum of 100.
	Amount pulumi.IntPtrInput
	// Whether to automatically renew the logo. The default value is false. This parameter is invalid when you pay by volume.
	AutoRenew pulumi.BoolPtrInput
	// Whether to use vouchers. The default is to use. Value:
	// - true (used)
	// - false (not used).
	AutoUseCoupon pulumi.StringPtrInput
	// The billing cycle for instance computing resources. Only instance-level pay-as-you-go is supported. Value
	// - Hour: hourly billing
	// - Day: Daily billing
	// - Month: monthly billing.
	BillingCycle pulumi.StringPtrInput
	// Operator, required for regional scheduling. Optional values:
	// - cmcc (mobile)
	// - unicom
	// - telecom.
	Carrier pulumi.StringPtrInput
	// Data disk specifications. See `dataDisk` below.
	DataDisks InstanceDataDiskArrayInput
	// The node ID. When ScheduleAreaLevel is Region, EnsRegionId is required. When ScheduleAreaLevel is Big,Middle,Small, EnsRegionId is invalid.
	EnsRegionId pulumi.StringPtrInput
	// Whether to force the identity when operating the instance. Optional values:
	// - true: Force
	// - false (default): non-mandatory
	ForceStop pulumi.StringPtrInput
	// The host name of the instance. Example value: test-HostName.
	HostName pulumi.StringPtrInput
	// The image ID of the instance. The arm version card cannot be filled in. Other specifications are required. Example value: m-5si16wo6simkt267p8b7h * * * *.
	ImageId pulumi.StringPtrInput
	// Whether the Payment type of the disk created with the instance is converted.
	IncludeDataDisks pulumi.BoolPtrInput
	// The instance billing policy. Optional values:
	// - instance: instance granularity (the subscription method does not support instance)
	// - user: user Dimension (user is not transmitted or supported in the prepaid mode).
	InstanceChargeStrategy pulumi.StringPtrInput
	// The instance name. Example value: test-InstanceName. It must be 2 to 128 characters in length and must start with an uppercase or lowercase letter or a Chinese character. It cannot start with http:// or https. Can contain Chinese, English, numbers, half-width colons (:), underscores (_), periods (.), or hyphens (-) The default value is the InstanceId of the instance. .
	InstanceName pulumi.StringPtrInput
	// The specification of the instance. Example value: ens.sn1.small.
	InstanceType pulumi.StringInput
	// Instance bandwidth billing method. If the billing method can be selected for the first purchase, the subsequent value of this field will be processed by default according to the billing method selected for the first time. Optional values:
	// - BandwidthByDay: Daily peak bandwidth
	// - 95bandwidthbymonth: 95 peak bandwidth.
	InternetChargeType pulumi.StringPtrInput
	// Maximum public network bandwidth. The field type is Long, and the precision may be lost during serialization/deserialization. Please note that the value must not be greater than 9007199254740991.
	InternetMaxBandwidthOut pulumi.IntInput
	// The IP type. Value:
	// - ipv4 (default):IPv4
	// - ipv6:IPv6
	// - ipv4Andipv6:IPv4 and IPv6.
	IpType pulumi.StringPtrInput
	// The area code. Example value: 350000. Required for regional-level scheduling, invalid for node-level scheduling.
	NetDistrictCode pulumi.StringPtrInput
	// The network ID of the instance. Can only be used in node-level scheduling.
	NetWorkId pulumi.StringPtrInput
	// The instance password. At least one of Password, KeyPairName, and PasswordInherit.
	Password pulumi.StringPtrInput
	// Whether to use image preset password prompt: Password and KeyPairNamePasswordInherit must be passed.
	PasswordInherit pulumi.BoolPtrInput
	// Instance payment method. Optional values:
	// - Subscription: prepaid, annual and monthly
	// - PayAsYouGo: Pay by volume.
	PaymentType pulumi.StringInput
	// The duration of the resource purchase. Value method:
	// - If PeriodUnit is set to Day, Period can only be set to 3.
	// - If PeriodUnit is set to Month, Period can be set to 1-9,12.
	Period pulumi.IntPtrInput
	// The unit of time for purchasing resources. Value:
	// - Month (default): purchase by Month
	// - Day: buy by Day.
	PeriodUnit pulumi.StringPtrInput
	// The private IP address. Can only be used for node-level scheduling. If a private IP address is specified, the number of instances can only be one, and both the private IP address and the vSwitch ID are not empty, the private IP address takes effect.
	PrivateIpAddress pulumi.StringPtrInput
	// Whether to assign a public IP identifier. Value:
	// - true (default): Assign
	// - false: do not assign.
	PublicIpIdentification pulumi.BoolPtrInput
	// Scheduling level, through which node-level scheduling or area scheduling is performed. Optional values:
	// - Node-level scheduling: Region
	// - Regional scheduling: Big (region),Middle (province),Small (city).
	ScheduleAreaLevel pulumi.StringInput
	// Scheduling price policy. If it is not filled in, the default priority is low price. Value:
	// - PriceLowPriority
	// - PriceLowPriority (priority low price).
	SchedulingPriceStrategy pulumi.StringPtrInput
	// Scheduling policy. Optional values:
	// - Concentrate for node-level scheduling
	// - For regional scheduling, Concentrate, Disperse.
	SchedulingStrategy pulumi.StringPtrInput
	// ID of the security group to which the instance belongs.
	SecurityId pulumi.StringPtrInput
	// Status of the instance.
	Status pulumi.StringPtrInput
	// System Disk Specification. SystemDisk is a non-required parameter when InstanceType is x86_pm,x86_bmi,x86_bm,pc_bmi, or arm_bmi. SystemDisk is a required parameter when instanceType is other specification families. See `systemDisk` below.
	SystemDisk InstanceSystemDiskPtrInput
	// Indicates whether to add an ordered suffix to HostName and InstanceName. The ordered suffix starts from 001 and cannot exceed 999.
	UniqueSuffix pulumi.BoolPtrInput
	// User-defined data, maximum support 16KB. You can pass in the UserData information. The UserData is encoded in Base64 format.
	UserData pulumi.StringPtrInput
	// The ID of the vSwitch to which the instance belongs. Can only be used in node-level scheduling.
	VswitchId pulumi.StringPtrInput
}

The set of arguments for constructing a Instance resource.

func (InstanceArgs) ElementType added in v3.42.0

func (InstanceArgs) ElementType() reflect.Type

type InstanceArray added in v3.42.0

type InstanceArray []InstanceInput

func (InstanceArray) ElementType added in v3.42.0

func (InstanceArray) ElementType() reflect.Type

func (InstanceArray) ToInstanceArrayOutput added in v3.42.0

func (i InstanceArray) ToInstanceArrayOutput() InstanceArrayOutput

func (InstanceArray) ToInstanceArrayOutputWithContext added in v3.42.0

func (i InstanceArray) ToInstanceArrayOutputWithContext(ctx context.Context) InstanceArrayOutput

type InstanceArrayInput added in v3.42.0

type InstanceArrayInput interface {
	pulumi.Input

	ToInstanceArrayOutput() InstanceArrayOutput
	ToInstanceArrayOutputWithContext(context.Context) InstanceArrayOutput
}

InstanceArrayInput is an input type that accepts InstanceArray and InstanceArrayOutput values. You can construct a concrete instance of `InstanceArrayInput` via:

InstanceArray{ InstanceArgs{...} }

type InstanceArrayOutput added in v3.42.0

type InstanceArrayOutput struct{ *pulumi.OutputState }

func (InstanceArrayOutput) ElementType added in v3.42.0

func (InstanceArrayOutput) ElementType() reflect.Type

func (InstanceArrayOutput) Index added in v3.42.0

func (InstanceArrayOutput) ToInstanceArrayOutput added in v3.42.0

func (o InstanceArrayOutput) ToInstanceArrayOutput() InstanceArrayOutput

func (InstanceArrayOutput) ToInstanceArrayOutputWithContext added in v3.42.0

func (o InstanceArrayOutput) ToInstanceArrayOutputWithContext(ctx context.Context) InstanceArrayOutput

type InstanceDataDisk added in v3.42.0

type InstanceDataDisk struct {
	// Data disk type. Optional values:
	// - cloud_efficiency: Ultra cloud disk
	// - cloud_ssd: Full Flash cloud disk
	// - local_hdd: local hdd disk
	// - local_ssd: local disk ssd.
	Category *string `pulumi:"category"`
	// Data disk size, unit: GB.
	Size *int `pulumi:"size"`
}

type InstanceDataDiskArgs added in v3.42.0

type InstanceDataDiskArgs struct {
	// Data disk type. Optional values:
	// - cloud_efficiency: Ultra cloud disk
	// - cloud_ssd: Full Flash cloud disk
	// - local_hdd: local hdd disk
	// - local_ssd: local disk ssd.
	Category pulumi.StringPtrInput `pulumi:"category"`
	// Data disk size, unit: GB.
	Size pulumi.IntPtrInput `pulumi:"size"`
}

func (InstanceDataDiskArgs) ElementType added in v3.42.0

func (InstanceDataDiskArgs) ElementType() reflect.Type

func (InstanceDataDiskArgs) ToInstanceDataDiskOutput added in v3.42.0

func (i InstanceDataDiskArgs) ToInstanceDataDiskOutput() InstanceDataDiskOutput

func (InstanceDataDiskArgs) ToInstanceDataDiskOutputWithContext added in v3.42.0

func (i InstanceDataDiskArgs) ToInstanceDataDiskOutputWithContext(ctx context.Context) InstanceDataDiskOutput

type InstanceDataDiskArray added in v3.42.0

type InstanceDataDiskArray []InstanceDataDiskInput

func (InstanceDataDiskArray) ElementType added in v3.42.0

func (InstanceDataDiskArray) ElementType() reflect.Type

func (InstanceDataDiskArray) ToInstanceDataDiskArrayOutput added in v3.42.0

func (i InstanceDataDiskArray) ToInstanceDataDiskArrayOutput() InstanceDataDiskArrayOutput

func (InstanceDataDiskArray) ToInstanceDataDiskArrayOutputWithContext added in v3.42.0

func (i InstanceDataDiskArray) ToInstanceDataDiskArrayOutputWithContext(ctx context.Context) InstanceDataDiskArrayOutput

type InstanceDataDiskArrayInput added in v3.42.0

type InstanceDataDiskArrayInput interface {
	pulumi.Input

	ToInstanceDataDiskArrayOutput() InstanceDataDiskArrayOutput
	ToInstanceDataDiskArrayOutputWithContext(context.Context) InstanceDataDiskArrayOutput
}

InstanceDataDiskArrayInput is an input type that accepts InstanceDataDiskArray and InstanceDataDiskArrayOutput values. You can construct a concrete instance of `InstanceDataDiskArrayInput` via:

InstanceDataDiskArray{ InstanceDataDiskArgs{...} }

type InstanceDataDiskArrayOutput added in v3.42.0

type InstanceDataDiskArrayOutput struct{ *pulumi.OutputState }

func (InstanceDataDiskArrayOutput) ElementType added in v3.42.0

func (InstanceDataDiskArrayOutput) Index added in v3.42.0

func (InstanceDataDiskArrayOutput) ToInstanceDataDiskArrayOutput added in v3.42.0

func (o InstanceDataDiskArrayOutput) ToInstanceDataDiskArrayOutput() InstanceDataDiskArrayOutput

func (InstanceDataDiskArrayOutput) ToInstanceDataDiskArrayOutputWithContext added in v3.42.0

func (o InstanceDataDiskArrayOutput) ToInstanceDataDiskArrayOutputWithContext(ctx context.Context) InstanceDataDiskArrayOutput

type InstanceDataDiskInput added in v3.42.0

type InstanceDataDiskInput interface {
	pulumi.Input

	ToInstanceDataDiskOutput() InstanceDataDiskOutput
	ToInstanceDataDiskOutputWithContext(context.Context) InstanceDataDiskOutput
}

InstanceDataDiskInput is an input type that accepts InstanceDataDiskArgs and InstanceDataDiskOutput values. You can construct a concrete instance of `InstanceDataDiskInput` via:

InstanceDataDiskArgs{...}

type InstanceDataDiskOutput added in v3.42.0

type InstanceDataDiskOutput struct{ *pulumi.OutputState }

func (InstanceDataDiskOutput) Category added in v3.42.0

Data disk type. Optional values: - cloud_efficiency: Ultra cloud disk - cloud_ssd: Full Flash cloud disk - local_hdd: local hdd disk - local_ssd: local disk ssd.

func (InstanceDataDiskOutput) ElementType added in v3.42.0

func (InstanceDataDiskOutput) ElementType() reflect.Type

func (InstanceDataDiskOutput) Size added in v3.42.0

Data disk size, unit: GB.

func (InstanceDataDiskOutput) ToInstanceDataDiskOutput added in v3.42.0

func (o InstanceDataDiskOutput) ToInstanceDataDiskOutput() InstanceDataDiskOutput

func (InstanceDataDiskOutput) ToInstanceDataDiskOutputWithContext added in v3.42.0

func (o InstanceDataDiskOutput) ToInstanceDataDiskOutputWithContext(ctx context.Context) InstanceDataDiskOutput

type InstanceInput added in v3.42.0

type InstanceInput interface {
	pulumi.Input

	ToInstanceOutput() InstanceOutput
	ToInstanceOutputWithContext(ctx context.Context) InstanceOutput
}

type InstanceMap added in v3.42.0

type InstanceMap map[string]InstanceInput

func (InstanceMap) ElementType added in v3.42.0

func (InstanceMap) ElementType() reflect.Type

func (InstanceMap) ToInstanceMapOutput added in v3.42.0

func (i InstanceMap) ToInstanceMapOutput() InstanceMapOutput

func (InstanceMap) ToInstanceMapOutputWithContext added in v3.42.0

func (i InstanceMap) ToInstanceMapOutputWithContext(ctx context.Context) InstanceMapOutput

type InstanceMapInput added in v3.42.0

type InstanceMapInput interface {
	pulumi.Input

	ToInstanceMapOutput() InstanceMapOutput
	ToInstanceMapOutputWithContext(context.Context) InstanceMapOutput
}

InstanceMapInput is an input type that accepts InstanceMap and InstanceMapOutput values. You can construct a concrete instance of `InstanceMapInput` via:

InstanceMap{ "key": InstanceArgs{...} }

type InstanceMapOutput added in v3.42.0

type InstanceMapOutput struct{ *pulumi.OutputState }

func (InstanceMapOutput) ElementType added in v3.42.0

func (InstanceMapOutput) ElementType() reflect.Type

func (InstanceMapOutput) MapIndex added in v3.42.0

func (InstanceMapOutput) ToInstanceMapOutput added in v3.42.0

func (o InstanceMapOutput) ToInstanceMapOutput() InstanceMapOutput

func (InstanceMapOutput) ToInstanceMapOutputWithContext added in v3.42.0

func (o InstanceMapOutput) ToInstanceMapOutputWithContext(ctx context.Context) InstanceMapOutput

type InstanceOutput added in v3.42.0

type InstanceOutput struct{ *pulumi.OutputState }

func (InstanceOutput) Amount added in v3.48.0

func (o InstanceOutput) Amount() pulumi.IntPtrOutput

The number of instances created, with a minimum of 1 and a maximum of 100.

func (InstanceOutput) AutoRenew added in v3.42.0

func (o InstanceOutput) AutoRenew() pulumi.BoolPtrOutput

Whether to automatically renew the logo. The default value is false. This parameter is invalid when you pay by volume.

func (InstanceOutput) AutoUseCoupon added in v3.48.0

func (o InstanceOutput) AutoUseCoupon() pulumi.StringPtrOutput

Whether to use vouchers. The default is to use. Value: - true (used) - false (not used).

func (InstanceOutput) BillingCycle added in v3.48.0

func (o InstanceOutput) BillingCycle() pulumi.StringPtrOutput

The billing cycle for instance computing resources. Only instance-level pay-as-you-go is supported. Value - Hour: hourly billing - Day: Daily billing - Month: monthly billing.

func (InstanceOutput) Carrier added in v3.42.0

Operator, required for regional scheduling. Optional values: - cmcc (mobile) - unicom - telecom.

func (InstanceOutput) DataDisks added in v3.42.0

Data disk specifications. See `dataDisk` below.

func (InstanceOutput) ElementType added in v3.42.0

func (InstanceOutput) ElementType() reflect.Type

func (InstanceOutput) EnsRegionId added in v3.42.0

func (o InstanceOutput) EnsRegionId() pulumi.StringOutput

The node ID. When ScheduleAreaLevel is Region, EnsRegionId is required. When ScheduleAreaLevel is Big,Middle,Small, EnsRegionId is invalid.

func (InstanceOutput) ForceStop added in v3.48.0

func (o InstanceOutput) ForceStop() pulumi.StringPtrOutput

Whether to force the identity when operating the instance. Optional values: - true: Force - false (default): non-mandatory

func (InstanceOutput) HostName added in v3.42.0

func (o InstanceOutput) HostName() pulumi.StringOutput

The host name of the instance. Example value: test-HostName.

func (InstanceOutput) ImageId added in v3.42.0

The image ID of the instance. The arm version card cannot be filled in. Other specifications are required. Example value: m-5si16wo6simkt267p8b7h * * * *.

func (InstanceOutput) IncludeDataDisks added in v3.48.0

func (o InstanceOutput) IncludeDataDisks() pulumi.BoolPtrOutput

Whether the Payment type of the disk created with the instance is converted.

func (InstanceOutput) InstanceChargeStrategy added in v3.42.0

func (o InstanceOutput) InstanceChargeStrategy() pulumi.StringPtrOutput

The instance billing policy. Optional values: - instance: instance granularity (the subscription method does not support instance) - user: user Dimension (user is not transmitted or supported in the prepaid mode).

func (InstanceOutput) InstanceName added in v3.42.0

func (o InstanceOutput) InstanceName() pulumi.StringOutput

The instance name. Example value: test-InstanceName. It must be 2 to 128 characters in length and must start with an uppercase or lowercase letter or a Chinese character. It cannot start with http:// or https. Can contain Chinese, English, numbers, half-width colons (:), underscores (_), periods (.), or hyphens (-) The default value is the InstanceId of the instance. .

func (InstanceOutput) InstanceType added in v3.42.0

func (o InstanceOutput) InstanceType() pulumi.StringOutput

The specification of the instance. Example value: ens.sn1.small.

func (InstanceOutput) InternetChargeType added in v3.42.0

func (o InstanceOutput) InternetChargeType() pulumi.StringPtrOutput

Instance bandwidth billing method. If the billing method can be selected for the first purchase, the subsequent value of this field will be processed by default according to the billing method selected for the first time. Optional values: - BandwidthByDay: Daily peak bandwidth - 95bandwidthbymonth: 95 peak bandwidth.

func (InstanceOutput) InternetMaxBandwidthOut added in v3.42.0

func (o InstanceOutput) InternetMaxBandwidthOut() pulumi.IntOutput

Maximum public network bandwidth. The field type is Long, and the precision may be lost during serialization/deserialization. Please note that the value must not be greater than 9007199254740991.

func (InstanceOutput) IpType added in v3.48.0

The IP type. Value: - ipv4 (default):IPv4 - ipv6:IPv6 - ipv4Andipv6:IPv4 and IPv6.

func (InstanceOutput) NetDistrictCode added in v3.42.0

func (o InstanceOutput) NetDistrictCode() pulumi.StringPtrOutput

The area code. Example value: 350000. Required for regional-level scheduling, invalid for node-level scheduling.

func (InstanceOutput) NetWorkId added in v3.48.0

func (o InstanceOutput) NetWorkId() pulumi.StringOutput

The network ID of the instance. Can only be used in node-level scheduling.

func (InstanceOutput) Password added in v3.42.0

func (o InstanceOutput) Password() pulumi.StringPtrOutput

The instance password. At least one of Password, KeyPairName, and PasswordInherit.

func (InstanceOutput) PasswordInherit added in v3.42.0

func (o InstanceOutput) PasswordInherit() pulumi.BoolPtrOutput

Whether to use image preset password prompt: Password and KeyPairNamePasswordInherit must be passed.

func (InstanceOutput) PaymentType added in v3.42.0

func (o InstanceOutput) PaymentType() pulumi.StringOutput

Instance payment method. Optional values: - Subscription: prepaid, annual and monthly - PayAsYouGo: Pay by volume.

func (InstanceOutput) Period added in v3.42.0

func (o InstanceOutput) Period() pulumi.IntPtrOutput

The duration of the resource purchase. Value method: - If PeriodUnit is set to Day, Period can only be set to 3. - If PeriodUnit is set to Month, Period can be set to 1-9,12.

func (InstanceOutput) PeriodUnit added in v3.42.0

func (o InstanceOutput) PeriodUnit() pulumi.StringPtrOutput

The unit of time for purchasing resources. Value: - Month (default): purchase by Month - Day: buy by Day.

func (InstanceOutput) PrivateIpAddress added in v3.48.0

func (o InstanceOutput) PrivateIpAddress() pulumi.StringOutput

The private IP address. Can only be used for node-level scheduling. If a private IP address is specified, the number of instances can only be one, and both the private IP address and the vSwitch ID are not empty, the private IP address takes effect.

func (InstanceOutput) PublicIpIdentification added in v3.42.0

func (o InstanceOutput) PublicIpIdentification() pulumi.BoolPtrOutput

Whether to assign a public IP identifier. Value: - true (default): Assign - false: do not assign.

func (InstanceOutput) ScheduleAreaLevel added in v3.42.0

func (o InstanceOutput) ScheduleAreaLevel() pulumi.StringOutput

Scheduling level, through which node-level scheduling or area scheduling is performed. Optional values: - Node-level scheduling: Region - Regional scheduling: Big (region),Middle (province),Small (city).

func (InstanceOutput) SchedulingPriceStrategy added in v3.42.0

func (o InstanceOutput) SchedulingPriceStrategy() pulumi.StringPtrOutput

Scheduling price policy. If it is not filled in, the default priority is low price. Value: - PriceLowPriority - PriceLowPriority (priority low price).

func (InstanceOutput) SchedulingStrategy added in v3.42.0

func (o InstanceOutput) SchedulingStrategy() pulumi.StringPtrOutput

Scheduling policy. Optional values: - Concentrate for node-level scheduling - For regional scheduling, Concentrate, Disperse.

func (InstanceOutput) SecurityId added in v3.48.0

func (o InstanceOutput) SecurityId() pulumi.StringOutput

ID of the security group to which the instance belongs.

func (InstanceOutput) Status added in v3.42.0

func (o InstanceOutput) Status() pulumi.StringOutput

Status of the instance.

func (InstanceOutput) SystemDisk added in v3.42.0

System Disk Specification. SystemDisk is a non-required parameter when InstanceType is x86_pm,x86_bmi,x86_bm,pc_bmi, or arm_bmi. SystemDisk is a required parameter when instanceType is other specification families. See `systemDisk` below.

func (InstanceOutput) ToInstanceOutput added in v3.42.0

func (o InstanceOutput) ToInstanceOutput() InstanceOutput

func (InstanceOutput) ToInstanceOutputWithContext added in v3.42.0

func (o InstanceOutput) ToInstanceOutputWithContext(ctx context.Context) InstanceOutput

func (InstanceOutput) UniqueSuffix added in v3.42.0

func (o InstanceOutput) UniqueSuffix() pulumi.BoolPtrOutput

Indicates whether to add an ordered suffix to HostName and InstanceName. The ordered suffix starts from 001 and cannot exceed 999.

func (InstanceOutput) UserData added in v3.42.0

func (o InstanceOutput) UserData() pulumi.StringPtrOutput

User-defined data, maximum support 16KB. You can pass in the UserData information. The UserData is encoded in Base64 format.

func (InstanceOutput) VswitchId added in v3.48.0

func (o InstanceOutput) VswitchId() pulumi.StringOutput

The ID of the vSwitch to which the instance belongs. Can only be used in node-level scheduling.

type InstanceSecurityGroupAttachment added in v3.48.0

type InstanceSecurityGroupAttachment struct {
	pulumi.CustomResourceState

	// Instance ID.
	InstanceId pulumi.StringOutput `pulumi:"instanceId"`
	// Security group ID.
	SecurityGroupId pulumi.StringOutput `pulumi:"securityGroupId"`
}

Provides a ENS Instance Security Group Attachment resource. Unbind instance and security group.

For information about ENS Instance Security Group Attachment and how to use it, see [What is Instance Security Group Attachment](https://www.alibabacloud.com/help/en/).

> **NOTE:** Available since v1.216.0.

## Example Usage

Basic Usage

```go package main

import (

"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/ens"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		cfg := config.New(ctx, "")
		name := "terraform-example"
		if param := cfg.Get("name"); param != "" {
			name = param
		}
		_, err := ens.NewInstance(ctx, "default", &ens.InstanceArgs{
			SystemDisk: &ens.InstanceSystemDiskArgs{
				Size: pulumi.Int(20),
			},
			ScheduleAreaLevel:       pulumi.String("Region"),
			ImageId:                 pulumi.String("centos_6_08_64_20G_alibase_20171208"),
			PaymentType:             pulumi.String("Subscription"),
			InstanceType:            pulumi.String("ens.sn1.stiny"),
			Password:                pulumi.String("12345678ABCabc"),
			Amount:                  pulumi.Int(1),
			Period:                  pulumi.Int(1),
			InternetMaxBandwidthOut: pulumi.Int(10),
			PublicIpIdentification:  pulumi.Bool(true),
			EnsRegionId:             pulumi.String("cn-chenzhou-telecom_unicom_cmcc"),
			PeriodUnit:              pulumi.String("Month"),
		})
		if err != nil {
			return err
		}
		defaultSecurityGroup, err := ens.NewSecurityGroup(ctx, "default", &ens.SecurityGroupArgs{
			Description:       pulumi.String("InstanceSecurityGroupAttachment_Description"),
			SecurityGroupName: pulumi.String(name),
		})
		if err != nil {
			return err
		}
		_, err = ens.NewInstanceSecurityGroupAttachment(ctx, "default", &ens.InstanceSecurityGroupAttachmentArgs{
			InstanceId:      _default.ID(),
			SecurityGroupId: defaultSecurityGroup.ID(),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

ENS Instance Security Group Attachment can be imported using the id, e.g.

```sh $ pulumi import alicloud:ens/instanceSecurityGroupAttachment:InstanceSecurityGroupAttachment example <instance_id>:<security_group_id> ```

func GetInstanceSecurityGroupAttachment added in v3.48.0

func GetInstanceSecurityGroupAttachment(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *InstanceSecurityGroupAttachmentState, opts ...pulumi.ResourceOption) (*InstanceSecurityGroupAttachment, error)

GetInstanceSecurityGroupAttachment gets an existing InstanceSecurityGroupAttachment resource's state with the given name, ID, and optional state properties that are used to uniquely qualify the lookup (nil if not required).

func NewInstanceSecurityGroupAttachment added in v3.48.0

func NewInstanceSecurityGroupAttachment(ctx *pulumi.Context,
	name string, args *InstanceSecurityGroupAttachmentArgs, opts ...pulumi.ResourceOption) (*InstanceSecurityGroupAttachment, error)

NewInstanceSecurityGroupAttachment registers a new resource with the given unique name, arguments, and options.

func (*InstanceSecurityGroupAttachment) ElementType added in v3.48.0

func (*InstanceSecurityGroupAttachment) ToInstanceSecurityGroupAttachmentOutput added in v3.48.0

func (i *InstanceSecurityGroupAttachment) ToInstanceSecurityGroupAttachmentOutput() InstanceSecurityGroupAttachmentOutput

func (*InstanceSecurityGroupAttachment) ToInstanceSecurityGroupAttachmentOutputWithContext added in v3.48.0

func (i *InstanceSecurityGroupAttachment) ToInstanceSecurityGroupAttachmentOutputWithContext(ctx context.Context) InstanceSecurityGroupAttachmentOutput

type InstanceSecurityGroupAttachmentArgs added in v3.48.0

type InstanceSecurityGroupAttachmentArgs struct {
	// Instance ID.
	InstanceId pulumi.StringPtrInput
	// Security group ID.
	SecurityGroupId pulumi.StringInput
}

The set of arguments for constructing a InstanceSecurityGroupAttachment resource.

func (InstanceSecurityGroupAttachmentArgs) ElementType added in v3.48.0

type InstanceSecurityGroupAttachmentArray added in v3.48.0

type InstanceSecurityGroupAttachmentArray []InstanceSecurityGroupAttachmentInput

func (InstanceSecurityGroupAttachmentArray) ElementType added in v3.48.0

func (InstanceSecurityGroupAttachmentArray) ToInstanceSecurityGroupAttachmentArrayOutput added in v3.48.0

func (i InstanceSecurityGroupAttachmentArray) ToInstanceSecurityGroupAttachmentArrayOutput() InstanceSecurityGroupAttachmentArrayOutput

func (InstanceSecurityGroupAttachmentArray) ToInstanceSecurityGroupAttachmentArrayOutputWithContext added in v3.48.0

func (i InstanceSecurityGroupAttachmentArray) ToInstanceSecurityGroupAttachmentArrayOutputWithContext(ctx context.Context) InstanceSecurityGroupAttachmentArrayOutput

type InstanceSecurityGroupAttachmentArrayInput added in v3.48.0

type InstanceSecurityGroupAttachmentArrayInput interface {
	pulumi.Input

	ToInstanceSecurityGroupAttachmentArrayOutput() InstanceSecurityGroupAttachmentArrayOutput
	ToInstanceSecurityGroupAttachmentArrayOutputWithContext(context.Context) InstanceSecurityGroupAttachmentArrayOutput
}

InstanceSecurityGroupAttachmentArrayInput is an input type that accepts InstanceSecurityGroupAttachmentArray and InstanceSecurityGroupAttachmentArrayOutput values. You can construct a concrete instance of `InstanceSecurityGroupAttachmentArrayInput` via:

InstanceSecurityGroupAttachmentArray{ InstanceSecurityGroupAttachmentArgs{...} }

type InstanceSecurityGroupAttachmentArrayOutput added in v3.48.0

type InstanceSecurityGroupAttachmentArrayOutput struct{ *pulumi.OutputState }

func (InstanceSecurityGroupAttachmentArrayOutput) ElementType added in v3.48.0

func (InstanceSecurityGroupAttachmentArrayOutput) Index added in v3.48.0

func (InstanceSecurityGroupAttachmentArrayOutput) ToInstanceSecurityGroupAttachmentArrayOutput added in v3.48.0

func (o InstanceSecurityGroupAttachmentArrayOutput) ToInstanceSecurityGroupAttachmentArrayOutput() InstanceSecurityGroupAttachmentArrayOutput

func (InstanceSecurityGroupAttachmentArrayOutput) ToInstanceSecurityGroupAttachmentArrayOutputWithContext added in v3.48.0

func (o InstanceSecurityGroupAttachmentArrayOutput) ToInstanceSecurityGroupAttachmentArrayOutputWithContext(ctx context.Context) InstanceSecurityGroupAttachmentArrayOutput

type InstanceSecurityGroupAttachmentInput added in v3.48.0

type InstanceSecurityGroupAttachmentInput interface {
	pulumi.Input

	ToInstanceSecurityGroupAttachmentOutput() InstanceSecurityGroupAttachmentOutput
	ToInstanceSecurityGroupAttachmentOutputWithContext(ctx context.Context) InstanceSecurityGroupAttachmentOutput
}

type InstanceSecurityGroupAttachmentMap added in v3.48.0

type InstanceSecurityGroupAttachmentMap map[string]InstanceSecurityGroupAttachmentInput

func (InstanceSecurityGroupAttachmentMap) ElementType added in v3.48.0

func (InstanceSecurityGroupAttachmentMap) ToInstanceSecurityGroupAttachmentMapOutput added in v3.48.0

func (i InstanceSecurityGroupAttachmentMap) ToInstanceSecurityGroupAttachmentMapOutput() InstanceSecurityGroupAttachmentMapOutput

func (InstanceSecurityGroupAttachmentMap) ToInstanceSecurityGroupAttachmentMapOutputWithContext added in v3.48.0

func (i InstanceSecurityGroupAttachmentMap) ToInstanceSecurityGroupAttachmentMapOutputWithContext(ctx context.Context) InstanceSecurityGroupAttachmentMapOutput

type InstanceSecurityGroupAttachmentMapInput added in v3.48.0

type InstanceSecurityGroupAttachmentMapInput interface {
	pulumi.Input

	ToInstanceSecurityGroupAttachmentMapOutput() InstanceSecurityGroupAttachmentMapOutput
	ToInstanceSecurityGroupAttachmentMapOutputWithContext(context.Context) InstanceSecurityGroupAttachmentMapOutput
}

InstanceSecurityGroupAttachmentMapInput is an input type that accepts InstanceSecurityGroupAttachmentMap and InstanceSecurityGroupAttachmentMapOutput values. You can construct a concrete instance of `InstanceSecurityGroupAttachmentMapInput` via:

InstanceSecurityGroupAttachmentMap{ "key": InstanceSecurityGroupAttachmentArgs{...} }

type InstanceSecurityGroupAttachmentMapOutput added in v3.48.0

type InstanceSecurityGroupAttachmentMapOutput struct{ *pulumi.OutputState }

func (InstanceSecurityGroupAttachmentMapOutput) ElementType added in v3.48.0

func (InstanceSecurityGroupAttachmentMapOutput) MapIndex added in v3.48.0

func (InstanceSecurityGroupAttachmentMapOutput) ToInstanceSecurityGroupAttachmentMapOutput added in v3.48.0

func (o InstanceSecurityGroupAttachmentMapOutput) ToInstanceSecurityGroupAttachmentMapOutput() InstanceSecurityGroupAttachmentMapOutput

func (InstanceSecurityGroupAttachmentMapOutput) ToInstanceSecurityGroupAttachmentMapOutputWithContext added in v3.48.0

func (o InstanceSecurityGroupAttachmentMapOutput) ToInstanceSecurityGroupAttachmentMapOutputWithContext(ctx context.Context) InstanceSecurityGroupAttachmentMapOutput

type InstanceSecurityGroupAttachmentOutput added in v3.48.0

type InstanceSecurityGroupAttachmentOutput struct{ *pulumi.OutputState }

func (InstanceSecurityGroupAttachmentOutput) ElementType added in v3.48.0

func (InstanceSecurityGroupAttachmentOutput) InstanceId added in v3.48.0

Instance ID.

func (InstanceSecurityGroupAttachmentOutput) SecurityGroupId added in v3.48.0

Security group ID.

func (InstanceSecurityGroupAttachmentOutput) ToInstanceSecurityGroupAttachmentOutput added in v3.48.0

func (o InstanceSecurityGroupAttachmentOutput) ToInstanceSecurityGroupAttachmentOutput() InstanceSecurityGroupAttachmentOutput

func (InstanceSecurityGroupAttachmentOutput) ToInstanceSecurityGroupAttachmentOutputWithContext added in v3.48.0

func (o InstanceSecurityGroupAttachmentOutput) ToInstanceSecurityGroupAttachmentOutputWithContext(ctx context.Context) InstanceSecurityGroupAttachmentOutput

type InstanceSecurityGroupAttachmentState added in v3.48.0

type InstanceSecurityGroupAttachmentState struct {
	// Instance ID.
	InstanceId pulumi.StringPtrInput
	// Security group ID.
	SecurityGroupId pulumi.StringPtrInput
}

func (InstanceSecurityGroupAttachmentState) ElementType added in v3.48.0

type InstanceState added in v3.42.0

type InstanceState struct {
	// The number of instances created, with a minimum of 1 and a maximum of 100.
	Amount pulumi.IntPtrInput
	// Whether to automatically renew the logo. The default value is false. This parameter is invalid when you pay by volume.
	AutoRenew pulumi.BoolPtrInput
	// Whether to use vouchers. The default is to use. Value:
	// - true (used)
	// - false (not used).
	AutoUseCoupon pulumi.StringPtrInput
	// The billing cycle for instance computing resources. Only instance-level pay-as-you-go is supported. Value
	// - Hour: hourly billing
	// - Day: Daily billing
	// - Month: monthly billing.
	BillingCycle pulumi.StringPtrInput
	// Operator, required for regional scheduling. Optional values:
	// - cmcc (mobile)
	// - unicom
	// - telecom.
	Carrier pulumi.StringPtrInput
	// Data disk specifications. See `dataDisk` below.
	DataDisks InstanceDataDiskArrayInput
	// The node ID. When ScheduleAreaLevel is Region, EnsRegionId is required. When ScheduleAreaLevel is Big,Middle,Small, EnsRegionId is invalid.
	EnsRegionId pulumi.StringPtrInput
	// Whether to force the identity when operating the instance. Optional values:
	// - true: Force
	// - false (default): non-mandatory
	ForceStop pulumi.StringPtrInput
	// The host name of the instance. Example value: test-HostName.
	HostName pulumi.StringPtrInput
	// The image ID of the instance. The arm version card cannot be filled in. Other specifications are required. Example value: m-5si16wo6simkt267p8b7h * * * *.
	ImageId pulumi.StringPtrInput
	// Whether the Payment type of the disk created with the instance is converted.
	IncludeDataDisks pulumi.BoolPtrInput
	// The instance billing policy. Optional values:
	// - instance: instance granularity (the subscription method does not support instance)
	// - user: user Dimension (user is not transmitted or supported in the prepaid mode).
	InstanceChargeStrategy pulumi.StringPtrInput
	// The instance name. Example value: test-InstanceName. It must be 2 to 128 characters in length and must start with an uppercase or lowercase letter or a Chinese character. It cannot start with http:// or https. Can contain Chinese, English, numbers, half-width colons (:), underscores (_), periods (.), or hyphens (-) The default value is the InstanceId of the instance. .
	InstanceName pulumi.StringPtrInput
	// The specification of the instance. Example value: ens.sn1.small.
	InstanceType pulumi.StringPtrInput
	// Instance bandwidth billing method. If the billing method can be selected for the first purchase, the subsequent value of this field will be processed by default according to the billing method selected for the first time. Optional values:
	// - BandwidthByDay: Daily peak bandwidth
	// - 95bandwidthbymonth: 95 peak bandwidth.
	InternetChargeType pulumi.StringPtrInput
	// Maximum public network bandwidth. The field type is Long, and the precision may be lost during serialization/deserialization. Please note that the value must not be greater than 9007199254740991.
	InternetMaxBandwidthOut pulumi.IntPtrInput
	// The IP type. Value:
	// - ipv4 (default):IPv4
	// - ipv6:IPv6
	// - ipv4Andipv6:IPv4 and IPv6.
	IpType pulumi.StringPtrInput
	// The area code. Example value: 350000. Required for regional-level scheduling, invalid for node-level scheduling.
	NetDistrictCode pulumi.StringPtrInput
	// The network ID of the instance. Can only be used in node-level scheduling.
	NetWorkId pulumi.StringPtrInput
	// The instance password. At least one of Password, KeyPairName, and PasswordInherit.
	Password pulumi.StringPtrInput
	// Whether to use image preset password prompt: Password and KeyPairNamePasswordInherit must be passed.
	PasswordInherit pulumi.BoolPtrInput
	// Instance payment method. Optional values:
	// - Subscription: prepaid, annual and monthly
	// - PayAsYouGo: Pay by volume.
	PaymentType pulumi.StringPtrInput
	// The duration of the resource purchase. Value method:
	// - If PeriodUnit is set to Day, Period can only be set to 3.
	// - If PeriodUnit is set to Month, Period can be set to 1-9,12.
	Period pulumi.IntPtrInput
	// The unit of time for purchasing resources. Value:
	// - Month (default): purchase by Month
	// - Day: buy by Day.
	PeriodUnit pulumi.StringPtrInput
	// The private IP address. Can only be used for node-level scheduling. If a private IP address is specified, the number of instances can only be one, and both the private IP address and the vSwitch ID are not empty, the private IP address takes effect.
	PrivateIpAddress pulumi.StringPtrInput
	// Whether to assign a public IP identifier. Value:
	// - true (default): Assign
	// - false: do not assign.
	PublicIpIdentification pulumi.BoolPtrInput
	// Scheduling level, through which node-level scheduling or area scheduling is performed. Optional values:
	// - Node-level scheduling: Region
	// - Regional scheduling: Big (region),Middle (province),Small (city).
	ScheduleAreaLevel pulumi.StringPtrInput
	// Scheduling price policy. If it is not filled in, the default priority is low price. Value:
	// - PriceLowPriority
	// - PriceLowPriority (priority low price).
	SchedulingPriceStrategy pulumi.StringPtrInput
	// Scheduling policy. Optional values:
	// - Concentrate for node-level scheduling
	// - For regional scheduling, Concentrate, Disperse.
	SchedulingStrategy pulumi.StringPtrInput
	// ID of the security group to which the instance belongs.
	SecurityId pulumi.StringPtrInput
	// Status of the instance.
	Status pulumi.StringPtrInput
	// System Disk Specification. SystemDisk is a non-required parameter when InstanceType is x86_pm,x86_bmi,x86_bm,pc_bmi, or arm_bmi. SystemDisk is a required parameter when instanceType is other specification families. See `systemDisk` below.
	SystemDisk InstanceSystemDiskPtrInput
	// Indicates whether to add an ordered suffix to HostName and InstanceName. The ordered suffix starts from 001 and cannot exceed 999.
	UniqueSuffix pulumi.BoolPtrInput
	// User-defined data, maximum support 16KB. You can pass in the UserData information. The UserData is encoded in Base64 format.
	UserData pulumi.StringPtrInput
	// The ID of the vSwitch to which the instance belongs. Can only be used in node-level scheduling.
	VswitchId pulumi.StringPtrInput
}

func (InstanceState) ElementType added in v3.42.0

func (InstanceState) ElementType() reflect.Type

type InstanceSystemDisk added in v3.42.0

type InstanceSystemDisk struct {
	// System disk type. Optional values:
	// - cloud_efficiency: Ultra cloud disk
	// - cloud_ssd: Full Flash cloud disk
	// - local_hdd: local hdd disk
	// - local_ssd: local disk ssd.
	Category *string `pulumi:"category"`
	// System disk size, unit: GB.
	Size *int `pulumi:"size"`
}

type InstanceSystemDiskArgs added in v3.42.0

type InstanceSystemDiskArgs struct {
	// System disk type. Optional values:
	// - cloud_efficiency: Ultra cloud disk
	// - cloud_ssd: Full Flash cloud disk
	// - local_hdd: local hdd disk
	// - local_ssd: local disk ssd.
	Category pulumi.StringPtrInput `pulumi:"category"`
	// System disk size, unit: GB.
	Size pulumi.IntPtrInput `pulumi:"size"`
}

func (InstanceSystemDiskArgs) ElementType added in v3.42.0

func (InstanceSystemDiskArgs) ElementType() reflect.Type

func (InstanceSystemDiskArgs) ToInstanceSystemDiskOutput added in v3.42.0

func (i InstanceSystemDiskArgs) ToInstanceSystemDiskOutput() InstanceSystemDiskOutput

func (InstanceSystemDiskArgs) ToInstanceSystemDiskOutputWithContext added in v3.42.0

func (i InstanceSystemDiskArgs) ToInstanceSystemDiskOutputWithContext(ctx context.Context) InstanceSystemDiskOutput

func (InstanceSystemDiskArgs) ToInstanceSystemDiskPtrOutput added in v3.42.0

func (i InstanceSystemDiskArgs) ToInstanceSystemDiskPtrOutput() InstanceSystemDiskPtrOutput

func (InstanceSystemDiskArgs) ToInstanceSystemDiskPtrOutputWithContext added in v3.42.0

func (i InstanceSystemDiskArgs) ToInstanceSystemDiskPtrOutputWithContext(ctx context.Context) InstanceSystemDiskPtrOutput

type InstanceSystemDiskInput added in v3.42.0

type InstanceSystemDiskInput interface {
	pulumi.Input

	ToInstanceSystemDiskOutput() InstanceSystemDiskOutput
	ToInstanceSystemDiskOutputWithContext(context.Context) InstanceSystemDiskOutput
}

InstanceSystemDiskInput is an input type that accepts InstanceSystemDiskArgs and InstanceSystemDiskOutput values. You can construct a concrete instance of `InstanceSystemDiskInput` via:

InstanceSystemDiskArgs{...}

type InstanceSystemDiskOutput added in v3.42.0

type InstanceSystemDiskOutput struct{ *pulumi.OutputState }

func (InstanceSystemDiskOutput) Category added in v3.48.0

System disk type. Optional values: - cloud_efficiency: Ultra cloud disk - cloud_ssd: Full Flash cloud disk - local_hdd: local hdd disk - local_ssd: local disk ssd.

func (InstanceSystemDiskOutput) ElementType added in v3.42.0

func (InstanceSystemDiskOutput) ElementType() reflect.Type

func (InstanceSystemDiskOutput) Size added in v3.42.0

System disk size, unit: GB.

func (InstanceSystemDiskOutput) ToInstanceSystemDiskOutput added in v3.42.0

func (o InstanceSystemDiskOutput) ToInstanceSystemDiskOutput() InstanceSystemDiskOutput

func (InstanceSystemDiskOutput) ToInstanceSystemDiskOutputWithContext added in v3.42.0

func (o InstanceSystemDiskOutput) ToInstanceSystemDiskOutputWithContext(ctx context.Context) InstanceSystemDiskOutput

func (InstanceSystemDiskOutput) ToInstanceSystemDiskPtrOutput added in v3.42.0

func (o InstanceSystemDiskOutput) ToInstanceSystemDiskPtrOutput() InstanceSystemDiskPtrOutput

func (InstanceSystemDiskOutput) ToInstanceSystemDiskPtrOutputWithContext added in v3.42.0

func (o InstanceSystemDiskOutput) ToInstanceSystemDiskPtrOutputWithContext(ctx context.Context) InstanceSystemDiskPtrOutput

type InstanceSystemDiskPtrInput added in v3.42.0

type InstanceSystemDiskPtrInput interface {
	pulumi.Input

	ToInstanceSystemDiskPtrOutput() InstanceSystemDiskPtrOutput
	ToInstanceSystemDiskPtrOutputWithContext(context.Context) InstanceSystemDiskPtrOutput
}

InstanceSystemDiskPtrInput is an input type that accepts InstanceSystemDiskArgs, InstanceSystemDiskPtr and InstanceSystemDiskPtrOutput values. You can construct a concrete instance of `InstanceSystemDiskPtrInput` via:

        InstanceSystemDiskArgs{...}

or:

        nil

func InstanceSystemDiskPtr added in v3.42.0

func InstanceSystemDiskPtr(v *InstanceSystemDiskArgs) InstanceSystemDiskPtrInput

type InstanceSystemDiskPtrOutput added in v3.42.0

type InstanceSystemDiskPtrOutput struct{ *pulumi.OutputState }

func (InstanceSystemDiskPtrOutput) Category added in v3.48.0

System disk type. Optional values: - cloud_efficiency: Ultra cloud disk - cloud_ssd: Full Flash cloud disk - local_hdd: local hdd disk - local_ssd: local disk ssd.

func (InstanceSystemDiskPtrOutput) Elem added in v3.42.0

func (InstanceSystemDiskPtrOutput) ElementType added in v3.42.0

func (InstanceSystemDiskPtrOutput) Size added in v3.42.0

System disk size, unit: GB.

func (InstanceSystemDiskPtrOutput) ToInstanceSystemDiskPtrOutput added in v3.42.0

func (o InstanceSystemDiskPtrOutput) ToInstanceSystemDiskPtrOutput() InstanceSystemDiskPtrOutput

func (InstanceSystemDiskPtrOutput) ToInstanceSystemDiskPtrOutputWithContext added in v3.42.0

func (o InstanceSystemDiskPtrOutput) ToInstanceSystemDiskPtrOutputWithContext(ctx context.Context) InstanceSystemDiskPtrOutput

type KeyPair

type KeyPair struct {
	pulumi.CustomResourceState

	// The name of the key pair.
	KeyPairName pulumi.StringOutput `pulumi:"keyPairName"`
	// The version number.
	Version pulumi.StringOutput `pulumi:"version"`
}

Provides a ENS Key Pair resource.

For information about ENS Key Pair and how to use it, see [What is Key Pair](https://www.alibabacloud.com/help/en/ens/latest/createkeypair).

> **NOTE:** Available since v1.133.0.

## Example Usage

Basic Usage

```go package main

import (

"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/ens"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		cfg := config.New(ctx, "")
		name := "terraform-example"
		if param := cfg.Get("name"); param != "" {
			name = param
		}
		_, err := ens.NewKeyPair(ctx, "example", &ens.KeyPairArgs{
			KeyPairName: pulumi.String(name),
			Version:     pulumi.String("2017-11-10"),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

ENS Key Pair can be imported using the id, e.g.

```sh $ pulumi import alicloud:ens/keyPair:KeyPair example <key_pair_name>:<version> ```

func GetKeyPair

func GetKeyPair(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *KeyPairState, opts ...pulumi.ResourceOption) (*KeyPair, error)

GetKeyPair gets an existing KeyPair resource's state with the given name, ID, and optional state properties that are used to uniquely qualify the lookup (nil if not required).

func NewKeyPair

func NewKeyPair(ctx *pulumi.Context,
	name string, args *KeyPairArgs, opts ...pulumi.ResourceOption) (*KeyPair, error)

NewKeyPair registers a new resource with the given unique name, arguments, and options.

func (*KeyPair) ElementType

func (*KeyPair) ElementType() reflect.Type

func (*KeyPair) ToKeyPairOutput

func (i *KeyPair) ToKeyPairOutput() KeyPairOutput

func (*KeyPair) ToKeyPairOutputWithContext

func (i *KeyPair) ToKeyPairOutputWithContext(ctx context.Context) KeyPairOutput

type KeyPairArgs

type KeyPairArgs struct {
	// The name of the key pair.
	KeyPairName pulumi.StringInput
	// The version number.
	Version pulumi.StringInput
}

The set of arguments for constructing a KeyPair resource.

func (KeyPairArgs) ElementType

func (KeyPairArgs) ElementType() reflect.Type

type KeyPairArray

type KeyPairArray []KeyPairInput

func (KeyPairArray) ElementType

func (KeyPairArray) ElementType() reflect.Type

func (KeyPairArray) ToKeyPairArrayOutput

func (i KeyPairArray) ToKeyPairArrayOutput() KeyPairArrayOutput

func (KeyPairArray) ToKeyPairArrayOutputWithContext

func (i KeyPairArray) ToKeyPairArrayOutputWithContext(ctx context.Context) KeyPairArrayOutput

type KeyPairArrayInput

type KeyPairArrayInput interface {
	pulumi.Input

	ToKeyPairArrayOutput() KeyPairArrayOutput
	ToKeyPairArrayOutputWithContext(context.Context) KeyPairArrayOutput
}

KeyPairArrayInput is an input type that accepts KeyPairArray and KeyPairArrayOutput values. You can construct a concrete instance of `KeyPairArrayInput` via:

KeyPairArray{ KeyPairArgs{...} }

type KeyPairArrayOutput

type KeyPairArrayOutput struct{ *pulumi.OutputState }

func (KeyPairArrayOutput) ElementType

func (KeyPairArrayOutput) ElementType() reflect.Type

func (KeyPairArrayOutput) Index

func (KeyPairArrayOutput) ToKeyPairArrayOutput

func (o KeyPairArrayOutput) ToKeyPairArrayOutput() KeyPairArrayOutput

func (KeyPairArrayOutput) ToKeyPairArrayOutputWithContext

func (o KeyPairArrayOutput) ToKeyPairArrayOutputWithContext(ctx context.Context) KeyPairArrayOutput

type KeyPairInput

type KeyPairInput interface {
	pulumi.Input

	ToKeyPairOutput() KeyPairOutput
	ToKeyPairOutputWithContext(ctx context.Context) KeyPairOutput
}

type KeyPairMap

type KeyPairMap map[string]KeyPairInput

func (KeyPairMap) ElementType

func (KeyPairMap) ElementType() reflect.Type

func (KeyPairMap) ToKeyPairMapOutput

func (i KeyPairMap) ToKeyPairMapOutput() KeyPairMapOutput

func (KeyPairMap) ToKeyPairMapOutputWithContext

func (i KeyPairMap) ToKeyPairMapOutputWithContext(ctx context.Context) KeyPairMapOutput

type KeyPairMapInput

type KeyPairMapInput interface {
	pulumi.Input

	ToKeyPairMapOutput() KeyPairMapOutput
	ToKeyPairMapOutputWithContext(context.Context) KeyPairMapOutput
}

KeyPairMapInput is an input type that accepts KeyPairMap and KeyPairMapOutput values. You can construct a concrete instance of `KeyPairMapInput` via:

KeyPairMap{ "key": KeyPairArgs{...} }

type KeyPairMapOutput

type KeyPairMapOutput struct{ *pulumi.OutputState }

func (KeyPairMapOutput) ElementType

func (KeyPairMapOutput) ElementType() reflect.Type

func (KeyPairMapOutput) MapIndex

func (KeyPairMapOutput) ToKeyPairMapOutput

func (o KeyPairMapOutput) ToKeyPairMapOutput() KeyPairMapOutput

func (KeyPairMapOutput) ToKeyPairMapOutputWithContext

func (o KeyPairMapOutput) ToKeyPairMapOutputWithContext(ctx context.Context) KeyPairMapOutput

type KeyPairOutput

type KeyPairOutput struct{ *pulumi.OutputState }

func (KeyPairOutput) ElementType

func (KeyPairOutput) ElementType() reflect.Type

func (KeyPairOutput) KeyPairName added in v3.27.0

func (o KeyPairOutput) KeyPairName() pulumi.StringOutput

The name of the key pair.

func (KeyPairOutput) ToKeyPairOutput

func (o KeyPairOutput) ToKeyPairOutput() KeyPairOutput

func (KeyPairOutput) ToKeyPairOutputWithContext

func (o KeyPairOutput) ToKeyPairOutputWithContext(ctx context.Context) KeyPairOutput

func (KeyPairOutput) Version added in v3.27.0

func (o KeyPairOutput) Version() pulumi.StringOutput

The version number.

type KeyPairState

type KeyPairState struct {
	// The name of the key pair.
	KeyPairName pulumi.StringPtrInput
	// The version number.
	Version pulumi.StringPtrInput
}

func (KeyPairState) ElementType

func (KeyPairState) ElementType() reflect.Type

type LoadBalancer added in v3.45.0

type LoadBalancer struct {
	pulumi.CustomResourceState

	// The creation Time (UTC) of the load balancing instance.
	CreateTime pulumi.StringOutput `pulumi:"createTime"`
	// The ID of the ENS node.
	EnsRegionId pulumi.StringOutput `pulumi:"ensRegionId"`
	// Name of the Server Load Balancer instanceRules:The length is 1~80 English or Chinese characters. When this parameter is not specified, the system randomly assigns an instance nameCannot start with `http://` and `https`.
	LoadBalancerName pulumi.StringPtrOutput `pulumi:"loadBalancerName"`
	// Specifications of the Server Load Balancer instance. Valid values: elb.s1.small,elb.s3.medium,elb.s2.small,elb.s2.medium,elb.s3.small.
	LoadBalancerSpec pulumi.StringOutput `pulumi:"loadBalancerSpec"`
	// The network ID of the created edge load balancing (ELB) instance.
	NetworkId pulumi.StringOutput `pulumi:"networkId"`
	// Server Load Balancer Instance Payment Type. Valid value: PayAsYouGo.
	PaymentType pulumi.StringOutput `pulumi:"paymentType"`
	// The status of the SLB instance.
	Status pulumi.StringOutput `pulumi:"status"`
	// The ID of the vSwitch to which the VPC instance belongs.
	VswitchId pulumi.StringOutput `pulumi:"vswitchId"`
}

Provides a ENS Load Balancer resource. Load balancing. When you use it for the first time, please contact the product classmates to add a resource whitelist.

For information about ENS Load Balancer and how to use it, see [What is Load Balancer](https://www.alibabacloud.com/help/en/ens/developer-reference/api-createloadbalancer).

> **NOTE:** Available since v1.213.0.

## Example Usage

Basic Usage

```go package main

import (

"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/ens"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		cfg := config.New(ctx, "")
		name := "terraform-example"
		if param := cfg.Get("name"); param != "" {
			name = param
		}
		network, err := ens.NewNetwork(ctx, "network", &ens.NetworkArgs{
			NetworkName: pulumi.String(name),
			Description: pulumi.String(name),
			CidrBlock:   pulumi.String("192.168.2.0/24"),
			EnsRegionId: pulumi.String("cn-chenzhou-telecom_unicom_cmcc"),
		})
		if err != nil {
			return err
		}
		_, err = ens.NewVswitch(ctx, "switch", &ens.VswitchArgs{
			Description: pulumi.String(name),
			CidrBlock:   pulumi.String("192.168.2.0/24"),
			VswitchName: pulumi.String(name),
			EnsRegionId: pulumi.String("cn-chenzhou-telecom_unicom_cmcc"),
			NetworkId:   network.ID(),
		})
		if err != nil {
			return err
		}
		_, err = ens.NewLoadBalancer(ctx, "default", &ens.LoadBalancerArgs{
			LoadBalancerName: pulumi.String(name),
			PaymentType:      pulumi.String("PayAsYouGo"),
			EnsRegionId:      pulumi.String("cn-chenzhou-telecom_unicom_cmcc"),
			LoadBalancerSpec: pulumi.String("elb.s1.small"),
			VswitchId:        _switch.ID(),
			NetworkId:        network.ID(),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

ENS Load Balancer can be imported using the id, e.g.

```sh $ pulumi import alicloud:ens/loadBalancer:LoadBalancer example <id> ```

func GetLoadBalancer added in v3.45.0

func GetLoadBalancer(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *LoadBalancerState, opts ...pulumi.ResourceOption) (*LoadBalancer, error)

GetLoadBalancer gets an existing LoadBalancer resource's state with the given name, ID, and optional state properties that are used to uniquely qualify the lookup (nil if not required).

func NewLoadBalancer added in v3.45.0

func NewLoadBalancer(ctx *pulumi.Context,
	name string, args *LoadBalancerArgs, opts ...pulumi.ResourceOption) (*LoadBalancer, error)

NewLoadBalancer registers a new resource with the given unique name, arguments, and options.

func (*LoadBalancer) ElementType added in v3.45.0

func (*LoadBalancer) ElementType() reflect.Type

func (*LoadBalancer) ToLoadBalancerOutput added in v3.45.0

func (i *LoadBalancer) ToLoadBalancerOutput() LoadBalancerOutput

func (*LoadBalancer) ToLoadBalancerOutputWithContext added in v3.45.0

func (i *LoadBalancer) ToLoadBalancerOutputWithContext(ctx context.Context) LoadBalancerOutput

type LoadBalancerArgs added in v3.45.0

type LoadBalancerArgs struct {
	// The ID of the ENS node.
	EnsRegionId pulumi.StringInput
	// Name of the Server Load Balancer instanceRules:The length is 1~80 English or Chinese characters. When this parameter is not specified, the system randomly assigns an instance nameCannot start with `http://` and `https`.
	LoadBalancerName pulumi.StringPtrInput
	// Specifications of the Server Load Balancer instance. Valid values: elb.s1.small,elb.s3.medium,elb.s2.small,elb.s2.medium,elb.s3.small.
	LoadBalancerSpec pulumi.StringInput
	// The network ID of the created edge load balancing (ELB) instance.
	NetworkId pulumi.StringInput
	// Server Load Balancer Instance Payment Type. Valid value: PayAsYouGo.
	PaymentType pulumi.StringInput
	// The ID of the vSwitch to which the VPC instance belongs.
	VswitchId pulumi.StringInput
}

The set of arguments for constructing a LoadBalancer resource.

func (LoadBalancerArgs) ElementType added in v3.45.0

func (LoadBalancerArgs) ElementType() reflect.Type

type LoadBalancerArray added in v3.45.0

type LoadBalancerArray []LoadBalancerInput

func (LoadBalancerArray) ElementType added in v3.45.0

func (LoadBalancerArray) ElementType() reflect.Type

func (LoadBalancerArray) ToLoadBalancerArrayOutput added in v3.45.0

func (i LoadBalancerArray) ToLoadBalancerArrayOutput() LoadBalancerArrayOutput

func (LoadBalancerArray) ToLoadBalancerArrayOutputWithContext added in v3.45.0

func (i LoadBalancerArray) ToLoadBalancerArrayOutputWithContext(ctx context.Context) LoadBalancerArrayOutput

type LoadBalancerArrayInput added in v3.45.0

type LoadBalancerArrayInput interface {
	pulumi.Input

	ToLoadBalancerArrayOutput() LoadBalancerArrayOutput
	ToLoadBalancerArrayOutputWithContext(context.Context) LoadBalancerArrayOutput
}

LoadBalancerArrayInput is an input type that accepts LoadBalancerArray and LoadBalancerArrayOutput values. You can construct a concrete instance of `LoadBalancerArrayInput` via:

LoadBalancerArray{ LoadBalancerArgs{...} }

type LoadBalancerArrayOutput added in v3.45.0

type LoadBalancerArrayOutput struct{ *pulumi.OutputState }

func (LoadBalancerArrayOutput) ElementType added in v3.45.0

func (LoadBalancerArrayOutput) ElementType() reflect.Type

func (LoadBalancerArrayOutput) Index added in v3.45.0

func (LoadBalancerArrayOutput) ToLoadBalancerArrayOutput added in v3.45.0

func (o LoadBalancerArrayOutput) ToLoadBalancerArrayOutput() LoadBalancerArrayOutput

func (LoadBalancerArrayOutput) ToLoadBalancerArrayOutputWithContext added in v3.45.0

func (o LoadBalancerArrayOutput) ToLoadBalancerArrayOutputWithContext(ctx context.Context) LoadBalancerArrayOutput

type LoadBalancerInput added in v3.45.0

type LoadBalancerInput interface {
	pulumi.Input

	ToLoadBalancerOutput() LoadBalancerOutput
	ToLoadBalancerOutputWithContext(ctx context.Context) LoadBalancerOutput
}

type LoadBalancerMap added in v3.45.0

type LoadBalancerMap map[string]LoadBalancerInput

func (LoadBalancerMap) ElementType added in v3.45.0

func (LoadBalancerMap) ElementType() reflect.Type

func (LoadBalancerMap) ToLoadBalancerMapOutput added in v3.45.0

func (i LoadBalancerMap) ToLoadBalancerMapOutput() LoadBalancerMapOutput

func (LoadBalancerMap) ToLoadBalancerMapOutputWithContext added in v3.45.0

func (i LoadBalancerMap) ToLoadBalancerMapOutputWithContext(ctx context.Context) LoadBalancerMapOutput

type LoadBalancerMapInput added in v3.45.0

type LoadBalancerMapInput interface {
	pulumi.Input

	ToLoadBalancerMapOutput() LoadBalancerMapOutput
	ToLoadBalancerMapOutputWithContext(context.Context) LoadBalancerMapOutput
}

LoadBalancerMapInput is an input type that accepts LoadBalancerMap and LoadBalancerMapOutput values. You can construct a concrete instance of `LoadBalancerMapInput` via:

LoadBalancerMap{ "key": LoadBalancerArgs{...} }

type LoadBalancerMapOutput added in v3.45.0

type LoadBalancerMapOutput struct{ *pulumi.OutputState }

func (LoadBalancerMapOutput) ElementType added in v3.45.0

func (LoadBalancerMapOutput) ElementType() reflect.Type

func (LoadBalancerMapOutput) MapIndex added in v3.45.0

func (LoadBalancerMapOutput) ToLoadBalancerMapOutput added in v3.45.0

func (o LoadBalancerMapOutput) ToLoadBalancerMapOutput() LoadBalancerMapOutput

func (LoadBalancerMapOutput) ToLoadBalancerMapOutputWithContext added in v3.45.0

func (o LoadBalancerMapOutput) ToLoadBalancerMapOutputWithContext(ctx context.Context) LoadBalancerMapOutput

type LoadBalancerOutput added in v3.45.0

type LoadBalancerOutput struct{ *pulumi.OutputState }

func (LoadBalancerOutput) CreateTime added in v3.45.0

func (o LoadBalancerOutput) CreateTime() pulumi.StringOutput

The creation Time (UTC) of the load balancing instance.

func (LoadBalancerOutput) ElementType added in v3.45.0

func (LoadBalancerOutput) ElementType() reflect.Type

func (LoadBalancerOutput) EnsRegionId added in v3.45.0

func (o LoadBalancerOutput) EnsRegionId() pulumi.StringOutput

The ID of the ENS node.

func (LoadBalancerOutput) LoadBalancerName added in v3.45.0

func (o LoadBalancerOutput) LoadBalancerName() pulumi.StringPtrOutput

Name of the Server Load Balancer instanceRules:The length is 1~80 English or Chinese characters. When this parameter is not specified, the system randomly assigns an instance nameCannot start with `http://` and `https`.

func (LoadBalancerOutput) LoadBalancerSpec added in v3.45.0

func (o LoadBalancerOutput) LoadBalancerSpec() pulumi.StringOutput

Specifications of the Server Load Balancer instance. Valid values: elb.s1.small,elb.s3.medium,elb.s2.small,elb.s2.medium,elb.s3.small.

func (LoadBalancerOutput) NetworkId added in v3.45.0

func (o LoadBalancerOutput) NetworkId() pulumi.StringOutput

The network ID of the created edge load balancing (ELB) instance.

func (LoadBalancerOutput) PaymentType added in v3.45.0

func (o LoadBalancerOutput) PaymentType() pulumi.StringOutput

Server Load Balancer Instance Payment Type. Valid value: PayAsYouGo.

func (LoadBalancerOutput) Status added in v3.45.0

The status of the SLB instance.

func (LoadBalancerOutput) ToLoadBalancerOutput added in v3.45.0

func (o LoadBalancerOutput) ToLoadBalancerOutput() LoadBalancerOutput

func (LoadBalancerOutput) ToLoadBalancerOutputWithContext added in v3.45.0

func (o LoadBalancerOutput) ToLoadBalancerOutputWithContext(ctx context.Context) LoadBalancerOutput

func (LoadBalancerOutput) VswitchId added in v3.45.0

func (o LoadBalancerOutput) VswitchId() pulumi.StringOutput

The ID of the vSwitch to which the VPC instance belongs.

type LoadBalancerState added in v3.45.0

type LoadBalancerState struct {
	// The creation Time (UTC) of the load balancing instance.
	CreateTime pulumi.StringPtrInput
	// The ID of the ENS node.
	EnsRegionId pulumi.StringPtrInput
	// Name of the Server Load Balancer instanceRules:The length is 1~80 English or Chinese characters. When this parameter is not specified, the system randomly assigns an instance nameCannot start with `http://` and `https`.
	LoadBalancerName pulumi.StringPtrInput
	// Specifications of the Server Load Balancer instance. Valid values: elb.s1.small,elb.s3.medium,elb.s2.small,elb.s2.medium,elb.s3.small.
	LoadBalancerSpec pulumi.StringPtrInput
	// The network ID of the created edge load balancing (ELB) instance.
	NetworkId pulumi.StringPtrInput
	// Server Load Balancer Instance Payment Type. Valid value: PayAsYouGo.
	PaymentType pulumi.StringPtrInput
	// The status of the SLB instance.
	Status pulumi.StringPtrInput
	// The ID of the vSwitch to which the VPC instance belongs.
	VswitchId pulumi.StringPtrInput
}

func (LoadBalancerState) ElementType added in v3.45.0

func (LoadBalancerState) ElementType() reflect.Type

type Network added in v3.45.0

type Network struct {
	pulumi.CustomResourceState

	// The network segment of the network. You can use the following network segments or a subset of them as the network segment: `10.0.0.0/8` (default), `172.16.0.0/12`, `192.168.0.0/16`.
	CidrBlock pulumi.StringOutput `pulumi:"cidrBlock"`
	// Creation time, timestamp (MS).
	CreateTime pulumi.StringOutput `pulumi:"createTime"`
	// Description information.Rules:It must be 2 to 256 characters in length and must start with a letter or Chinese, but cannot start with `http://` or `https://`. Example value: this is my first network.
	Description pulumi.StringPtrOutput `pulumi:"description"`
	// Ens node IDExample value: cn-beijing-telecom.
	EnsRegionId pulumi.StringOutput `pulumi:"ensRegionId"`
	// Name of the network instanceThe naming rules are as follows: 1. Length is 2~128 English or Chinese characters; 2. It must start with a large or small letter or Chinese, not with `http://` and `https://`; 3. Can contain numbers, colons (:), underscores (_), or dashes (-).
	NetworkName pulumi.StringPtrOutput `pulumi:"networkName"`
	// The status of the network instance. Pending: Configuring, Available: Available.
	Status pulumi.StringOutput `pulumi:"status"`
}

Provides a ENS Network resource.

For information about ENS Network and how to use it, see [What is Network](https://www.alibabacloud.com/help/en/ens/developer-reference/api-createnetwork-1).

> **NOTE:** Available since v1.213.0.

## Example Usage

Basic Usage

```go package main

import (

"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/ens"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		cfg := config.New(ctx, "")
		name := "terraform-example"
		if param := cfg.Get("name"); param != "" {
			name = param
		}
		_, err := ens.NewNetwork(ctx, "default", &ens.NetworkArgs{
			NetworkName: pulumi.String(name),
			Description: pulumi.String(name),
			CidrBlock:   pulumi.String("192.168.2.0/24"),
			EnsRegionId: pulumi.String("cn-chenzhou-telecom_unicom_cmcc"),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

ENS Network can be imported using the id, e.g.

```sh $ pulumi import alicloud:ens/network:Network example <id> ```

func GetNetwork added in v3.45.0

func GetNetwork(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *NetworkState, opts ...pulumi.ResourceOption) (*Network, error)

GetNetwork gets an existing Network resource's state with the given name, ID, and optional state properties that are used to uniquely qualify the lookup (nil if not required).

func NewNetwork added in v3.45.0

func NewNetwork(ctx *pulumi.Context,
	name string, args *NetworkArgs, opts ...pulumi.ResourceOption) (*Network, error)

NewNetwork registers a new resource with the given unique name, arguments, and options.

func (*Network) ElementType added in v3.45.0

func (*Network) ElementType() reflect.Type

func (*Network) ToNetworkOutput added in v3.45.0

func (i *Network) ToNetworkOutput() NetworkOutput

func (*Network) ToNetworkOutputWithContext added in v3.45.0

func (i *Network) ToNetworkOutputWithContext(ctx context.Context) NetworkOutput

type NetworkArgs added in v3.45.0

type NetworkArgs struct {
	// The network segment of the network. You can use the following network segments or a subset of them as the network segment: `10.0.0.0/8` (default), `172.16.0.0/12`, `192.168.0.0/16`.
	CidrBlock pulumi.StringInput
	// Description information.Rules:It must be 2 to 256 characters in length and must start with a letter or Chinese, but cannot start with `http://` or `https://`. Example value: this is my first network.
	Description pulumi.StringPtrInput
	// Ens node IDExample value: cn-beijing-telecom.
	EnsRegionId pulumi.StringInput
	// Name of the network instanceThe naming rules are as follows: 1. Length is 2~128 English or Chinese characters; 2. It must start with a large or small letter or Chinese, not with `http://` and `https://`; 3. Can contain numbers, colons (:), underscores (_), or dashes (-).
	NetworkName pulumi.StringPtrInput
}

The set of arguments for constructing a Network resource.

func (NetworkArgs) ElementType added in v3.45.0

func (NetworkArgs) ElementType() reflect.Type

type NetworkArray added in v3.45.0

type NetworkArray []NetworkInput

func (NetworkArray) ElementType added in v3.45.0

func (NetworkArray) ElementType() reflect.Type

func (NetworkArray) ToNetworkArrayOutput added in v3.45.0

func (i NetworkArray) ToNetworkArrayOutput() NetworkArrayOutput

func (NetworkArray) ToNetworkArrayOutputWithContext added in v3.45.0

func (i NetworkArray) ToNetworkArrayOutputWithContext(ctx context.Context) NetworkArrayOutput

type NetworkArrayInput added in v3.45.0

type NetworkArrayInput interface {
	pulumi.Input

	ToNetworkArrayOutput() NetworkArrayOutput
	ToNetworkArrayOutputWithContext(context.Context) NetworkArrayOutput
}

NetworkArrayInput is an input type that accepts NetworkArray and NetworkArrayOutput values. You can construct a concrete instance of `NetworkArrayInput` via:

NetworkArray{ NetworkArgs{...} }

type NetworkArrayOutput added in v3.45.0

type NetworkArrayOutput struct{ *pulumi.OutputState }

func (NetworkArrayOutput) ElementType added in v3.45.0

func (NetworkArrayOutput) ElementType() reflect.Type

func (NetworkArrayOutput) Index added in v3.45.0

func (NetworkArrayOutput) ToNetworkArrayOutput added in v3.45.0

func (o NetworkArrayOutput) ToNetworkArrayOutput() NetworkArrayOutput

func (NetworkArrayOutput) ToNetworkArrayOutputWithContext added in v3.45.0

func (o NetworkArrayOutput) ToNetworkArrayOutputWithContext(ctx context.Context) NetworkArrayOutput

type NetworkInput added in v3.45.0

type NetworkInput interface {
	pulumi.Input

	ToNetworkOutput() NetworkOutput
	ToNetworkOutputWithContext(ctx context.Context) NetworkOutput
}

type NetworkMap added in v3.45.0

type NetworkMap map[string]NetworkInput

func (NetworkMap) ElementType added in v3.45.0

func (NetworkMap) ElementType() reflect.Type

func (NetworkMap) ToNetworkMapOutput added in v3.45.0

func (i NetworkMap) ToNetworkMapOutput() NetworkMapOutput

func (NetworkMap) ToNetworkMapOutputWithContext added in v3.45.0

func (i NetworkMap) ToNetworkMapOutputWithContext(ctx context.Context) NetworkMapOutput

type NetworkMapInput added in v3.45.0

type NetworkMapInput interface {
	pulumi.Input

	ToNetworkMapOutput() NetworkMapOutput
	ToNetworkMapOutputWithContext(context.Context) NetworkMapOutput
}

NetworkMapInput is an input type that accepts NetworkMap and NetworkMapOutput values. You can construct a concrete instance of `NetworkMapInput` via:

NetworkMap{ "key": NetworkArgs{...} }

type NetworkMapOutput added in v3.45.0

type NetworkMapOutput struct{ *pulumi.OutputState }

func (NetworkMapOutput) ElementType added in v3.45.0

func (NetworkMapOutput) ElementType() reflect.Type

func (NetworkMapOutput) MapIndex added in v3.45.0

func (NetworkMapOutput) ToNetworkMapOutput added in v3.45.0

func (o NetworkMapOutput) ToNetworkMapOutput() NetworkMapOutput

func (NetworkMapOutput) ToNetworkMapOutputWithContext added in v3.45.0

func (o NetworkMapOutput) ToNetworkMapOutputWithContext(ctx context.Context) NetworkMapOutput

type NetworkOutput added in v3.45.0

type NetworkOutput struct{ *pulumi.OutputState }

func (NetworkOutput) CidrBlock added in v3.45.0

func (o NetworkOutput) CidrBlock() pulumi.StringOutput

The network segment of the network. You can use the following network segments or a subset of them as the network segment: `10.0.0.0/8` (default), `172.16.0.0/12`, `192.168.0.0/16`.

func (NetworkOutput) CreateTime added in v3.45.0

func (o NetworkOutput) CreateTime() pulumi.StringOutput

Creation time, timestamp (MS).

func (NetworkOutput) Description added in v3.45.0

func (o NetworkOutput) Description() pulumi.StringPtrOutput

Description information.Rules:It must be 2 to 256 characters in length and must start with a letter or Chinese, but cannot start with `http://` or `https://`. Example value: this is my first network.

func (NetworkOutput) ElementType added in v3.45.0

func (NetworkOutput) ElementType() reflect.Type

func (NetworkOutput) EnsRegionId added in v3.45.0

func (o NetworkOutput) EnsRegionId() pulumi.StringOutput

Ens node IDExample value: cn-beijing-telecom.

func (NetworkOutput) NetworkName added in v3.45.0

func (o NetworkOutput) NetworkName() pulumi.StringPtrOutput

Name of the network instanceThe naming rules are as follows: 1. Length is 2~128 English or Chinese characters; 2. It must start with a large or small letter or Chinese, not with `http://` and `https://`; 3. Can contain numbers, colons (:), underscores (_), or dashes (-).

func (NetworkOutput) Status added in v3.45.0

func (o NetworkOutput) Status() pulumi.StringOutput

The status of the network instance. Pending: Configuring, Available: Available.

func (NetworkOutput) ToNetworkOutput added in v3.45.0

func (o NetworkOutput) ToNetworkOutput() NetworkOutput

func (NetworkOutput) ToNetworkOutputWithContext added in v3.45.0

func (o NetworkOutput) ToNetworkOutputWithContext(ctx context.Context) NetworkOutput

type NetworkState added in v3.45.0

type NetworkState struct {
	// The network segment of the network. You can use the following network segments or a subset of them as the network segment: `10.0.0.0/8` (default), `172.16.0.0/12`, `192.168.0.0/16`.
	CidrBlock pulumi.StringPtrInput
	// Creation time, timestamp (MS).
	CreateTime pulumi.StringPtrInput
	// Description information.Rules:It must be 2 to 256 characters in length and must start with a letter or Chinese, but cannot start with `http://` or `https://`. Example value: this is my first network.
	Description pulumi.StringPtrInput
	// Ens node IDExample value: cn-beijing-telecom.
	EnsRegionId pulumi.StringPtrInput
	// Name of the network instanceThe naming rules are as follows: 1. Length is 2~128 English or Chinese characters; 2. It must start with a large or small letter or Chinese, not with `http://` and `https://`; 3. Can contain numbers, colons (:), underscores (_), or dashes (-).
	NetworkName pulumi.StringPtrInput
	// The status of the network instance. Pending: Configuring, Available: Available.
	Status pulumi.StringPtrInput
}

func (NetworkState) ElementType added in v3.45.0

func (NetworkState) ElementType() reflect.Type

type SecurityGroup added in v3.45.0

type SecurityGroup struct {
	pulumi.CustomResourceState

	// Security group description informationIt must be 2 to 256 characters in length and must start with a letter or Chinese, but cannot start with `http://` or `https://`.
	Description pulumi.StringPtrOutput `pulumi:"description"`
	// Security group nameThe security group name. The length is 2~128 English or Chinese characters. It must start with an uppercase or lowcase letter or a Chinese character and cannot start with `http://` or `https`. Can contain digits, colons (:), underscores (_), or hyphens (-).
	SecurityGroupName pulumi.StringPtrOutput `pulumi:"securityGroupName"`
}

Provides a ENS Security Group resource.

For information about ENS Security Group and how to use it, see [What is Security Group](https://www.alibabacloud.com/help/en/ens/developer-reference/api-createsnapshot).

> **NOTE:** Available since v1.213.0.

## Example Usage

Basic Usage

```go package main

import (

"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/ens"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		cfg := config.New(ctx, "")
		name := "terraform-example"
		if param := cfg.Get("name"); param != "" {
			name = param
		}
		_, err := ens.NewSecurityGroup(ctx, "default", &ens.SecurityGroupArgs{
			Description:       pulumi.String(name),
			SecurityGroupName: pulumi.String(name),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

ENS Security Group can be imported using the id, e.g.

```sh $ pulumi import alicloud:ens/securityGroup:SecurityGroup example <id> ```

func GetSecurityGroup added in v3.45.0

func GetSecurityGroup(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *SecurityGroupState, opts ...pulumi.ResourceOption) (*SecurityGroup, error)

GetSecurityGroup gets an existing SecurityGroup resource's state with the given name, ID, and optional state properties that are used to uniquely qualify the lookup (nil if not required).

func NewSecurityGroup added in v3.45.0

func NewSecurityGroup(ctx *pulumi.Context,
	name string, args *SecurityGroupArgs, opts ...pulumi.ResourceOption) (*SecurityGroup, error)

NewSecurityGroup registers a new resource with the given unique name, arguments, and options.

func (*SecurityGroup) ElementType added in v3.45.0

func (*SecurityGroup) ElementType() reflect.Type

func (*SecurityGroup) ToSecurityGroupOutput added in v3.45.0

func (i *SecurityGroup) ToSecurityGroupOutput() SecurityGroupOutput

func (*SecurityGroup) ToSecurityGroupOutputWithContext added in v3.45.0

func (i *SecurityGroup) ToSecurityGroupOutputWithContext(ctx context.Context) SecurityGroupOutput

type SecurityGroupArgs added in v3.45.0

type SecurityGroupArgs struct {
	// Security group description informationIt must be 2 to 256 characters in length and must start with a letter or Chinese, but cannot start with `http://` or `https://`.
	Description pulumi.StringPtrInput
	// Security group nameThe security group name. The length is 2~128 English or Chinese characters. It must start with an uppercase or lowcase letter or a Chinese character and cannot start with `http://` or `https`. Can contain digits, colons (:), underscores (_), or hyphens (-).
	SecurityGroupName pulumi.StringPtrInput
}

The set of arguments for constructing a SecurityGroup resource.

func (SecurityGroupArgs) ElementType added in v3.45.0

func (SecurityGroupArgs) ElementType() reflect.Type

type SecurityGroupArray added in v3.45.0

type SecurityGroupArray []SecurityGroupInput

func (SecurityGroupArray) ElementType added in v3.45.0

func (SecurityGroupArray) ElementType() reflect.Type

func (SecurityGroupArray) ToSecurityGroupArrayOutput added in v3.45.0

func (i SecurityGroupArray) ToSecurityGroupArrayOutput() SecurityGroupArrayOutput

func (SecurityGroupArray) ToSecurityGroupArrayOutputWithContext added in v3.45.0

func (i SecurityGroupArray) ToSecurityGroupArrayOutputWithContext(ctx context.Context) SecurityGroupArrayOutput

type SecurityGroupArrayInput added in v3.45.0

type SecurityGroupArrayInput interface {
	pulumi.Input

	ToSecurityGroupArrayOutput() SecurityGroupArrayOutput
	ToSecurityGroupArrayOutputWithContext(context.Context) SecurityGroupArrayOutput
}

SecurityGroupArrayInput is an input type that accepts SecurityGroupArray and SecurityGroupArrayOutput values. You can construct a concrete instance of `SecurityGroupArrayInput` via:

SecurityGroupArray{ SecurityGroupArgs{...} }

type SecurityGroupArrayOutput added in v3.45.0

type SecurityGroupArrayOutput struct{ *pulumi.OutputState }

func (SecurityGroupArrayOutput) ElementType added in v3.45.0

func (SecurityGroupArrayOutput) ElementType() reflect.Type

func (SecurityGroupArrayOutput) Index added in v3.45.0

func (SecurityGroupArrayOutput) ToSecurityGroupArrayOutput added in v3.45.0

func (o SecurityGroupArrayOutput) ToSecurityGroupArrayOutput() SecurityGroupArrayOutput

func (SecurityGroupArrayOutput) ToSecurityGroupArrayOutputWithContext added in v3.45.0

func (o SecurityGroupArrayOutput) ToSecurityGroupArrayOutputWithContext(ctx context.Context) SecurityGroupArrayOutput

type SecurityGroupInput added in v3.45.0

type SecurityGroupInput interface {
	pulumi.Input

	ToSecurityGroupOutput() SecurityGroupOutput
	ToSecurityGroupOutputWithContext(ctx context.Context) SecurityGroupOutput
}

type SecurityGroupMap added in v3.45.0

type SecurityGroupMap map[string]SecurityGroupInput

func (SecurityGroupMap) ElementType added in v3.45.0

func (SecurityGroupMap) ElementType() reflect.Type

func (SecurityGroupMap) ToSecurityGroupMapOutput added in v3.45.0

func (i SecurityGroupMap) ToSecurityGroupMapOutput() SecurityGroupMapOutput

func (SecurityGroupMap) ToSecurityGroupMapOutputWithContext added in v3.45.0

func (i SecurityGroupMap) ToSecurityGroupMapOutputWithContext(ctx context.Context) SecurityGroupMapOutput

type SecurityGroupMapInput added in v3.45.0

type SecurityGroupMapInput interface {
	pulumi.Input

	ToSecurityGroupMapOutput() SecurityGroupMapOutput
	ToSecurityGroupMapOutputWithContext(context.Context) SecurityGroupMapOutput
}

SecurityGroupMapInput is an input type that accepts SecurityGroupMap and SecurityGroupMapOutput values. You can construct a concrete instance of `SecurityGroupMapInput` via:

SecurityGroupMap{ "key": SecurityGroupArgs{...} }

type SecurityGroupMapOutput added in v3.45.0

type SecurityGroupMapOutput struct{ *pulumi.OutputState }

func (SecurityGroupMapOutput) ElementType added in v3.45.0

func (SecurityGroupMapOutput) ElementType() reflect.Type

func (SecurityGroupMapOutput) MapIndex added in v3.45.0

func (SecurityGroupMapOutput) ToSecurityGroupMapOutput added in v3.45.0

func (o SecurityGroupMapOutput) ToSecurityGroupMapOutput() SecurityGroupMapOutput

func (SecurityGroupMapOutput) ToSecurityGroupMapOutputWithContext added in v3.45.0

func (o SecurityGroupMapOutput) ToSecurityGroupMapOutputWithContext(ctx context.Context) SecurityGroupMapOutput

type SecurityGroupOutput added in v3.45.0

type SecurityGroupOutput struct{ *pulumi.OutputState }

func (SecurityGroupOutput) Description added in v3.45.0

func (o SecurityGroupOutput) Description() pulumi.StringPtrOutput

Security group description informationIt must be 2 to 256 characters in length and must start with a letter or Chinese, but cannot start with `http://` or `https://`.

func (SecurityGroupOutput) ElementType added in v3.45.0

func (SecurityGroupOutput) ElementType() reflect.Type

func (SecurityGroupOutput) SecurityGroupName added in v3.45.0

func (o SecurityGroupOutput) SecurityGroupName() pulumi.StringPtrOutput

Security group nameThe security group name. The length is 2~128 English or Chinese characters. It must start with an uppercase or lowcase letter or a Chinese character and cannot start with `http://` or `https`. Can contain digits, colons (:), underscores (_), or hyphens (-).

func (SecurityGroupOutput) ToSecurityGroupOutput added in v3.45.0

func (o SecurityGroupOutput) ToSecurityGroupOutput() SecurityGroupOutput

func (SecurityGroupOutput) ToSecurityGroupOutputWithContext added in v3.45.0

func (o SecurityGroupOutput) ToSecurityGroupOutputWithContext(ctx context.Context) SecurityGroupOutput

type SecurityGroupState added in v3.45.0

type SecurityGroupState struct {
	// Security group description informationIt must be 2 to 256 characters in length and must start with a letter or Chinese, but cannot start with `http://` or `https://`.
	Description pulumi.StringPtrInput
	// Security group nameThe security group name. The length is 2~128 English or Chinese characters. It must start with an uppercase or lowcase letter or a Chinese character and cannot start with `http://` or `https`. Can contain digits, colons (:), underscores (_), or hyphens (-).
	SecurityGroupName pulumi.StringPtrInput
}

func (SecurityGroupState) ElementType added in v3.45.0

func (SecurityGroupState) ElementType() reflect.Type

type Snapshot added in v3.45.0

type Snapshot struct {
	pulumi.CustomResourceState

	// Instance creation timeIt is expressed in accordance with the ISO8601 standard and uses UTC +0 time in the format of yyyy-MM-ddTHH:mm:ssZ.Example value: 2020-08-20 T14:52:28Z.
	CreateTime pulumi.StringOutput `pulumi:"createTime"`
	// Snapshot Description Information.
	Description pulumi.StringPtrOutput `pulumi:"description"`
	// Cloud Disk ID.
	DiskId pulumi.StringOutput `pulumi:"diskId"`
	// The node ID of ENS.
	EnsRegionId pulumi.StringOutput `pulumi:"ensRegionId"`
	// Name of the snapshot instance.
	SnapshotName pulumi.StringPtrOutput `pulumi:"snapshotName"`
	// Snapshot Status. Valid values: creating, available, deleting, error.
	Status pulumi.StringOutput `pulumi:"status"`
}

Provides a ENS Snapshot resource. Snapshot. When you use it for the first time, please contact the product classmates to add a resource whitelist.

For information about ENS Snapshot and how to use it, see [What is Snapshot](https://www.alibabacloud.com/help/en/ens/developer-reference/api-createsnapshot).

> **NOTE:** Available since v1.213.0.

## Example Usage

Basic Usage

```go package main

import (

"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/ens"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		cfg := config.New(ctx, "")
		name := "terraform-example"
		if param := cfg.Get("name"); param != "" {
			name = param
		}
		disk, err := ens.NewDisk(ctx, "disk", &ens.DiskArgs{
			Category:    pulumi.String("cloud_efficiency"),
			Size:        pulumi.Int(20),
			PaymentType: pulumi.String("PayAsYouGo"),
			EnsRegionId: pulumi.String("ch-zurich-1"),
		})
		if err != nil {
			return err
		}
		_, err = ens.NewSnapshot(ctx, "default", &ens.SnapshotArgs{
			Description:  pulumi.String(name),
			EnsRegionId:  pulumi.String("ch-zurich-1"),
			SnapshotName: pulumi.String(name),
			DiskId:       disk.ID(),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

ENS Snapshot can be imported using the id, e.g.

```sh $ pulumi import alicloud:ens/snapshot:Snapshot example <id> ```

func GetSnapshot added in v3.45.0

func GetSnapshot(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *SnapshotState, opts ...pulumi.ResourceOption) (*Snapshot, error)

GetSnapshot gets an existing Snapshot resource's state with the given name, ID, and optional state properties that are used to uniquely qualify the lookup (nil if not required).

func NewSnapshot added in v3.45.0

func NewSnapshot(ctx *pulumi.Context,
	name string, args *SnapshotArgs, opts ...pulumi.ResourceOption) (*Snapshot, error)

NewSnapshot registers a new resource with the given unique name, arguments, and options.

func (*Snapshot) ElementType added in v3.45.0

func (*Snapshot) ElementType() reflect.Type

func (*Snapshot) ToSnapshotOutput added in v3.45.0

func (i *Snapshot) ToSnapshotOutput() SnapshotOutput

func (*Snapshot) ToSnapshotOutputWithContext added in v3.45.0

func (i *Snapshot) ToSnapshotOutputWithContext(ctx context.Context) SnapshotOutput

type SnapshotArgs added in v3.45.0

type SnapshotArgs struct {
	// Snapshot Description Information.
	Description pulumi.StringPtrInput
	// Cloud Disk ID.
	DiskId pulumi.StringInput
	// The node ID of ENS.
	EnsRegionId pulumi.StringInput
	// Name of the snapshot instance.
	SnapshotName pulumi.StringPtrInput
}

The set of arguments for constructing a Snapshot resource.

func (SnapshotArgs) ElementType added in v3.45.0

func (SnapshotArgs) ElementType() reflect.Type

type SnapshotArray added in v3.45.0

type SnapshotArray []SnapshotInput

func (SnapshotArray) ElementType added in v3.45.0

func (SnapshotArray) ElementType() reflect.Type

func (SnapshotArray) ToSnapshotArrayOutput added in v3.45.0

func (i SnapshotArray) ToSnapshotArrayOutput() SnapshotArrayOutput

func (SnapshotArray) ToSnapshotArrayOutputWithContext added in v3.45.0

func (i SnapshotArray) ToSnapshotArrayOutputWithContext(ctx context.Context) SnapshotArrayOutput

type SnapshotArrayInput added in v3.45.0

type SnapshotArrayInput interface {
	pulumi.Input

	ToSnapshotArrayOutput() SnapshotArrayOutput
	ToSnapshotArrayOutputWithContext(context.Context) SnapshotArrayOutput
}

SnapshotArrayInput is an input type that accepts SnapshotArray and SnapshotArrayOutput values. You can construct a concrete instance of `SnapshotArrayInput` via:

SnapshotArray{ SnapshotArgs{...} }

type SnapshotArrayOutput added in v3.45.0

type SnapshotArrayOutput struct{ *pulumi.OutputState }

func (SnapshotArrayOutput) ElementType added in v3.45.0

func (SnapshotArrayOutput) ElementType() reflect.Type

func (SnapshotArrayOutput) Index added in v3.45.0

func (SnapshotArrayOutput) ToSnapshotArrayOutput added in v3.45.0

func (o SnapshotArrayOutput) ToSnapshotArrayOutput() SnapshotArrayOutput

func (SnapshotArrayOutput) ToSnapshotArrayOutputWithContext added in v3.45.0

func (o SnapshotArrayOutput) ToSnapshotArrayOutputWithContext(ctx context.Context) SnapshotArrayOutput

type SnapshotInput added in v3.45.0

type SnapshotInput interface {
	pulumi.Input

	ToSnapshotOutput() SnapshotOutput
	ToSnapshotOutputWithContext(ctx context.Context) SnapshotOutput
}

type SnapshotMap added in v3.45.0

type SnapshotMap map[string]SnapshotInput

func (SnapshotMap) ElementType added in v3.45.0

func (SnapshotMap) ElementType() reflect.Type

func (SnapshotMap) ToSnapshotMapOutput added in v3.45.0

func (i SnapshotMap) ToSnapshotMapOutput() SnapshotMapOutput

func (SnapshotMap) ToSnapshotMapOutputWithContext added in v3.45.0

func (i SnapshotMap) ToSnapshotMapOutputWithContext(ctx context.Context) SnapshotMapOutput

type SnapshotMapInput added in v3.45.0

type SnapshotMapInput interface {
	pulumi.Input

	ToSnapshotMapOutput() SnapshotMapOutput
	ToSnapshotMapOutputWithContext(context.Context) SnapshotMapOutput
}

SnapshotMapInput is an input type that accepts SnapshotMap and SnapshotMapOutput values. You can construct a concrete instance of `SnapshotMapInput` via:

SnapshotMap{ "key": SnapshotArgs{...} }

type SnapshotMapOutput added in v3.45.0

type SnapshotMapOutput struct{ *pulumi.OutputState }

func (SnapshotMapOutput) ElementType added in v3.45.0

func (SnapshotMapOutput) ElementType() reflect.Type

func (SnapshotMapOutput) MapIndex added in v3.45.0

func (SnapshotMapOutput) ToSnapshotMapOutput added in v3.45.0

func (o SnapshotMapOutput) ToSnapshotMapOutput() SnapshotMapOutput

func (SnapshotMapOutput) ToSnapshotMapOutputWithContext added in v3.45.0

func (o SnapshotMapOutput) ToSnapshotMapOutputWithContext(ctx context.Context) SnapshotMapOutput

type SnapshotOutput added in v3.45.0

type SnapshotOutput struct{ *pulumi.OutputState }

func (SnapshotOutput) CreateTime added in v3.45.0

func (o SnapshotOutput) CreateTime() pulumi.StringOutput

Instance creation timeIt is expressed in accordance with the ISO8601 standard and uses UTC +0 time in the format of yyyy-MM-ddTHH:mm:ssZ.Example value: 2020-08-20 T14:52:28Z.

func (SnapshotOutput) Description added in v3.45.0

func (o SnapshotOutput) Description() pulumi.StringPtrOutput

Snapshot Description Information.

func (SnapshotOutput) DiskId added in v3.45.0

func (o SnapshotOutput) DiskId() pulumi.StringOutput

Cloud Disk ID.

func (SnapshotOutput) ElementType added in v3.45.0

func (SnapshotOutput) ElementType() reflect.Type

func (SnapshotOutput) EnsRegionId added in v3.45.0

func (o SnapshotOutput) EnsRegionId() pulumi.StringOutput

The node ID of ENS.

func (SnapshotOutput) SnapshotName added in v3.45.0

func (o SnapshotOutput) SnapshotName() pulumi.StringPtrOutput

Name of the snapshot instance.

func (SnapshotOutput) Status added in v3.45.0

func (o SnapshotOutput) Status() pulumi.StringOutput

Snapshot Status. Valid values: creating, available, deleting, error.

func (SnapshotOutput) ToSnapshotOutput added in v3.45.0

func (o SnapshotOutput) ToSnapshotOutput() SnapshotOutput

func (SnapshotOutput) ToSnapshotOutputWithContext added in v3.45.0

func (o SnapshotOutput) ToSnapshotOutputWithContext(ctx context.Context) SnapshotOutput

type SnapshotState added in v3.45.0

type SnapshotState struct {
	// Instance creation timeIt is expressed in accordance with the ISO8601 standard and uses UTC +0 time in the format of yyyy-MM-ddTHH:mm:ssZ.Example value: 2020-08-20 T14:52:28Z.
	CreateTime pulumi.StringPtrInput
	// Snapshot Description Information.
	Description pulumi.StringPtrInput
	// Cloud Disk ID.
	DiskId pulumi.StringPtrInput
	// The node ID of ENS.
	EnsRegionId pulumi.StringPtrInput
	// Name of the snapshot instance.
	SnapshotName pulumi.StringPtrInput
	// Snapshot Status. Valid values: creating, available, deleting, error.
	Status pulumi.StringPtrInput
}

func (SnapshotState) ElementType added in v3.45.0

func (SnapshotState) ElementType() reflect.Type

type Vswitch added in v3.45.0

type Vswitch struct {
	pulumi.CustomResourceState

	// IPv4 CIDR block of the VSwitch instance.
	CidrBlock pulumi.StringOutput `pulumi:"cidrBlock"`
	// The creation time of the VSwitch instance, in the UTC time format, yyyy-MM-ddTHH:mm:ssZ.
	CreateTime pulumi.StringOutput `pulumi:"createTime"`
	// Description of the VSwitch Instance.
	Description pulumi.StringPtrOutput `pulumi:"description"`
	// ENS Region ID.
	EnsRegionId pulumi.StringOutput `pulumi:"ensRegionId"`
	// Network ID of the VSwitch instance.
	NetworkId pulumi.StringOutput `pulumi:"networkId"`
	// Status of the switch instance.
	Status pulumi.StringOutput `pulumi:"status"`
	// Name of the switch instance.
	VswitchName pulumi.StringPtrOutput `pulumi:"vswitchName"`
}

Provides a ENS Vswitch resource.

For information about ENS Vswitch and how to use it, see [What is Vswitch](https://www.alibabacloud.com/help/en/ens/developer-reference/api-createvswitch).

> **NOTE:** Available since v1.213.0.

## Example Usage

Basic Usage

```go package main

import (

"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/ens"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		cfg := config.New(ctx, "")
		name := "terraform-example"
		if param := cfg.Get("name"); param != "" {
			name = param
		}
		_, err := ens.NewNetwork(ctx, "default", &ens.NetworkArgs{
			NetworkName: pulumi.String(name),
			Description: pulumi.String(name),
			CidrBlock:   pulumi.String("192.168.2.0/24"),
			EnsRegionId: pulumi.String("cn-chenzhou-telecom_unicom_cmcc"),
		})
		if err != nil {
			return err
		}
		_, err = ens.NewVswitch(ctx, "default", &ens.VswitchArgs{
			Description: pulumi.String(name),
			CidrBlock:   pulumi.String("192.168.2.0/24"),
			VswitchName: pulumi.String(name),
			EnsRegionId: pulumi.String("cn-chenzhou-telecom_unicom_cmcc"),
			NetworkId:   _default.ID(),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

ENS Vswitch can be imported using the id, e.g.

```sh $ pulumi import alicloud:ens/vswitch:Vswitch example <id> ```

func GetVswitch added in v3.45.0

func GetVswitch(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *VswitchState, opts ...pulumi.ResourceOption) (*Vswitch, error)

GetVswitch gets an existing Vswitch resource's state with the given name, ID, and optional state properties that are used to uniquely qualify the lookup (nil if not required).

func NewVswitch added in v3.45.0

func NewVswitch(ctx *pulumi.Context,
	name string, args *VswitchArgs, opts ...pulumi.ResourceOption) (*Vswitch, error)

NewVswitch registers a new resource with the given unique name, arguments, and options.

func (*Vswitch) ElementType added in v3.45.0

func (*Vswitch) ElementType() reflect.Type

func (*Vswitch) ToVswitchOutput added in v3.45.0

func (i *Vswitch) ToVswitchOutput() VswitchOutput

func (*Vswitch) ToVswitchOutputWithContext added in v3.45.0

func (i *Vswitch) ToVswitchOutputWithContext(ctx context.Context) VswitchOutput

type VswitchArgs added in v3.45.0

type VswitchArgs struct {
	// IPv4 CIDR block of the VSwitch instance.
	CidrBlock pulumi.StringInput
	// Description of the VSwitch Instance.
	Description pulumi.StringPtrInput
	// ENS Region ID.
	EnsRegionId pulumi.StringInput
	// Network ID of the VSwitch instance.
	NetworkId pulumi.StringPtrInput
	// Name of the switch instance.
	VswitchName pulumi.StringPtrInput
}

The set of arguments for constructing a Vswitch resource.

func (VswitchArgs) ElementType added in v3.45.0

func (VswitchArgs) ElementType() reflect.Type

type VswitchArray added in v3.45.0

type VswitchArray []VswitchInput

func (VswitchArray) ElementType added in v3.45.0

func (VswitchArray) ElementType() reflect.Type

func (VswitchArray) ToVswitchArrayOutput added in v3.45.0

func (i VswitchArray) ToVswitchArrayOutput() VswitchArrayOutput

func (VswitchArray) ToVswitchArrayOutputWithContext added in v3.45.0

func (i VswitchArray) ToVswitchArrayOutputWithContext(ctx context.Context) VswitchArrayOutput

type VswitchArrayInput added in v3.45.0

type VswitchArrayInput interface {
	pulumi.Input

	ToVswitchArrayOutput() VswitchArrayOutput
	ToVswitchArrayOutputWithContext(context.Context) VswitchArrayOutput
}

VswitchArrayInput is an input type that accepts VswitchArray and VswitchArrayOutput values. You can construct a concrete instance of `VswitchArrayInput` via:

VswitchArray{ VswitchArgs{...} }

type VswitchArrayOutput added in v3.45.0

type VswitchArrayOutput struct{ *pulumi.OutputState }

func (VswitchArrayOutput) ElementType added in v3.45.0

func (VswitchArrayOutput) ElementType() reflect.Type

func (VswitchArrayOutput) Index added in v3.45.0

func (VswitchArrayOutput) ToVswitchArrayOutput added in v3.45.0

func (o VswitchArrayOutput) ToVswitchArrayOutput() VswitchArrayOutput

func (VswitchArrayOutput) ToVswitchArrayOutputWithContext added in v3.45.0

func (o VswitchArrayOutput) ToVswitchArrayOutputWithContext(ctx context.Context) VswitchArrayOutput

type VswitchInput added in v3.45.0

type VswitchInput interface {
	pulumi.Input

	ToVswitchOutput() VswitchOutput
	ToVswitchOutputWithContext(ctx context.Context) VswitchOutput
}

type VswitchMap added in v3.45.0

type VswitchMap map[string]VswitchInput

func (VswitchMap) ElementType added in v3.45.0

func (VswitchMap) ElementType() reflect.Type

func (VswitchMap) ToVswitchMapOutput added in v3.45.0

func (i VswitchMap) ToVswitchMapOutput() VswitchMapOutput

func (VswitchMap) ToVswitchMapOutputWithContext added in v3.45.0

func (i VswitchMap) ToVswitchMapOutputWithContext(ctx context.Context) VswitchMapOutput

type VswitchMapInput added in v3.45.0

type VswitchMapInput interface {
	pulumi.Input

	ToVswitchMapOutput() VswitchMapOutput
	ToVswitchMapOutputWithContext(context.Context) VswitchMapOutput
}

VswitchMapInput is an input type that accepts VswitchMap and VswitchMapOutput values. You can construct a concrete instance of `VswitchMapInput` via:

VswitchMap{ "key": VswitchArgs{...} }

type VswitchMapOutput added in v3.45.0

type VswitchMapOutput struct{ *pulumi.OutputState }

func (VswitchMapOutput) ElementType added in v3.45.0

func (VswitchMapOutput) ElementType() reflect.Type

func (VswitchMapOutput) MapIndex added in v3.45.0

func (VswitchMapOutput) ToVswitchMapOutput added in v3.45.0

func (o VswitchMapOutput) ToVswitchMapOutput() VswitchMapOutput

func (VswitchMapOutput) ToVswitchMapOutputWithContext added in v3.45.0

func (o VswitchMapOutput) ToVswitchMapOutputWithContext(ctx context.Context) VswitchMapOutput

type VswitchOutput added in v3.45.0

type VswitchOutput struct{ *pulumi.OutputState }

func (VswitchOutput) CidrBlock added in v3.45.0

func (o VswitchOutput) CidrBlock() pulumi.StringOutput

IPv4 CIDR block of the VSwitch instance.

func (VswitchOutput) CreateTime added in v3.45.0

func (o VswitchOutput) CreateTime() pulumi.StringOutput

The creation time of the VSwitch instance, in the UTC time format, yyyy-MM-ddTHH:mm:ssZ.

func (VswitchOutput) Description added in v3.45.0

func (o VswitchOutput) Description() pulumi.StringPtrOutput

Description of the VSwitch Instance.

func (VswitchOutput) ElementType added in v3.45.0

func (VswitchOutput) ElementType() reflect.Type

func (VswitchOutput) EnsRegionId added in v3.45.0

func (o VswitchOutput) EnsRegionId() pulumi.StringOutput

ENS Region ID.

func (VswitchOutput) NetworkId added in v3.45.0

func (o VswitchOutput) NetworkId() pulumi.StringOutput

Network ID of the VSwitch instance.

func (VswitchOutput) Status added in v3.45.0

func (o VswitchOutput) Status() pulumi.StringOutput

Status of the switch instance.

func (VswitchOutput) ToVswitchOutput added in v3.45.0

func (o VswitchOutput) ToVswitchOutput() VswitchOutput

func (VswitchOutput) ToVswitchOutputWithContext added in v3.45.0

func (o VswitchOutput) ToVswitchOutputWithContext(ctx context.Context) VswitchOutput

func (VswitchOutput) VswitchName added in v3.45.0

func (o VswitchOutput) VswitchName() pulumi.StringPtrOutput

Name of the switch instance.

type VswitchState added in v3.45.0

type VswitchState struct {
	// IPv4 CIDR block of the VSwitch instance.
	CidrBlock pulumi.StringPtrInput
	// The creation time of the VSwitch instance, in the UTC time format, yyyy-MM-ddTHH:mm:ssZ.
	CreateTime pulumi.StringPtrInput
	// Description of the VSwitch Instance.
	Description pulumi.StringPtrInput
	// ENS Region ID.
	EnsRegionId pulumi.StringPtrInput
	// Network ID of the VSwitch instance.
	NetworkId pulumi.StringPtrInput
	// Status of the switch instance.
	Status pulumi.StringPtrInput
	// Name of the switch instance.
	VswitchName pulumi.StringPtrInput
}

func (VswitchState) ElementType added in v3.45.0

func (VswitchState) ElementType() reflect.Type

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL