mongodb

package
v3.55.0 Latest Latest
Warning

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

Go to latest
Published: Apr 30, 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 Account added in v3.12.0

type Account struct {
	pulumi.CustomResourceState

	// The description of the account.
	// * The description must start with a letter, and cannot start with `http://` or `https://`.
	// * It must be `2` to `256` characters in length, and can contain letters, digits, underscores (_), and hyphens (-).
	AccountDescription pulumi.StringPtrOutput `pulumi:"accountDescription"`
	// The name of the account. Valid values: `root`.
	AccountName pulumi.StringOutput `pulumi:"accountName"`
	// The Password of the Account.
	// * The password must contain at least three of the following character types: uppercase letters, lowercase letters, digits, and special characters. Special characters include `!#$%^&*()_+-=`.
	// * The password must be `8` to `32` characters in length.
	AccountPassword pulumi.StringOutput `pulumi:"accountPassword"`
	// The ID of the instance.
	InstanceId pulumi.StringOutput `pulumi:"instanceId"`
	// The status of the account. Valid values: `Unavailable`, `Available`.
	Status pulumi.StringOutput `pulumi:"status"`
}

Provides a MongoDB Account resource.

For information about MongoDB Account and how to use it, see [What is Account](https://www.alibabacloud.com/help/en/doc-detail/62154.html).

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

## Example Usage

Basic Usage

```go package main

import (

"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/mongodb"
"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/vpc"
"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
		}
		_default, err := mongodb.GetZones(ctx, nil, nil)
		if err != nil {
			return err
		}
		index := len(_default.Zones) - 1
		zoneId := _default.Zones[index].Id
		defaultNetwork, err := vpc.NewNetwork(ctx, "default", &vpc.NetworkArgs{
			VpcName:   pulumi.String(name),
			CidrBlock: pulumi.String("172.17.3.0/24"),
		})
		if err != nil {
			return err
		}
		defaultSwitch, err := vpc.NewSwitch(ctx, "default", &vpc.SwitchArgs{
			VswitchName: pulumi.String(name),
			CidrBlock:   pulumi.String("172.17.3.0/24"),
			VpcId:       defaultNetwork.ID(),
			ZoneId:      pulumi.String(zoneId),
		})
		if err != nil {
			return err
		}
		defaultInstance, err := mongodb.NewInstance(ctx, "default", &mongodb.InstanceArgs{
			EngineVersion:     pulumi.String("4.2"),
			DbInstanceClass:   pulumi.String("dds.mongo.mid"),
			DbInstanceStorage: pulumi.Int(10),
			VswitchId:         defaultSwitch.ID(),
			SecurityIpLists: pulumi.StringArray{
				pulumi.String("10.168.1.12"),
				pulumi.String("100.69.7.112"),
			},
			Name: pulumi.String(name),
			Tags: pulumi.Map{
				"Created": pulumi.Any("TF"),
				"For":     pulumi.Any("example"),
			},
		})
		if err != nil {
			return err
		}
		_, err = mongodb.NewAccount(ctx, "default", &mongodb.AccountArgs{
			AccountName:        pulumi.String("root"),
			AccountPassword:    pulumi.String("Example_123"),
			InstanceId:         defaultInstance.ID(),
			AccountDescription: pulumi.String(name),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

MongoDB Account can be imported using the id, e.g.

```sh $ pulumi import alicloud:mongodb/account:Account example <instance_id>:<account_name> ```

func GetAccount added in v3.12.0

func GetAccount(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *AccountState, opts ...pulumi.ResourceOption) (*Account, error)

GetAccount gets an existing Account 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 NewAccount added in v3.12.0

func NewAccount(ctx *pulumi.Context,
	name string, args *AccountArgs, opts ...pulumi.ResourceOption) (*Account, error)

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

func (*Account) ElementType added in v3.12.0

func (*Account) ElementType() reflect.Type

func (*Account) ToAccountOutput added in v3.12.0

func (i *Account) ToAccountOutput() AccountOutput

func (*Account) ToAccountOutputWithContext added in v3.12.0

func (i *Account) ToAccountOutputWithContext(ctx context.Context) AccountOutput

type AccountArgs added in v3.12.0

type AccountArgs struct {
	// The description of the account.
	// * The description must start with a letter, and cannot start with `http://` or `https://`.
	// * It must be `2` to `256` characters in length, and can contain letters, digits, underscores (_), and hyphens (-).
	AccountDescription pulumi.StringPtrInput
	// The name of the account. Valid values: `root`.
	AccountName pulumi.StringInput
	// The Password of the Account.
	// * The password must contain at least three of the following character types: uppercase letters, lowercase letters, digits, and special characters. Special characters include `!#$%^&*()_+-=`.
	// * The password must be `8` to `32` characters in length.
	AccountPassword pulumi.StringInput
	// The ID of the instance.
	InstanceId pulumi.StringInput
}

The set of arguments for constructing a Account resource.

func (AccountArgs) ElementType added in v3.12.0

func (AccountArgs) ElementType() reflect.Type

type AccountArray added in v3.12.0

type AccountArray []AccountInput

func (AccountArray) ElementType added in v3.12.0

func (AccountArray) ElementType() reflect.Type

func (AccountArray) ToAccountArrayOutput added in v3.12.0

func (i AccountArray) ToAccountArrayOutput() AccountArrayOutput

func (AccountArray) ToAccountArrayOutputWithContext added in v3.12.0

func (i AccountArray) ToAccountArrayOutputWithContext(ctx context.Context) AccountArrayOutput

type AccountArrayInput added in v3.12.0

type AccountArrayInput interface {
	pulumi.Input

	ToAccountArrayOutput() AccountArrayOutput
	ToAccountArrayOutputWithContext(context.Context) AccountArrayOutput
}

AccountArrayInput is an input type that accepts AccountArray and AccountArrayOutput values. You can construct a concrete instance of `AccountArrayInput` via:

AccountArray{ AccountArgs{...} }

type AccountArrayOutput added in v3.12.0

type AccountArrayOutput struct{ *pulumi.OutputState }

func (AccountArrayOutput) ElementType added in v3.12.0

func (AccountArrayOutput) ElementType() reflect.Type

func (AccountArrayOutput) Index added in v3.12.0

func (AccountArrayOutput) ToAccountArrayOutput added in v3.12.0

func (o AccountArrayOutput) ToAccountArrayOutput() AccountArrayOutput

func (AccountArrayOutput) ToAccountArrayOutputWithContext added in v3.12.0

func (o AccountArrayOutput) ToAccountArrayOutputWithContext(ctx context.Context) AccountArrayOutput

type AccountInput added in v3.12.0

type AccountInput interface {
	pulumi.Input

	ToAccountOutput() AccountOutput
	ToAccountOutputWithContext(ctx context.Context) AccountOutput
}

type AccountMap added in v3.12.0

type AccountMap map[string]AccountInput

func (AccountMap) ElementType added in v3.12.0

func (AccountMap) ElementType() reflect.Type

func (AccountMap) ToAccountMapOutput added in v3.12.0

func (i AccountMap) ToAccountMapOutput() AccountMapOutput

func (AccountMap) ToAccountMapOutputWithContext added in v3.12.0

func (i AccountMap) ToAccountMapOutputWithContext(ctx context.Context) AccountMapOutput

type AccountMapInput added in v3.12.0

type AccountMapInput interface {
	pulumi.Input

	ToAccountMapOutput() AccountMapOutput
	ToAccountMapOutputWithContext(context.Context) AccountMapOutput
}

AccountMapInput is an input type that accepts AccountMap and AccountMapOutput values. You can construct a concrete instance of `AccountMapInput` via:

AccountMap{ "key": AccountArgs{...} }

type AccountMapOutput added in v3.12.0

type AccountMapOutput struct{ *pulumi.OutputState }

func (AccountMapOutput) ElementType added in v3.12.0

func (AccountMapOutput) ElementType() reflect.Type

func (AccountMapOutput) MapIndex added in v3.12.0

func (AccountMapOutput) ToAccountMapOutput added in v3.12.0

func (o AccountMapOutput) ToAccountMapOutput() AccountMapOutput

func (AccountMapOutput) ToAccountMapOutputWithContext added in v3.12.0

func (o AccountMapOutput) ToAccountMapOutputWithContext(ctx context.Context) AccountMapOutput

type AccountOutput added in v3.12.0

type AccountOutput struct{ *pulumi.OutputState }

func (AccountOutput) AccountDescription added in v3.27.0

func (o AccountOutput) AccountDescription() pulumi.StringPtrOutput

The description of the account. * The description must start with a letter, and cannot start with `http://` or `https://`. * It must be `2` to `256` characters in length, and can contain letters, digits, underscores (_), and hyphens (-).

func (AccountOutput) AccountName added in v3.27.0

func (o AccountOutput) AccountName() pulumi.StringOutput

The name of the account. Valid values: `root`.

func (AccountOutput) AccountPassword added in v3.27.0

func (o AccountOutput) AccountPassword() pulumi.StringOutput

The Password of the Account. * The password must contain at least three of the following character types: uppercase letters, lowercase letters, digits, and special characters. Special characters include `!#$%^&*()_+-=`. * The password must be `8` to `32` characters in length.

func (AccountOutput) ElementType added in v3.12.0

func (AccountOutput) ElementType() reflect.Type

func (AccountOutput) InstanceId added in v3.27.0

func (o AccountOutput) InstanceId() pulumi.StringOutput

The ID of the instance.

func (AccountOutput) Status added in v3.27.0

func (o AccountOutput) Status() pulumi.StringOutput

The status of the account. Valid values: `Unavailable`, `Available`.

func (AccountOutput) ToAccountOutput added in v3.12.0

func (o AccountOutput) ToAccountOutput() AccountOutput

func (AccountOutput) ToAccountOutputWithContext added in v3.12.0

func (o AccountOutput) ToAccountOutputWithContext(ctx context.Context) AccountOutput

type AccountState added in v3.12.0

type AccountState struct {
	// The description of the account.
	// * The description must start with a letter, and cannot start with `http://` or `https://`.
	// * It must be `2` to `256` characters in length, and can contain letters, digits, underscores (_), and hyphens (-).
	AccountDescription pulumi.StringPtrInput
	// The name of the account. Valid values: `root`.
	AccountName pulumi.StringPtrInput
	// The Password of the Account.
	// * The password must contain at least three of the following character types: uppercase letters, lowercase letters, digits, and special characters. Special characters include `!#$%^&*()_+-=`.
	// * The password must be `8` to `32` characters in length.
	AccountPassword pulumi.StringPtrInput
	// The ID of the instance.
	InstanceId pulumi.StringPtrInput
	// The status of the account. Valid values: `Unavailable`, `Available`.
	Status pulumi.StringPtrInput
}

func (AccountState) ElementType added in v3.12.0

func (AccountState) ElementType() reflect.Type

type AuditPolicy added in v3.12.0

type AuditPolicy struct {
	pulumi.CustomResourceState

	// The status of the audit log. Valid values: `disabled`, `enable`.
	AuditStatus pulumi.StringOutput `pulumi:"auditStatus"`
	// The ID of the instance.
	DbInstanceId pulumi.StringOutput `pulumi:"dbInstanceId"`
	// The retention period of audit logs. Valid values: `1` to `30`. Default value: `30`.
	StoragePeriod pulumi.IntPtrOutput `pulumi:"storagePeriod"`
}

Provides a MongoDB Audit Policy resource.

For information about MongoDB Audit Policy and how to use it, see [What is Audit Policy](https://www.alibabacloud.com/help/doc-detail/131941.html).

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

## Example Usage

Basic Usage

```go package main

import (

"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/mongodb"
"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/vpc"
"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
		}
		_default, err := mongodb.GetZones(ctx, nil, nil)
		if err != nil {
			return err
		}
		index := len(_default.Zones) - 1
		zoneId := _default.Zones[index].Id
		defaultNetwork, err := vpc.NewNetwork(ctx, "default", &vpc.NetworkArgs{
			VpcName:   pulumi.String(name),
			CidrBlock: pulumi.String("172.17.3.0/24"),
		})
		if err != nil {
			return err
		}
		defaultSwitch, err := vpc.NewSwitch(ctx, "default", &vpc.SwitchArgs{
			VswitchName: pulumi.String(name),
			CidrBlock:   pulumi.String("172.17.3.0/24"),
			VpcId:       defaultNetwork.ID(),
			ZoneId:      pulumi.String(zoneId),
		})
		if err != nil {
			return err
		}
		defaultInstance, err := mongodb.NewInstance(ctx, "default", &mongodb.InstanceArgs{
			EngineVersion:     pulumi.String("4.2"),
			DbInstanceClass:   pulumi.String("dds.mongo.mid"),
			DbInstanceStorage: pulumi.Int(10),
			VswitchId:         defaultSwitch.ID(),
			SecurityIpLists: pulumi.StringArray{
				pulumi.String("10.168.1.12"),
				pulumi.String("100.69.7.112"),
			},
			Name: pulumi.String(name),
			Tags: pulumi.Map{
				"Created": pulumi.Any("TF"),
				"For":     pulumi.Any("example"),
			},
		})
		if err != nil {
			return err
		}
		_, err = mongodb.NewAuditPolicy(ctx, "default", &mongodb.AuditPolicyArgs{
			DbInstanceId: defaultInstance.ID(),
			AuditStatus:  pulumi.String("disabled"),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

MongoDB Audit Policy can be imported using the id, e.g.

```sh $ pulumi import alicloud:mongodb/auditPolicy:AuditPolicy example <db_instance_id> ```

func GetAuditPolicy added in v3.12.0

func GetAuditPolicy(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *AuditPolicyState, opts ...pulumi.ResourceOption) (*AuditPolicy, error)

GetAuditPolicy gets an existing AuditPolicy 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 NewAuditPolicy added in v3.12.0

func NewAuditPolicy(ctx *pulumi.Context,
	name string, args *AuditPolicyArgs, opts ...pulumi.ResourceOption) (*AuditPolicy, error)

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

func (*AuditPolicy) ElementType added in v3.12.0

func (*AuditPolicy) ElementType() reflect.Type

func (*AuditPolicy) ToAuditPolicyOutput added in v3.12.0

func (i *AuditPolicy) ToAuditPolicyOutput() AuditPolicyOutput

func (*AuditPolicy) ToAuditPolicyOutputWithContext added in v3.12.0

func (i *AuditPolicy) ToAuditPolicyOutputWithContext(ctx context.Context) AuditPolicyOutput

type AuditPolicyArgs added in v3.12.0

type AuditPolicyArgs struct {
	// The status of the audit log. Valid values: `disabled`, `enable`.
	AuditStatus pulumi.StringInput
	// The ID of the instance.
	DbInstanceId pulumi.StringInput
	// The retention period of audit logs. Valid values: `1` to `30`. Default value: `30`.
	StoragePeriod pulumi.IntPtrInput
}

The set of arguments for constructing a AuditPolicy resource.

func (AuditPolicyArgs) ElementType added in v3.12.0

func (AuditPolicyArgs) ElementType() reflect.Type

type AuditPolicyArray added in v3.12.0

type AuditPolicyArray []AuditPolicyInput

func (AuditPolicyArray) ElementType added in v3.12.0

func (AuditPolicyArray) ElementType() reflect.Type

func (AuditPolicyArray) ToAuditPolicyArrayOutput added in v3.12.0

func (i AuditPolicyArray) ToAuditPolicyArrayOutput() AuditPolicyArrayOutput

func (AuditPolicyArray) ToAuditPolicyArrayOutputWithContext added in v3.12.0

func (i AuditPolicyArray) ToAuditPolicyArrayOutputWithContext(ctx context.Context) AuditPolicyArrayOutput

type AuditPolicyArrayInput added in v3.12.0

type AuditPolicyArrayInput interface {
	pulumi.Input

	ToAuditPolicyArrayOutput() AuditPolicyArrayOutput
	ToAuditPolicyArrayOutputWithContext(context.Context) AuditPolicyArrayOutput
}

AuditPolicyArrayInput is an input type that accepts AuditPolicyArray and AuditPolicyArrayOutput values. You can construct a concrete instance of `AuditPolicyArrayInput` via:

AuditPolicyArray{ AuditPolicyArgs{...} }

type AuditPolicyArrayOutput added in v3.12.0

type AuditPolicyArrayOutput struct{ *pulumi.OutputState }

func (AuditPolicyArrayOutput) ElementType added in v3.12.0

func (AuditPolicyArrayOutput) ElementType() reflect.Type

func (AuditPolicyArrayOutput) Index added in v3.12.0

func (AuditPolicyArrayOutput) ToAuditPolicyArrayOutput added in v3.12.0

func (o AuditPolicyArrayOutput) ToAuditPolicyArrayOutput() AuditPolicyArrayOutput

func (AuditPolicyArrayOutput) ToAuditPolicyArrayOutputWithContext added in v3.12.0

func (o AuditPolicyArrayOutput) ToAuditPolicyArrayOutputWithContext(ctx context.Context) AuditPolicyArrayOutput

type AuditPolicyInput added in v3.12.0

type AuditPolicyInput interface {
	pulumi.Input

	ToAuditPolicyOutput() AuditPolicyOutput
	ToAuditPolicyOutputWithContext(ctx context.Context) AuditPolicyOutput
}

type AuditPolicyMap added in v3.12.0

type AuditPolicyMap map[string]AuditPolicyInput

func (AuditPolicyMap) ElementType added in v3.12.0

func (AuditPolicyMap) ElementType() reflect.Type

func (AuditPolicyMap) ToAuditPolicyMapOutput added in v3.12.0

func (i AuditPolicyMap) ToAuditPolicyMapOutput() AuditPolicyMapOutput

func (AuditPolicyMap) ToAuditPolicyMapOutputWithContext added in v3.12.0

func (i AuditPolicyMap) ToAuditPolicyMapOutputWithContext(ctx context.Context) AuditPolicyMapOutput

type AuditPolicyMapInput added in v3.12.0

type AuditPolicyMapInput interface {
	pulumi.Input

	ToAuditPolicyMapOutput() AuditPolicyMapOutput
	ToAuditPolicyMapOutputWithContext(context.Context) AuditPolicyMapOutput
}

AuditPolicyMapInput is an input type that accepts AuditPolicyMap and AuditPolicyMapOutput values. You can construct a concrete instance of `AuditPolicyMapInput` via:

AuditPolicyMap{ "key": AuditPolicyArgs{...} }

type AuditPolicyMapOutput added in v3.12.0

type AuditPolicyMapOutput struct{ *pulumi.OutputState }

func (AuditPolicyMapOutput) ElementType added in v3.12.0

func (AuditPolicyMapOutput) ElementType() reflect.Type

func (AuditPolicyMapOutput) MapIndex added in v3.12.0

func (AuditPolicyMapOutput) ToAuditPolicyMapOutput added in v3.12.0

func (o AuditPolicyMapOutput) ToAuditPolicyMapOutput() AuditPolicyMapOutput

func (AuditPolicyMapOutput) ToAuditPolicyMapOutputWithContext added in v3.12.0

func (o AuditPolicyMapOutput) ToAuditPolicyMapOutputWithContext(ctx context.Context) AuditPolicyMapOutput

type AuditPolicyOutput added in v3.12.0

type AuditPolicyOutput struct{ *pulumi.OutputState }

func (AuditPolicyOutput) AuditStatus added in v3.27.0

func (o AuditPolicyOutput) AuditStatus() pulumi.StringOutput

The status of the audit log. Valid values: `disabled`, `enable`.

func (AuditPolicyOutput) DbInstanceId added in v3.27.0

func (o AuditPolicyOutput) DbInstanceId() pulumi.StringOutput

The ID of the instance.

func (AuditPolicyOutput) ElementType added in v3.12.0

func (AuditPolicyOutput) ElementType() reflect.Type

func (AuditPolicyOutput) StoragePeriod added in v3.27.0

func (o AuditPolicyOutput) StoragePeriod() pulumi.IntPtrOutput

The retention period of audit logs. Valid values: `1` to `30`. Default value: `30`.

func (AuditPolicyOutput) ToAuditPolicyOutput added in v3.12.0

func (o AuditPolicyOutput) ToAuditPolicyOutput() AuditPolicyOutput

func (AuditPolicyOutput) ToAuditPolicyOutputWithContext added in v3.12.0

func (o AuditPolicyOutput) ToAuditPolicyOutputWithContext(ctx context.Context) AuditPolicyOutput

type AuditPolicyState added in v3.12.0

type AuditPolicyState struct {
	// The status of the audit log. Valid values: `disabled`, `enable`.
	AuditStatus pulumi.StringPtrInput
	// The ID of the instance.
	DbInstanceId pulumi.StringPtrInput
	// The retention period of audit logs. Valid values: `1` to `30`. Default value: `30`.
	StoragePeriod pulumi.IntPtrInput
}

func (AuditPolicyState) ElementType added in v3.12.0

func (AuditPolicyState) ElementType() reflect.Type

type GetAccountsAccount added in v3.12.0

type GetAccountsAccount struct {
	// The description of the account.
	AccountDescription string `pulumi:"accountDescription"`
	// The name of the account.
	AccountName string `pulumi:"accountName"`
	// The role of the account. Valid values: `db`, `cs`, `mongos`, `logic`, `normal`.
	CharacterType string `pulumi:"characterType"`
	// The ID of the Account. The value formats as `<instance_id>:<account_name>`.
	Id string `pulumi:"id"`
	// The id of the instance to which the account belongs.
	InstanceId string `pulumi:"instanceId"`
	// The status of the account. Valid values: `Unavailable`, `Available`.
	Status string `pulumi:"status"`
}

type GetAccountsAccountArgs added in v3.12.0

type GetAccountsAccountArgs struct {
	// The description of the account.
	AccountDescription pulumi.StringInput `pulumi:"accountDescription"`
	// The name of the account.
	AccountName pulumi.StringInput `pulumi:"accountName"`
	// The role of the account. Valid values: `db`, `cs`, `mongos`, `logic`, `normal`.
	CharacterType pulumi.StringInput `pulumi:"characterType"`
	// The ID of the Account. The value formats as `<instance_id>:<account_name>`.
	Id pulumi.StringInput `pulumi:"id"`
	// The id of the instance to which the account belongs.
	InstanceId pulumi.StringInput `pulumi:"instanceId"`
	// The status of the account. Valid values: `Unavailable`, `Available`.
	Status pulumi.StringInput `pulumi:"status"`
}

func (GetAccountsAccountArgs) ElementType added in v3.12.0

func (GetAccountsAccountArgs) ElementType() reflect.Type

func (GetAccountsAccountArgs) ToGetAccountsAccountOutput added in v3.12.0

func (i GetAccountsAccountArgs) ToGetAccountsAccountOutput() GetAccountsAccountOutput

func (GetAccountsAccountArgs) ToGetAccountsAccountOutputWithContext added in v3.12.0

func (i GetAccountsAccountArgs) ToGetAccountsAccountOutputWithContext(ctx context.Context) GetAccountsAccountOutput

type GetAccountsAccountArray added in v3.12.0

type GetAccountsAccountArray []GetAccountsAccountInput

func (GetAccountsAccountArray) ElementType added in v3.12.0

func (GetAccountsAccountArray) ElementType() reflect.Type

func (GetAccountsAccountArray) ToGetAccountsAccountArrayOutput added in v3.12.0

func (i GetAccountsAccountArray) ToGetAccountsAccountArrayOutput() GetAccountsAccountArrayOutput

func (GetAccountsAccountArray) ToGetAccountsAccountArrayOutputWithContext added in v3.12.0

func (i GetAccountsAccountArray) ToGetAccountsAccountArrayOutputWithContext(ctx context.Context) GetAccountsAccountArrayOutput

type GetAccountsAccountArrayInput added in v3.12.0

type GetAccountsAccountArrayInput interface {
	pulumi.Input

	ToGetAccountsAccountArrayOutput() GetAccountsAccountArrayOutput
	ToGetAccountsAccountArrayOutputWithContext(context.Context) GetAccountsAccountArrayOutput
}

GetAccountsAccountArrayInput is an input type that accepts GetAccountsAccountArray and GetAccountsAccountArrayOutput values. You can construct a concrete instance of `GetAccountsAccountArrayInput` via:

GetAccountsAccountArray{ GetAccountsAccountArgs{...} }

type GetAccountsAccountArrayOutput added in v3.12.0

type GetAccountsAccountArrayOutput struct{ *pulumi.OutputState }

func (GetAccountsAccountArrayOutput) ElementType added in v3.12.0

func (GetAccountsAccountArrayOutput) Index added in v3.12.0

func (GetAccountsAccountArrayOutput) ToGetAccountsAccountArrayOutput added in v3.12.0

func (o GetAccountsAccountArrayOutput) ToGetAccountsAccountArrayOutput() GetAccountsAccountArrayOutput

func (GetAccountsAccountArrayOutput) ToGetAccountsAccountArrayOutputWithContext added in v3.12.0

func (o GetAccountsAccountArrayOutput) ToGetAccountsAccountArrayOutputWithContext(ctx context.Context) GetAccountsAccountArrayOutput

type GetAccountsAccountInput added in v3.12.0

type GetAccountsAccountInput interface {
	pulumi.Input

	ToGetAccountsAccountOutput() GetAccountsAccountOutput
	ToGetAccountsAccountOutputWithContext(context.Context) GetAccountsAccountOutput
}

GetAccountsAccountInput is an input type that accepts GetAccountsAccountArgs and GetAccountsAccountOutput values. You can construct a concrete instance of `GetAccountsAccountInput` via:

GetAccountsAccountArgs{...}

type GetAccountsAccountOutput added in v3.12.0

type GetAccountsAccountOutput struct{ *pulumi.OutputState }

func (GetAccountsAccountOutput) AccountDescription added in v3.12.0

func (o GetAccountsAccountOutput) AccountDescription() pulumi.StringOutput

The description of the account.

func (GetAccountsAccountOutput) AccountName added in v3.12.0

The name of the account.

func (GetAccountsAccountOutput) CharacterType added in v3.12.0

func (o GetAccountsAccountOutput) CharacterType() pulumi.StringOutput

The role of the account. Valid values: `db`, `cs`, `mongos`, `logic`, `normal`.

func (GetAccountsAccountOutput) ElementType added in v3.12.0

func (GetAccountsAccountOutput) ElementType() reflect.Type

func (GetAccountsAccountOutput) Id added in v3.12.0

The ID of the Account. The value formats as `<instance_id>:<account_name>`.

func (GetAccountsAccountOutput) InstanceId added in v3.12.0

The id of the instance to which the account belongs.

func (GetAccountsAccountOutput) Status added in v3.12.0

The status of the account. Valid values: `Unavailable`, `Available`.

func (GetAccountsAccountOutput) ToGetAccountsAccountOutput added in v3.12.0

func (o GetAccountsAccountOutput) ToGetAccountsAccountOutput() GetAccountsAccountOutput

func (GetAccountsAccountOutput) ToGetAccountsAccountOutputWithContext added in v3.12.0

func (o GetAccountsAccountOutput) ToGetAccountsAccountOutputWithContext(ctx context.Context) GetAccountsAccountOutput

type GetAccountsArgs added in v3.12.0

type GetAccountsArgs struct {
	// The name of the account.
	AccountName *string `pulumi:"accountName"`
	// The id of the instance to which the account belongs.
	InstanceId string `pulumi:"instanceId"`
	// File name where to save data source results (after running `pulumi preview`).
	OutputFile *string `pulumi:"outputFile"`
}

A collection of arguments for invoking getAccounts.

type GetAccountsOutputArgs added in v3.12.0

type GetAccountsOutputArgs struct {
	// The name of the account.
	AccountName pulumi.StringPtrInput `pulumi:"accountName"`
	// The id of the instance to which the account belongs.
	InstanceId pulumi.StringInput `pulumi:"instanceId"`
	// File name where to save data source results (after running `pulumi preview`).
	OutputFile pulumi.StringPtrInput `pulumi:"outputFile"`
}

A collection of arguments for invoking getAccounts.

func (GetAccountsOutputArgs) ElementType added in v3.12.0

func (GetAccountsOutputArgs) ElementType() reflect.Type

type GetAccountsResult added in v3.12.0

type GetAccountsResult struct {
	AccountName *string              `pulumi:"accountName"`
	Accounts    []GetAccountsAccount `pulumi:"accounts"`
	// The provider-assigned unique ID for this managed resource.
	Id         string  `pulumi:"id"`
	InstanceId string  `pulumi:"instanceId"`
	OutputFile *string `pulumi:"outputFile"`
}

A collection of values returned by getAccounts.

func GetAccounts added in v3.12.0

func GetAccounts(ctx *pulumi.Context, args *GetAccountsArgs, opts ...pulumi.InvokeOption) (*GetAccountsResult, error)

This data source provides the Mongodb Accounts of the current Alibaba Cloud user.

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

## Example Usage

Basic Usage

```go package main

import (

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

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		example, err := mongodb.GetAccounts(ctx, &mongodb.GetAccountsArgs{
			InstanceId:  "example_value",
			AccountName: pulumi.StringRef("root"),
		}, nil)
		if err != nil {
			return err
		}
		ctx.Export("mongodbAccountId1", example.Accounts[0].Id)
		return nil
	})
}

```

type GetAccountsResultOutput added in v3.12.0

type GetAccountsResultOutput struct{ *pulumi.OutputState }

A collection of values returned by getAccounts.

func GetAccountsOutput added in v3.12.0

func GetAccountsOutput(ctx *pulumi.Context, args GetAccountsOutputArgs, opts ...pulumi.InvokeOption) GetAccountsResultOutput

func (GetAccountsResultOutput) AccountName added in v3.12.0

func (GetAccountsResultOutput) Accounts added in v3.12.0

func (GetAccountsResultOutput) ElementType added in v3.12.0

func (GetAccountsResultOutput) ElementType() reflect.Type

func (GetAccountsResultOutput) Id added in v3.12.0

The provider-assigned unique ID for this managed resource.

func (GetAccountsResultOutput) InstanceId added in v3.12.0

func (GetAccountsResultOutput) OutputFile added in v3.12.0

func (GetAccountsResultOutput) ToGetAccountsResultOutput added in v3.12.0

func (o GetAccountsResultOutput) ToGetAccountsResultOutput() GetAccountsResultOutput

func (GetAccountsResultOutput) ToGetAccountsResultOutputWithContext added in v3.12.0

func (o GetAccountsResultOutput) ToGetAccountsResultOutputWithContext(ctx context.Context) GetAccountsResultOutput

type GetAuditPoliciesArgs added in v3.12.0

type GetAuditPoliciesArgs struct {
	// The ID of the instance.
	DbInstanceId string `pulumi:"dbInstanceId"`
	// File name where to save data source results (after running `pulumi preview`).
	OutputFile *string `pulumi:"outputFile"`
}

A collection of arguments for invoking getAuditPolicies.

type GetAuditPoliciesOutputArgs added in v3.12.0

type GetAuditPoliciesOutputArgs struct {
	// The ID of the instance.
	DbInstanceId pulumi.StringInput `pulumi:"dbInstanceId"`
	// File name where to save data source results (after running `pulumi preview`).
	OutputFile pulumi.StringPtrInput `pulumi:"outputFile"`
}

A collection of arguments for invoking getAuditPolicies.

func (GetAuditPoliciesOutputArgs) ElementType added in v3.12.0

func (GetAuditPoliciesOutputArgs) ElementType() reflect.Type

type GetAuditPoliciesPolicy added in v3.12.0

type GetAuditPoliciesPolicy struct {
	// The status of the log audit feature.
	AuditStatus string `pulumi:"auditStatus"`
	// The ID of the instance.
	DbInstanceId string `pulumi:"dbInstanceId"`
	// The ID of the Audit Policy.
	Id string `pulumi:"id"`
}

type GetAuditPoliciesPolicyArgs added in v3.12.0

type GetAuditPoliciesPolicyArgs struct {
	// The status of the log audit feature.
	AuditStatus pulumi.StringInput `pulumi:"auditStatus"`
	// The ID of the instance.
	DbInstanceId pulumi.StringInput `pulumi:"dbInstanceId"`
	// The ID of the Audit Policy.
	Id pulumi.StringInput `pulumi:"id"`
}

func (GetAuditPoliciesPolicyArgs) ElementType added in v3.12.0

func (GetAuditPoliciesPolicyArgs) ElementType() reflect.Type

func (GetAuditPoliciesPolicyArgs) ToGetAuditPoliciesPolicyOutput added in v3.12.0

func (i GetAuditPoliciesPolicyArgs) ToGetAuditPoliciesPolicyOutput() GetAuditPoliciesPolicyOutput

func (GetAuditPoliciesPolicyArgs) ToGetAuditPoliciesPolicyOutputWithContext added in v3.12.0

func (i GetAuditPoliciesPolicyArgs) ToGetAuditPoliciesPolicyOutputWithContext(ctx context.Context) GetAuditPoliciesPolicyOutput

type GetAuditPoliciesPolicyArray added in v3.12.0

type GetAuditPoliciesPolicyArray []GetAuditPoliciesPolicyInput

func (GetAuditPoliciesPolicyArray) ElementType added in v3.12.0

func (GetAuditPoliciesPolicyArray) ToGetAuditPoliciesPolicyArrayOutput added in v3.12.0

func (i GetAuditPoliciesPolicyArray) ToGetAuditPoliciesPolicyArrayOutput() GetAuditPoliciesPolicyArrayOutput

func (GetAuditPoliciesPolicyArray) ToGetAuditPoliciesPolicyArrayOutputWithContext added in v3.12.0

func (i GetAuditPoliciesPolicyArray) ToGetAuditPoliciesPolicyArrayOutputWithContext(ctx context.Context) GetAuditPoliciesPolicyArrayOutput

type GetAuditPoliciesPolicyArrayInput added in v3.12.0

type GetAuditPoliciesPolicyArrayInput interface {
	pulumi.Input

	ToGetAuditPoliciesPolicyArrayOutput() GetAuditPoliciesPolicyArrayOutput
	ToGetAuditPoliciesPolicyArrayOutputWithContext(context.Context) GetAuditPoliciesPolicyArrayOutput
}

GetAuditPoliciesPolicyArrayInput is an input type that accepts GetAuditPoliciesPolicyArray and GetAuditPoliciesPolicyArrayOutput values. You can construct a concrete instance of `GetAuditPoliciesPolicyArrayInput` via:

GetAuditPoliciesPolicyArray{ GetAuditPoliciesPolicyArgs{...} }

type GetAuditPoliciesPolicyArrayOutput added in v3.12.0

type GetAuditPoliciesPolicyArrayOutput struct{ *pulumi.OutputState }

func (GetAuditPoliciesPolicyArrayOutput) ElementType added in v3.12.0

func (GetAuditPoliciesPolicyArrayOutput) Index added in v3.12.0

func (GetAuditPoliciesPolicyArrayOutput) ToGetAuditPoliciesPolicyArrayOutput added in v3.12.0

func (o GetAuditPoliciesPolicyArrayOutput) ToGetAuditPoliciesPolicyArrayOutput() GetAuditPoliciesPolicyArrayOutput

func (GetAuditPoliciesPolicyArrayOutput) ToGetAuditPoliciesPolicyArrayOutputWithContext added in v3.12.0

func (o GetAuditPoliciesPolicyArrayOutput) ToGetAuditPoliciesPolicyArrayOutputWithContext(ctx context.Context) GetAuditPoliciesPolicyArrayOutput

type GetAuditPoliciesPolicyInput added in v3.12.0

type GetAuditPoliciesPolicyInput interface {
	pulumi.Input

	ToGetAuditPoliciesPolicyOutput() GetAuditPoliciesPolicyOutput
	ToGetAuditPoliciesPolicyOutputWithContext(context.Context) GetAuditPoliciesPolicyOutput
}

GetAuditPoliciesPolicyInput is an input type that accepts GetAuditPoliciesPolicyArgs and GetAuditPoliciesPolicyOutput values. You can construct a concrete instance of `GetAuditPoliciesPolicyInput` via:

GetAuditPoliciesPolicyArgs{...}

type GetAuditPoliciesPolicyOutput added in v3.12.0

type GetAuditPoliciesPolicyOutput struct{ *pulumi.OutputState }

func (GetAuditPoliciesPolicyOutput) AuditStatus added in v3.12.0

The status of the log audit feature.

func (GetAuditPoliciesPolicyOutput) DbInstanceId added in v3.12.0

The ID of the instance.

func (GetAuditPoliciesPolicyOutput) ElementType added in v3.12.0

func (GetAuditPoliciesPolicyOutput) Id added in v3.12.0

The ID of the Audit Policy.

func (GetAuditPoliciesPolicyOutput) ToGetAuditPoliciesPolicyOutput added in v3.12.0

func (o GetAuditPoliciesPolicyOutput) ToGetAuditPoliciesPolicyOutput() GetAuditPoliciesPolicyOutput

func (GetAuditPoliciesPolicyOutput) ToGetAuditPoliciesPolicyOutputWithContext added in v3.12.0

func (o GetAuditPoliciesPolicyOutput) ToGetAuditPoliciesPolicyOutputWithContext(ctx context.Context) GetAuditPoliciesPolicyOutput

type GetAuditPoliciesResult added in v3.12.0

type GetAuditPoliciesResult struct {
	DbInstanceId string `pulumi:"dbInstanceId"`
	// The provider-assigned unique ID for this managed resource.
	Id         string                   `pulumi:"id"`
	OutputFile *string                  `pulumi:"outputFile"`
	Policies   []GetAuditPoliciesPolicy `pulumi:"policies"`
}

A collection of values returned by getAuditPolicies.

func GetAuditPolicies added in v3.12.0

func GetAuditPolicies(ctx *pulumi.Context, args *GetAuditPoliciesArgs, opts ...pulumi.InvokeOption) (*GetAuditPoliciesResult, error)

This data source provides the Mongodb Audit Policies of the current Alibaba Cloud user.

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

## Example Usage

Basic Usage

```go package main

import (

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

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		example, err := mongodb.GetAuditPolicies(ctx, &mongodb.GetAuditPoliciesArgs{
			DbInstanceId: "example_value",
		}, nil)
		if err != nil {
			return err
		}
		ctx.Export("mongodbAuditPolicyId1", example.Policies[0].Id)
		return nil
	})
}

```

type GetAuditPoliciesResultOutput added in v3.12.0

type GetAuditPoliciesResultOutput struct{ *pulumi.OutputState }

A collection of values returned by getAuditPolicies.

func GetAuditPoliciesOutput added in v3.12.0

func (GetAuditPoliciesResultOutput) DbInstanceId added in v3.12.0

func (GetAuditPoliciesResultOutput) ElementType added in v3.12.0

func (GetAuditPoliciesResultOutput) Id added in v3.12.0

The provider-assigned unique ID for this managed resource.

func (GetAuditPoliciesResultOutput) OutputFile added in v3.12.0

func (GetAuditPoliciesResultOutput) Policies added in v3.12.0

func (GetAuditPoliciesResultOutput) ToGetAuditPoliciesResultOutput added in v3.12.0

func (o GetAuditPoliciesResultOutput) ToGetAuditPoliciesResultOutput() GetAuditPoliciesResultOutput

func (GetAuditPoliciesResultOutput) ToGetAuditPoliciesResultOutputWithContext added in v3.12.0

func (o GetAuditPoliciesResultOutput) ToGetAuditPoliciesResultOutputWithContext(ctx context.Context) GetAuditPoliciesResultOutput

type GetInstancesArgs

type GetInstancesArgs struct {
	// Instance availability zone.
	AvailabilityZone *string `pulumi:"availabilityZone"`
	// The ids list of MongoDB instances
	Ids []string `pulumi:"ids"`
	// Sizing of the instance to be queried.
	InstanceClass *string `pulumi:"instanceClass"`
	// Type of the instance to be queried. If it is set to `sharding`, the sharded cluster instances are listed. If it is set to `replicate`, replica set instances are listed. Default value `replicate`.
	InstanceType *string `pulumi:"instanceType"`
	// A regex string to apply to the instance name.
	NameRegex *string `pulumi:"nameRegex"`
	// The name of file that can save the collection of instances after running `pulumi preview`.
	OutputFile *string `pulumi:"outputFile"`
	// A mapping of tags to assign to the resource.
	Tags map[string]interface{} `pulumi:"tags"`
}

A collection of arguments for invoking getInstances.

type GetInstancesInstance

type GetInstancesInstance struct {
	// Instance availability zone.
	AvailabilityZone string `pulumi:"availabilityZone"`
	// Billing method. Value options are `PostPaid` for  Pay-As-You-Go and `PrePaid` for yearly or monthly subscription.
	ChargeType string `pulumi:"chargeType"`
	// Creation time of the instance in RFC3339 format.
	CreationTime string `pulumi:"creationTime"`
	// Database engine type. Supported option is `MongoDB`.
	Engine string `pulumi:"engine"`
	// Database engine version.
	EngineVersion string `pulumi:"engineVersion"`
	// Expiration time in RFC3339 format. Pay-As-You-Go instances are never expire.
	ExpirationTime string `pulumi:"expirationTime"`
	// The ID of the MongoDB instance.
	Id string `pulumi:"id"`
	// Sizing of the instance to be queried.
	InstanceClass string `pulumi:"instanceClass"`
	// Type of the instance to be queried. If it is set to `sharding`, the sharded cluster instances are listed. If it is set to `replicate`, replica set instances are listed. Default value `replicate`.
	InstanceType string `pulumi:"instanceType"`
	// Lock status of the instance.
	LockMode string `pulumi:"lockMode"`
	// Array composed of Mongos.
	Mongos []GetInstancesInstanceMongo `pulumi:"mongos"`
	// The name of the MongoDB instance.
	Name string `pulumi:"name"`
	// Classic network or VPC.
	NetworkType string `pulumi:"networkType"`
	// Region ID the instance belongs to.
	RegionId string `pulumi:"regionId"`
	// Replication factor corresponds to number of nodes. Optional values are `1` for single node and `3` for three nodes replica set.
	Replication string `pulumi:"replication"`
	// Array composed of shards.
	Shards []GetInstancesInstanceShard `pulumi:"shards"`
	// Status of the instance.
	Status string `pulumi:"status"`
	// Shard disk.
	Storage int `pulumi:"storage"`
	// A mapping of tags to assign to the resource.
	Tags map[string]interface{} `pulumi:"tags"`
}

type GetInstancesInstanceArgs

type GetInstancesInstanceArgs struct {
	// Instance availability zone.
	AvailabilityZone pulumi.StringInput `pulumi:"availabilityZone"`
	// Billing method. Value options are `PostPaid` for  Pay-As-You-Go and `PrePaid` for yearly or monthly subscription.
	ChargeType pulumi.StringInput `pulumi:"chargeType"`
	// Creation time of the instance in RFC3339 format.
	CreationTime pulumi.StringInput `pulumi:"creationTime"`
	// Database engine type. Supported option is `MongoDB`.
	Engine pulumi.StringInput `pulumi:"engine"`
	// Database engine version.
	EngineVersion pulumi.StringInput `pulumi:"engineVersion"`
	// Expiration time in RFC3339 format. Pay-As-You-Go instances are never expire.
	ExpirationTime pulumi.StringInput `pulumi:"expirationTime"`
	// The ID of the MongoDB instance.
	Id pulumi.StringInput `pulumi:"id"`
	// Sizing of the instance to be queried.
	InstanceClass pulumi.StringInput `pulumi:"instanceClass"`
	// Type of the instance to be queried. If it is set to `sharding`, the sharded cluster instances are listed. If it is set to `replicate`, replica set instances are listed. Default value `replicate`.
	InstanceType pulumi.StringInput `pulumi:"instanceType"`
	// Lock status of the instance.
	LockMode pulumi.StringInput `pulumi:"lockMode"`
	// Array composed of Mongos.
	Mongos GetInstancesInstanceMongoArrayInput `pulumi:"mongos"`
	// The name of the MongoDB instance.
	Name pulumi.StringInput `pulumi:"name"`
	// Classic network or VPC.
	NetworkType pulumi.StringInput `pulumi:"networkType"`
	// Region ID the instance belongs to.
	RegionId pulumi.StringInput `pulumi:"regionId"`
	// Replication factor corresponds to number of nodes. Optional values are `1` for single node and `3` for three nodes replica set.
	Replication pulumi.StringInput `pulumi:"replication"`
	// Array composed of shards.
	Shards GetInstancesInstanceShardArrayInput `pulumi:"shards"`
	// Status of the instance.
	Status pulumi.StringInput `pulumi:"status"`
	// Shard disk.
	Storage pulumi.IntInput `pulumi:"storage"`
	// A mapping of tags to assign to the resource.
	Tags pulumi.MapInput `pulumi:"tags"`
}

func (GetInstancesInstanceArgs) ElementType

func (GetInstancesInstanceArgs) ElementType() reflect.Type

func (GetInstancesInstanceArgs) ToGetInstancesInstanceOutput

func (i GetInstancesInstanceArgs) ToGetInstancesInstanceOutput() GetInstancesInstanceOutput

func (GetInstancesInstanceArgs) ToGetInstancesInstanceOutputWithContext

func (i GetInstancesInstanceArgs) ToGetInstancesInstanceOutputWithContext(ctx context.Context) GetInstancesInstanceOutput

type GetInstancesInstanceArray

type GetInstancesInstanceArray []GetInstancesInstanceInput

func (GetInstancesInstanceArray) ElementType

func (GetInstancesInstanceArray) ElementType() reflect.Type

func (GetInstancesInstanceArray) ToGetInstancesInstanceArrayOutput

func (i GetInstancesInstanceArray) ToGetInstancesInstanceArrayOutput() GetInstancesInstanceArrayOutput

func (GetInstancesInstanceArray) ToGetInstancesInstanceArrayOutputWithContext

func (i GetInstancesInstanceArray) ToGetInstancesInstanceArrayOutputWithContext(ctx context.Context) GetInstancesInstanceArrayOutput

type GetInstancesInstanceArrayInput

type GetInstancesInstanceArrayInput interface {
	pulumi.Input

	ToGetInstancesInstanceArrayOutput() GetInstancesInstanceArrayOutput
	ToGetInstancesInstanceArrayOutputWithContext(context.Context) GetInstancesInstanceArrayOutput
}

GetInstancesInstanceArrayInput is an input type that accepts GetInstancesInstanceArray and GetInstancesInstanceArrayOutput values. You can construct a concrete instance of `GetInstancesInstanceArrayInput` via:

GetInstancesInstanceArray{ GetInstancesInstanceArgs{...} }

type GetInstancesInstanceArrayOutput

type GetInstancesInstanceArrayOutput struct{ *pulumi.OutputState }

func (GetInstancesInstanceArrayOutput) ElementType

func (GetInstancesInstanceArrayOutput) Index

func (GetInstancesInstanceArrayOutput) ToGetInstancesInstanceArrayOutput

func (o GetInstancesInstanceArrayOutput) ToGetInstancesInstanceArrayOutput() GetInstancesInstanceArrayOutput

func (GetInstancesInstanceArrayOutput) ToGetInstancesInstanceArrayOutputWithContext

func (o GetInstancesInstanceArrayOutput) ToGetInstancesInstanceArrayOutputWithContext(ctx context.Context) GetInstancesInstanceArrayOutput

type GetInstancesInstanceInput

type GetInstancesInstanceInput interface {
	pulumi.Input

	ToGetInstancesInstanceOutput() GetInstancesInstanceOutput
	ToGetInstancesInstanceOutputWithContext(context.Context) GetInstancesInstanceOutput
}

GetInstancesInstanceInput is an input type that accepts GetInstancesInstanceArgs and GetInstancesInstanceOutput values. You can construct a concrete instance of `GetInstancesInstanceInput` via:

GetInstancesInstanceArgs{...}

type GetInstancesInstanceMongo

type GetInstancesInstanceMongo struct {
	// Shard instance specification.
	Class string `pulumi:"class"`
	// Shard instance description.
	Description string `pulumi:"description"`
	// Shard instance ID.
	NodeId string `pulumi:"nodeId"`
}

type GetInstancesInstanceMongoArgs

type GetInstancesInstanceMongoArgs struct {
	// Shard instance specification.
	Class pulumi.StringInput `pulumi:"class"`
	// Shard instance description.
	Description pulumi.StringInput `pulumi:"description"`
	// Shard instance ID.
	NodeId pulumi.StringInput `pulumi:"nodeId"`
}

func (GetInstancesInstanceMongoArgs) ElementType

func (GetInstancesInstanceMongoArgs) ToGetInstancesInstanceMongoOutput

func (i GetInstancesInstanceMongoArgs) ToGetInstancesInstanceMongoOutput() GetInstancesInstanceMongoOutput

func (GetInstancesInstanceMongoArgs) ToGetInstancesInstanceMongoOutputWithContext

func (i GetInstancesInstanceMongoArgs) ToGetInstancesInstanceMongoOutputWithContext(ctx context.Context) GetInstancesInstanceMongoOutput

type GetInstancesInstanceMongoArray

type GetInstancesInstanceMongoArray []GetInstancesInstanceMongoInput

func (GetInstancesInstanceMongoArray) ElementType

func (GetInstancesInstanceMongoArray) ToGetInstancesInstanceMongoArrayOutput

func (i GetInstancesInstanceMongoArray) ToGetInstancesInstanceMongoArrayOutput() GetInstancesInstanceMongoArrayOutput

func (GetInstancesInstanceMongoArray) ToGetInstancesInstanceMongoArrayOutputWithContext

func (i GetInstancesInstanceMongoArray) ToGetInstancesInstanceMongoArrayOutputWithContext(ctx context.Context) GetInstancesInstanceMongoArrayOutput

type GetInstancesInstanceMongoArrayInput

type GetInstancesInstanceMongoArrayInput interface {
	pulumi.Input

	ToGetInstancesInstanceMongoArrayOutput() GetInstancesInstanceMongoArrayOutput
	ToGetInstancesInstanceMongoArrayOutputWithContext(context.Context) GetInstancesInstanceMongoArrayOutput
}

GetInstancesInstanceMongoArrayInput is an input type that accepts GetInstancesInstanceMongoArray and GetInstancesInstanceMongoArrayOutput values. You can construct a concrete instance of `GetInstancesInstanceMongoArrayInput` via:

GetInstancesInstanceMongoArray{ GetInstancesInstanceMongoArgs{...} }

type GetInstancesInstanceMongoArrayOutput

type GetInstancesInstanceMongoArrayOutput struct{ *pulumi.OutputState }

func (GetInstancesInstanceMongoArrayOutput) ElementType

func (GetInstancesInstanceMongoArrayOutput) Index

func (GetInstancesInstanceMongoArrayOutput) ToGetInstancesInstanceMongoArrayOutput

func (o GetInstancesInstanceMongoArrayOutput) ToGetInstancesInstanceMongoArrayOutput() GetInstancesInstanceMongoArrayOutput

func (GetInstancesInstanceMongoArrayOutput) ToGetInstancesInstanceMongoArrayOutputWithContext

func (o GetInstancesInstanceMongoArrayOutput) ToGetInstancesInstanceMongoArrayOutputWithContext(ctx context.Context) GetInstancesInstanceMongoArrayOutput

type GetInstancesInstanceMongoInput

type GetInstancesInstanceMongoInput interface {
	pulumi.Input

	ToGetInstancesInstanceMongoOutput() GetInstancesInstanceMongoOutput
	ToGetInstancesInstanceMongoOutputWithContext(context.Context) GetInstancesInstanceMongoOutput
}

GetInstancesInstanceMongoInput is an input type that accepts GetInstancesInstanceMongoArgs and GetInstancesInstanceMongoOutput values. You can construct a concrete instance of `GetInstancesInstanceMongoInput` via:

GetInstancesInstanceMongoArgs{...}

type GetInstancesInstanceMongoOutput

type GetInstancesInstanceMongoOutput struct{ *pulumi.OutputState }

func (GetInstancesInstanceMongoOutput) Class

Shard instance specification.

func (GetInstancesInstanceMongoOutput) Description

Shard instance description.

func (GetInstancesInstanceMongoOutput) ElementType

func (GetInstancesInstanceMongoOutput) NodeId

Shard instance ID.

func (GetInstancesInstanceMongoOutput) ToGetInstancesInstanceMongoOutput

func (o GetInstancesInstanceMongoOutput) ToGetInstancesInstanceMongoOutput() GetInstancesInstanceMongoOutput

func (GetInstancesInstanceMongoOutput) ToGetInstancesInstanceMongoOutputWithContext

func (o GetInstancesInstanceMongoOutput) ToGetInstancesInstanceMongoOutputWithContext(ctx context.Context) GetInstancesInstanceMongoOutput

type GetInstancesInstanceOutput

type GetInstancesInstanceOutput struct{ *pulumi.OutputState }

func (GetInstancesInstanceOutput) AvailabilityZone

func (o GetInstancesInstanceOutput) AvailabilityZone() pulumi.StringOutput

Instance availability zone.

func (GetInstancesInstanceOutput) ChargeType

Billing method. Value options are `PostPaid` for Pay-As-You-Go and `PrePaid` for yearly or monthly subscription.

func (GetInstancesInstanceOutput) CreationTime

Creation time of the instance in RFC3339 format.

func (GetInstancesInstanceOutput) ElementType

func (GetInstancesInstanceOutput) ElementType() reflect.Type

func (GetInstancesInstanceOutput) Engine

Database engine type. Supported option is `MongoDB`.

func (GetInstancesInstanceOutput) EngineVersion

Database engine version.

func (GetInstancesInstanceOutput) ExpirationTime

func (o GetInstancesInstanceOutput) ExpirationTime() pulumi.StringOutput

Expiration time in RFC3339 format. Pay-As-You-Go instances are never expire.

func (GetInstancesInstanceOutput) Id

The ID of the MongoDB instance.

func (GetInstancesInstanceOutput) InstanceClass

Sizing of the instance to be queried.

func (GetInstancesInstanceOutput) InstanceType

Type of the instance to be queried. If it is set to `sharding`, the sharded cluster instances are listed. If it is set to `replicate`, replica set instances are listed. Default value `replicate`.

func (GetInstancesInstanceOutput) LockMode

Lock status of the instance.

func (GetInstancesInstanceOutput) Mongos

Array composed of Mongos.

func (GetInstancesInstanceOutput) Name

The name of the MongoDB instance.

func (GetInstancesInstanceOutput) NetworkType

Classic network or VPC.

func (GetInstancesInstanceOutput) RegionId

Region ID the instance belongs to.

func (GetInstancesInstanceOutput) Replication

Replication factor corresponds to number of nodes. Optional values are `1` for single node and `3` for three nodes replica set.

func (GetInstancesInstanceOutput) Shards

Array composed of shards.

func (GetInstancesInstanceOutput) Status

Status of the instance.

func (GetInstancesInstanceOutput) Storage

Shard disk.

func (GetInstancesInstanceOutput) Tags

A mapping of tags to assign to the resource.

func (GetInstancesInstanceOutput) ToGetInstancesInstanceOutput

func (o GetInstancesInstanceOutput) ToGetInstancesInstanceOutput() GetInstancesInstanceOutput

func (GetInstancesInstanceOutput) ToGetInstancesInstanceOutputWithContext

func (o GetInstancesInstanceOutput) ToGetInstancesInstanceOutputWithContext(ctx context.Context) GetInstancesInstanceOutput

type GetInstancesInstanceShard

type GetInstancesInstanceShard struct {
	// Shard instance specification.
	Class string `pulumi:"class"`
	// Shard instance description.
	Description string `pulumi:"description"`
	// Shard instance ID.
	NodeId string `pulumi:"nodeId"`
	// Shard disk.
	Storage int `pulumi:"storage"`
}

type GetInstancesInstanceShardArgs

type GetInstancesInstanceShardArgs struct {
	// Shard instance specification.
	Class pulumi.StringInput `pulumi:"class"`
	// Shard instance description.
	Description pulumi.StringInput `pulumi:"description"`
	// Shard instance ID.
	NodeId pulumi.StringInput `pulumi:"nodeId"`
	// Shard disk.
	Storage pulumi.IntInput `pulumi:"storage"`
}

func (GetInstancesInstanceShardArgs) ElementType

func (GetInstancesInstanceShardArgs) ToGetInstancesInstanceShardOutput

func (i GetInstancesInstanceShardArgs) ToGetInstancesInstanceShardOutput() GetInstancesInstanceShardOutput

func (GetInstancesInstanceShardArgs) ToGetInstancesInstanceShardOutputWithContext

func (i GetInstancesInstanceShardArgs) ToGetInstancesInstanceShardOutputWithContext(ctx context.Context) GetInstancesInstanceShardOutput

type GetInstancesInstanceShardArray

type GetInstancesInstanceShardArray []GetInstancesInstanceShardInput

func (GetInstancesInstanceShardArray) ElementType

func (GetInstancesInstanceShardArray) ToGetInstancesInstanceShardArrayOutput

func (i GetInstancesInstanceShardArray) ToGetInstancesInstanceShardArrayOutput() GetInstancesInstanceShardArrayOutput

func (GetInstancesInstanceShardArray) ToGetInstancesInstanceShardArrayOutputWithContext

func (i GetInstancesInstanceShardArray) ToGetInstancesInstanceShardArrayOutputWithContext(ctx context.Context) GetInstancesInstanceShardArrayOutput

type GetInstancesInstanceShardArrayInput

type GetInstancesInstanceShardArrayInput interface {
	pulumi.Input

	ToGetInstancesInstanceShardArrayOutput() GetInstancesInstanceShardArrayOutput
	ToGetInstancesInstanceShardArrayOutputWithContext(context.Context) GetInstancesInstanceShardArrayOutput
}

GetInstancesInstanceShardArrayInput is an input type that accepts GetInstancesInstanceShardArray and GetInstancesInstanceShardArrayOutput values. You can construct a concrete instance of `GetInstancesInstanceShardArrayInput` via:

GetInstancesInstanceShardArray{ GetInstancesInstanceShardArgs{...} }

type GetInstancesInstanceShardArrayOutput

type GetInstancesInstanceShardArrayOutput struct{ *pulumi.OutputState }

func (GetInstancesInstanceShardArrayOutput) ElementType

func (GetInstancesInstanceShardArrayOutput) Index

func (GetInstancesInstanceShardArrayOutput) ToGetInstancesInstanceShardArrayOutput

func (o GetInstancesInstanceShardArrayOutput) ToGetInstancesInstanceShardArrayOutput() GetInstancesInstanceShardArrayOutput

func (GetInstancesInstanceShardArrayOutput) ToGetInstancesInstanceShardArrayOutputWithContext

func (o GetInstancesInstanceShardArrayOutput) ToGetInstancesInstanceShardArrayOutputWithContext(ctx context.Context) GetInstancesInstanceShardArrayOutput

type GetInstancesInstanceShardInput

type GetInstancesInstanceShardInput interface {
	pulumi.Input

	ToGetInstancesInstanceShardOutput() GetInstancesInstanceShardOutput
	ToGetInstancesInstanceShardOutputWithContext(context.Context) GetInstancesInstanceShardOutput
}

GetInstancesInstanceShardInput is an input type that accepts GetInstancesInstanceShardArgs and GetInstancesInstanceShardOutput values. You can construct a concrete instance of `GetInstancesInstanceShardInput` via:

GetInstancesInstanceShardArgs{...}

type GetInstancesInstanceShardOutput

type GetInstancesInstanceShardOutput struct{ *pulumi.OutputState }

func (GetInstancesInstanceShardOutput) Class

Shard instance specification.

func (GetInstancesInstanceShardOutput) Description

Shard instance description.

func (GetInstancesInstanceShardOutput) ElementType

func (GetInstancesInstanceShardOutput) NodeId

Shard instance ID.

func (GetInstancesInstanceShardOutput) Storage

Shard disk.

func (GetInstancesInstanceShardOutput) ToGetInstancesInstanceShardOutput

func (o GetInstancesInstanceShardOutput) ToGetInstancesInstanceShardOutput() GetInstancesInstanceShardOutput

func (GetInstancesInstanceShardOutput) ToGetInstancesInstanceShardOutputWithContext

func (o GetInstancesInstanceShardOutput) ToGetInstancesInstanceShardOutputWithContext(ctx context.Context) GetInstancesInstanceShardOutput

type GetInstancesOutputArgs added in v3.9.0

type GetInstancesOutputArgs struct {
	// Instance availability zone.
	AvailabilityZone pulumi.StringPtrInput `pulumi:"availabilityZone"`
	// The ids list of MongoDB instances
	Ids pulumi.StringArrayInput `pulumi:"ids"`
	// Sizing of the instance to be queried.
	InstanceClass pulumi.StringPtrInput `pulumi:"instanceClass"`
	// Type of the instance to be queried. If it is set to `sharding`, the sharded cluster instances are listed. If it is set to `replicate`, replica set instances are listed. Default value `replicate`.
	InstanceType pulumi.StringPtrInput `pulumi:"instanceType"`
	// A regex string to apply to the instance name.
	NameRegex pulumi.StringPtrInput `pulumi:"nameRegex"`
	// The name of file that can save the collection of instances after running `pulumi preview`.
	OutputFile pulumi.StringPtrInput `pulumi:"outputFile"`
	// A mapping of tags to assign to the resource.
	Tags pulumi.MapInput `pulumi:"tags"`
}

A collection of arguments for invoking getInstances.

func (GetInstancesOutputArgs) ElementType added in v3.9.0

func (GetInstancesOutputArgs) ElementType() reflect.Type

type GetInstancesResult

type GetInstancesResult struct {
	// Instance availability zone.
	AvailabilityZone *string `pulumi:"availabilityZone"`
	// The provider-assigned unique ID for this managed resource.
	Id string `pulumi:"id"`
	// The ids list of MongoDB instances
	Ids []string `pulumi:"ids"`
	// Sizing of the MongoDB instance.
	InstanceClass *string `pulumi:"instanceClass"`
	// Instance type. Optional values `sharding` or `replicate`.
	InstanceType *string `pulumi:"instanceType"`
	// A list of MongoDB instances. Its every element contains the following attributes:
	Instances []GetInstancesInstance `pulumi:"instances"`
	NameRegex *string                `pulumi:"nameRegex"`
	// The names list of MongoDB instances
	Names      []string               `pulumi:"names"`
	OutputFile *string                `pulumi:"outputFile"`
	Tags       map[string]interface{} `pulumi:"tags"`
}

A collection of values returned by getInstances.

func GetInstances

func GetInstances(ctx *pulumi.Context, args *GetInstancesArgs, opts ...pulumi.InvokeOption) (*GetInstancesResult, error)

The `mongodb.getInstances` data source provides a collection of MongoDB instances available in Alicloud account. Filters support regular expression for the instance name, engine or instance type.

## Example Usage

```go package main

import (

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

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := mongodb.GetInstances(ctx, &mongodb.GetInstancesArgs{
			NameRegex:        pulumi.StringRef("dds-.+\\d+"),
			InstanceType:     pulumi.StringRef("replicate"),
			InstanceClass:    pulumi.StringRef("dds.mongo.mid"),
			AvailabilityZone: pulumi.StringRef("eu-central-1a"),
		}, nil)
		if err != nil {
			return err
		}
		return nil
	})
}

```

type GetInstancesResultOutput added in v3.9.0

type GetInstancesResultOutput struct{ *pulumi.OutputState }

A collection of values returned by getInstances.

func GetInstancesOutput added in v3.9.0

func GetInstancesOutput(ctx *pulumi.Context, args GetInstancesOutputArgs, opts ...pulumi.InvokeOption) GetInstancesResultOutput

func (GetInstancesResultOutput) AvailabilityZone added in v3.9.0

func (o GetInstancesResultOutput) AvailabilityZone() pulumi.StringPtrOutput

Instance availability zone.

func (GetInstancesResultOutput) ElementType added in v3.9.0

func (GetInstancesResultOutput) ElementType() reflect.Type

func (GetInstancesResultOutput) Id added in v3.9.0

The provider-assigned unique ID for this managed resource.

func (GetInstancesResultOutput) Ids added in v3.9.0

The ids list of MongoDB instances

func (GetInstancesResultOutput) InstanceClass added in v3.9.0

Sizing of the MongoDB instance.

func (GetInstancesResultOutput) InstanceType added in v3.9.0

Instance type. Optional values `sharding` or `replicate`.

func (GetInstancesResultOutput) Instances added in v3.9.0

A list of MongoDB instances. Its every element contains the following attributes:

func (GetInstancesResultOutput) NameRegex added in v3.9.0

func (GetInstancesResultOutput) Names added in v3.9.0

The names list of MongoDB instances

func (GetInstancesResultOutput) OutputFile added in v3.9.0

func (GetInstancesResultOutput) Tags added in v3.9.0

func (GetInstancesResultOutput) ToGetInstancesResultOutput added in v3.9.0

func (o GetInstancesResultOutput) ToGetInstancesResultOutput() GetInstancesResultOutput

func (GetInstancesResultOutput) ToGetInstancesResultOutputWithContext added in v3.9.0

func (o GetInstancesResultOutput) ToGetInstancesResultOutputWithContext(ctx context.Context) GetInstancesResultOutput

type GetServerlessInstancesArgs added in v3.12.0

type GetServerlessInstancesArgs struct {
	// The db instance class.
	DbInstanceClass *string `pulumi:"dbInstanceClass"`
	// The db instance description.
	DbInstanceDescription *string `pulumi:"dbInstanceDescription"`
	// Default to `false`. Set it to `true` can output more details about resource attributes.
	EnableDetails *bool `pulumi:"enableDetails"`
	// A list of Serverless Instance IDs.
	Ids []string `pulumi:"ids"`
	// The network type of the instance. Valid values: `Classic` or `VPC`.
	NetworkType *string `pulumi:"networkType"`
	// File name where to save data source results (after running `pulumi preview`).
	OutputFile *string `pulumi:"outputFile"`
	// The ID of the resource group.
	ResourceGroupId *string `pulumi:"resourceGroupId"`
	// The instance status. Valid values: `Creating`, `DBInstanceClassChanging`, `DBInstanceNetTypeChanging`, `Deleting`, `EngineVersionUpgrading`, `GuardSwitching`, `HASwitching`, `Importing`, `ImportingFromOthers`, `LinkSwitching`, `MinorVersionUpgrading`, `NodeCreating`, `NodeDeleting`, `Rebooting`, `Restoring`, `Running`, `SSLModifying`, `TDEModifying`, `TempDBInstanceCreating`, `Transing`, `TransingToOthers`, `released`.
	Status *string `pulumi:"status"`
	// A mapping of tags to assign to the resource.
	Tags map[string]interface{} `pulumi:"tags"`
	// The ID of the VPC network.
	VpcId *string `pulumi:"vpcId"`
	// The id of the vswitch.
	VswitchId *string `pulumi:"vswitchId"`
	// The ID of the zone.
	ZoneId *string `pulumi:"zoneId"`
}

A collection of arguments for invoking getServerlessInstances.

type GetServerlessInstancesInstance added in v3.12.0

type GetServerlessInstancesInstance struct {
	// The read/write throughput consumed by the instance.
	CapacityUnit int `pulumi:"capacityUnit"`
	// The db instance class.
	DbInstanceClass string `pulumi:"dbInstanceClass"`
	// The db instance description.
	DbInstanceDescription string `pulumi:"dbInstanceDescription"`
	// The db instance id.
	DbInstanceId string `pulumi:"dbInstanceId"`
	// The db instance release protection.
	DbInstanceReleaseProtection bool `pulumi:"dbInstanceReleaseProtection"`
	// The db instance storage.
	DbInstanceStorage int `pulumi:"dbInstanceStorage"`
	// The database engine of the instance.
	Engine string `pulumi:"engine"`
	// The database version number. Valid values: `4.2`.
	EngineVersion string `pulumi:"engineVersion"`
	// The time when the subscription instance expires. The time is in the `yyyy-MM-ddTHH:mmZ` format. The time is displayed in UTC.
	ExpireTime string `pulumi:"expireTime"`
	// The ID of the Serverless Instance.
	Id string `pulumi:"id"`
	// Indicates the type of the instance. Valid values: `0`: physical machine. `1`: ECS. `2`: DOCKER. `18`: k8s new architecture instance.
	KindCode string `pulumi:"kindCode"`
	// The locked status of the instance.
	LockMode string `pulumi:"lockMode"`
	// The start time of the maintenance window. The time is in the `HH:mmZ` format. The time is displayed in UTC.
	MaintainEndTime string `pulumi:"maintainEndTime"`
	// The end time of the maintenance window. The time is in the `HH:mmZ` format. The time is displayed in UTC.
	MaintainStartTime string `pulumi:"maintainStartTime"`
	// Instance maximum connections.
	MaxConnections int `pulumi:"maxConnections"`
	// The maximum IOPS of the instance.
	MaxIops int `pulumi:"maxIops"`
	// The network type of the instance.
	NetworkType string `pulumi:"networkType"`
	// The Payment type of the instance.
	PaymentType string `pulumi:"paymentType"`
	// The access protocol type of the instance. Valid values: `mongodb`, `dynamodb`.
	ProtocolType string `pulumi:"protocolType"`
	// The ID of the resource group.
	ResourceGroupId string `pulumi:"resourceGroupId"`
	// The security ip list.
	SecurityIpGroups []GetServerlessInstancesInstanceSecurityIpGroup `pulumi:"securityIpGroups"`
	// The status of the instance.
	Status string `pulumi:"status"`
	// The storage engine used by the instance.
	StorageEngine string `pulumi:"storageEngine"`
	// The tag of the resource.
	Tags map[string]interface{} `pulumi:"tags"`
	// Intranet secret free access mode.
	VpcAuthMode string `pulumi:"vpcAuthMode"`
	// The ID of the VPC network.
	VpcId string `pulumi:"vpcId"`
	// The id of the vswitch.
	VswitchId string `pulumi:"vswitchId"`
	// The ID of the zone.
	ZoneId string `pulumi:"zoneId"`
}

type GetServerlessInstancesInstanceArgs added in v3.12.0

type GetServerlessInstancesInstanceArgs struct {
	// The read/write throughput consumed by the instance.
	CapacityUnit pulumi.IntInput `pulumi:"capacityUnit"`
	// The db instance class.
	DbInstanceClass pulumi.StringInput `pulumi:"dbInstanceClass"`
	// The db instance description.
	DbInstanceDescription pulumi.StringInput `pulumi:"dbInstanceDescription"`
	// The db instance id.
	DbInstanceId pulumi.StringInput `pulumi:"dbInstanceId"`
	// The db instance release protection.
	DbInstanceReleaseProtection pulumi.BoolInput `pulumi:"dbInstanceReleaseProtection"`
	// The db instance storage.
	DbInstanceStorage pulumi.IntInput `pulumi:"dbInstanceStorage"`
	// The database engine of the instance.
	Engine pulumi.StringInput `pulumi:"engine"`
	// The database version number. Valid values: `4.2`.
	EngineVersion pulumi.StringInput `pulumi:"engineVersion"`
	// The time when the subscription instance expires. The time is in the `yyyy-MM-ddTHH:mmZ` format. The time is displayed in UTC.
	ExpireTime pulumi.StringInput `pulumi:"expireTime"`
	// The ID of the Serverless Instance.
	Id pulumi.StringInput `pulumi:"id"`
	// Indicates the type of the instance. Valid values: `0`: physical machine. `1`: ECS. `2`: DOCKER. `18`: k8s new architecture instance.
	KindCode pulumi.StringInput `pulumi:"kindCode"`
	// The locked status of the instance.
	LockMode pulumi.StringInput `pulumi:"lockMode"`
	// The start time of the maintenance window. The time is in the `HH:mmZ` format. The time is displayed in UTC.
	MaintainEndTime pulumi.StringInput `pulumi:"maintainEndTime"`
	// The end time of the maintenance window. The time is in the `HH:mmZ` format. The time is displayed in UTC.
	MaintainStartTime pulumi.StringInput `pulumi:"maintainStartTime"`
	// Instance maximum connections.
	MaxConnections pulumi.IntInput `pulumi:"maxConnections"`
	// The maximum IOPS of the instance.
	MaxIops pulumi.IntInput `pulumi:"maxIops"`
	// The network type of the instance.
	NetworkType pulumi.StringInput `pulumi:"networkType"`
	// The Payment type of the instance.
	PaymentType pulumi.StringInput `pulumi:"paymentType"`
	// The access protocol type of the instance. Valid values: `mongodb`, `dynamodb`.
	ProtocolType pulumi.StringInput `pulumi:"protocolType"`
	// The ID of the resource group.
	ResourceGroupId pulumi.StringInput `pulumi:"resourceGroupId"`
	// The security ip list.
	SecurityIpGroups GetServerlessInstancesInstanceSecurityIpGroupArrayInput `pulumi:"securityIpGroups"`
	// The status of the instance.
	Status pulumi.StringInput `pulumi:"status"`
	// The storage engine used by the instance.
	StorageEngine pulumi.StringInput `pulumi:"storageEngine"`
	// The tag of the resource.
	Tags pulumi.MapInput `pulumi:"tags"`
	// Intranet secret free access mode.
	VpcAuthMode pulumi.StringInput `pulumi:"vpcAuthMode"`
	// The ID of the VPC network.
	VpcId pulumi.StringInput `pulumi:"vpcId"`
	// The id of the vswitch.
	VswitchId pulumi.StringInput `pulumi:"vswitchId"`
	// The ID of the zone.
	ZoneId pulumi.StringInput `pulumi:"zoneId"`
}

func (GetServerlessInstancesInstanceArgs) ElementType added in v3.12.0

func (GetServerlessInstancesInstanceArgs) ToGetServerlessInstancesInstanceOutput added in v3.12.0

func (i GetServerlessInstancesInstanceArgs) ToGetServerlessInstancesInstanceOutput() GetServerlessInstancesInstanceOutput

func (GetServerlessInstancesInstanceArgs) ToGetServerlessInstancesInstanceOutputWithContext added in v3.12.0

func (i GetServerlessInstancesInstanceArgs) ToGetServerlessInstancesInstanceOutputWithContext(ctx context.Context) GetServerlessInstancesInstanceOutput

type GetServerlessInstancesInstanceArray added in v3.12.0

type GetServerlessInstancesInstanceArray []GetServerlessInstancesInstanceInput

func (GetServerlessInstancesInstanceArray) ElementType added in v3.12.0

func (GetServerlessInstancesInstanceArray) ToGetServerlessInstancesInstanceArrayOutput added in v3.12.0

func (i GetServerlessInstancesInstanceArray) ToGetServerlessInstancesInstanceArrayOutput() GetServerlessInstancesInstanceArrayOutput

func (GetServerlessInstancesInstanceArray) ToGetServerlessInstancesInstanceArrayOutputWithContext added in v3.12.0

func (i GetServerlessInstancesInstanceArray) ToGetServerlessInstancesInstanceArrayOutputWithContext(ctx context.Context) GetServerlessInstancesInstanceArrayOutput

type GetServerlessInstancesInstanceArrayInput added in v3.12.0

type GetServerlessInstancesInstanceArrayInput interface {
	pulumi.Input

	ToGetServerlessInstancesInstanceArrayOutput() GetServerlessInstancesInstanceArrayOutput
	ToGetServerlessInstancesInstanceArrayOutputWithContext(context.Context) GetServerlessInstancesInstanceArrayOutput
}

GetServerlessInstancesInstanceArrayInput is an input type that accepts GetServerlessInstancesInstanceArray and GetServerlessInstancesInstanceArrayOutput values. You can construct a concrete instance of `GetServerlessInstancesInstanceArrayInput` via:

GetServerlessInstancesInstanceArray{ GetServerlessInstancesInstanceArgs{...} }

type GetServerlessInstancesInstanceArrayOutput added in v3.12.0

type GetServerlessInstancesInstanceArrayOutput struct{ *pulumi.OutputState }

func (GetServerlessInstancesInstanceArrayOutput) ElementType added in v3.12.0

func (GetServerlessInstancesInstanceArrayOutput) Index added in v3.12.0

func (GetServerlessInstancesInstanceArrayOutput) ToGetServerlessInstancesInstanceArrayOutput added in v3.12.0

func (o GetServerlessInstancesInstanceArrayOutput) ToGetServerlessInstancesInstanceArrayOutput() GetServerlessInstancesInstanceArrayOutput

func (GetServerlessInstancesInstanceArrayOutput) ToGetServerlessInstancesInstanceArrayOutputWithContext added in v3.12.0

func (o GetServerlessInstancesInstanceArrayOutput) ToGetServerlessInstancesInstanceArrayOutputWithContext(ctx context.Context) GetServerlessInstancesInstanceArrayOutput

type GetServerlessInstancesInstanceInput added in v3.12.0

type GetServerlessInstancesInstanceInput interface {
	pulumi.Input

	ToGetServerlessInstancesInstanceOutput() GetServerlessInstancesInstanceOutput
	ToGetServerlessInstancesInstanceOutputWithContext(context.Context) GetServerlessInstancesInstanceOutput
}

GetServerlessInstancesInstanceInput is an input type that accepts GetServerlessInstancesInstanceArgs and GetServerlessInstancesInstanceOutput values. You can construct a concrete instance of `GetServerlessInstancesInstanceInput` via:

GetServerlessInstancesInstanceArgs{...}

type GetServerlessInstancesInstanceOutput added in v3.12.0

type GetServerlessInstancesInstanceOutput struct{ *pulumi.OutputState }

func (GetServerlessInstancesInstanceOutput) CapacityUnit added in v3.12.0

The read/write throughput consumed by the instance.

func (GetServerlessInstancesInstanceOutput) DbInstanceClass added in v3.12.0

The db instance class.

func (GetServerlessInstancesInstanceOutput) DbInstanceDescription added in v3.12.0

func (o GetServerlessInstancesInstanceOutput) DbInstanceDescription() pulumi.StringOutput

The db instance description.

func (GetServerlessInstancesInstanceOutput) DbInstanceId added in v3.12.0

The db instance id.

func (GetServerlessInstancesInstanceOutput) DbInstanceReleaseProtection added in v3.12.0

func (o GetServerlessInstancesInstanceOutput) DbInstanceReleaseProtection() pulumi.BoolOutput

The db instance release protection.

func (GetServerlessInstancesInstanceOutput) DbInstanceStorage added in v3.12.0

The db instance storage.

func (GetServerlessInstancesInstanceOutput) ElementType added in v3.12.0

func (GetServerlessInstancesInstanceOutput) Engine added in v3.12.0

The database engine of the instance.

func (GetServerlessInstancesInstanceOutput) EngineVersion added in v3.12.0

The database version number. Valid values: `4.2`.

func (GetServerlessInstancesInstanceOutput) ExpireTime added in v3.12.0

The time when the subscription instance expires. The time is in the `yyyy-MM-ddTHH:mmZ` format. The time is displayed in UTC.

func (GetServerlessInstancesInstanceOutput) Id added in v3.12.0

The ID of the Serverless Instance.

func (GetServerlessInstancesInstanceOutput) KindCode added in v3.12.0

Indicates the type of the instance. Valid values: `0`: physical machine. `1`: ECS. `2`: DOCKER. `18`: k8s new architecture instance.

func (GetServerlessInstancesInstanceOutput) LockMode added in v3.12.0

The locked status of the instance.

func (GetServerlessInstancesInstanceOutput) MaintainEndTime added in v3.12.0

The start time of the maintenance window. The time is in the `HH:mmZ` format. The time is displayed in UTC.

func (GetServerlessInstancesInstanceOutput) MaintainStartTime added in v3.12.0

The end time of the maintenance window. The time is in the `HH:mmZ` format. The time is displayed in UTC.

func (GetServerlessInstancesInstanceOutput) MaxConnections added in v3.12.0

Instance maximum connections.

func (GetServerlessInstancesInstanceOutput) MaxIops added in v3.12.0

The maximum IOPS of the instance.

func (GetServerlessInstancesInstanceOutput) NetworkType added in v3.12.0

The network type of the instance.

func (GetServerlessInstancesInstanceOutput) PaymentType added in v3.12.0

The Payment type of the instance.

func (GetServerlessInstancesInstanceOutput) ProtocolType added in v3.12.0

The access protocol type of the instance. Valid values: `mongodb`, `dynamodb`.

func (GetServerlessInstancesInstanceOutput) ResourceGroupId added in v3.12.0

The ID of the resource group.

func (GetServerlessInstancesInstanceOutput) SecurityIpGroups added in v3.12.0

The security ip list.

func (GetServerlessInstancesInstanceOutput) Status added in v3.12.0

The status of the instance.

func (GetServerlessInstancesInstanceOutput) StorageEngine added in v3.12.0

The storage engine used by the instance.

func (GetServerlessInstancesInstanceOutput) Tags added in v3.12.0

The tag of the resource.

func (GetServerlessInstancesInstanceOutput) ToGetServerlessInstancesInstanceOutput added in v3.12.0

func (o GetServerlessInstancesInstanceOutput) ToGetServerlessInstancesInstanceOutput() GetServerlessInstancesInstanceOutput

func (GetServerlessInstancesInstanceOutput) ToGetServerlessInstancesInstanceOutputWithContext added in v3.12.0

func (o GetServerlessInstancesInstanceOutput) ToGetServerlessInstancesInstanceOutputWithContext(ctx context.Context) GetServerlessInstancesInstanceOutput

func (GetServerlessInstancesInstanceOutput) VpcAuthMode added in v3.12.0

Intranet secret free access mode.

func (GetServerlessInstancesInstanceOutput) VpcId added in v3.12.0

The ID of the VPC network.

func (GetServerlessInstancesInstanceOutput) VswitchId added in v3.12.0

The id of the vswitch.

func (GetServerlessInstancesInstanceOutput) ZoneId added in v3.12.0

The ID of the zone.

type GetServerlessInstancesInstanceSecurityIpGroup added in v3.12.0

type GetServerlessInstancesInstanceSecurityIpGroup struct {
	SecurityIpGroupAttribute string `pulumi:"securityIpGroupAttribute"`
	SecurityIpGroupName      string `pulumi:"securityIpGroupName"`
	SecurityIpList           string `pulumi:"securityIpList"`
}

type GetServerlessInstancesInstanceSecurityIpGroupArgs added in v3.12.0

type GetServerlessInstancesInstanceSecurityIpGroupArgs struct {
	SecurityIpGroupAttribute pulumi.StringInput `pulumi:"securityIpGroupAttribute"`
	SecurityIpGroupName      pulumi.StringInput `pulumi:"securityIpGroupName"`
	SecurityIpList           pulumi.StringInput `pulumi:"securityIpList"`
}

func (GetServerlessInstancesInstanceSecurityIpGroupArgs) ElementType added in v3.12.0

func (GetServerlessInstancesInstanceSecurityIpGroupArgs) ToGetServerlessInstancesInstanceSecurityIpGroupOutput added in v3.12.0

func (i GetServerlessInstancesInstanceSecurityIpGroupArgs) ToGetServerlessInstancesInstanceSecurityIpGroupOutput() GetServerlessInstancesInstanceSecurityIpGroupOutput

func (GetServerlessInstancesInstanceSecurityIpGroupArgs) ToGetServerlessInstancesInstanceSecurityIpGroupOutputWithContext added in v3.12.0

func (i GetServerlessInstancesInstanceSecurityIpGroupArgs) ToGetServerlessInstancesInstanceSecurityIpGroupOutputWithContext(ctx context.Context) GetServerlessInstancesInstanceSecurityIpGroupOutput

type GetServerlessInstancesInstanceSecurityIpGroupArray added in v3.12.0

type GetServerlessInstancesInstanceSecurityIpGroupArray []GetServerlessInstancesInstanceSecurityIpGroupInput

func (GetServerlessInstancesInstanceSecurityIpGroupArray) ElementType added in v3.12.0

func (GetServerlessInstancesInstanceSecurityIpGroupArray) ToGetServerlessInstancesInstanceSecurityIpGroupArrayOutput added in v3.12.0

func (i GetServerlessInstancesInstanceSecurityIpGroupArray) ToGetServerlessInstancesInstanceSecurityIpGroupArrayOutput() GetServerlessInstancesInstanceSecurityIpGroupArrayOutput

func (GetServerlessInstancesInstanceSecurityIpGroupArray) ToGetServerlessInstancesInstanceSecurityIpGroupArrayOutputWithContext added in v3.12.0

func (i GetServerlessInstancesInstanceSecurityIpGroupArray) ToGetServerlessInstancesInstanceSecurityIpGroupArrayOutputWithContext(ctx context.Context) GetServerlessInstancesInstanceSecurityIpGroupArrayOutput

type GetServerlessInstancesInstanceSecurityIpGroupArrayInput added in v3.12.0

type GetServerlessInstancesInstanceSecurityIpGroupArrayInput interface {
	pulumi.Input

	ToGetServerlessInstancesInstanceSecurityIpGroupArrayOutput() GetServerlessInstancesInstanceSecurityIpGroupArrayOutput
	ToGetServerlessInstancesInstanceSecurityIpGroupArrayOutputWithContext(context.Context) GetServerlessInstancesInstanceSecurityIpGroupArrayOutput
}

GetServerlessInstancesInstanceSecurityIpGroupArrayInput is an input type that accepts GetServerlessInstancesInstanceSecurityIpGroupArray and GetServerlessInstancesInstanceSecurityIpGroupArrayOutput values. You can construct a concrete instance of `GetServerlessInstancesInstanceSecurityIpGroupArrayInput` via:

GetServerlessInstancesInstanceSecurityIpGroupArray{ GetServerlessInstancesInstanceSecurityIpGroupArgs{...} }

type GetServerlessInstancesInstanceSecurityIpGroupArrayOutput added in v3.12.0

type GetServerlessInstancesInstanceSecurityIpGroupArrayOutput struct{ *pulumi.OutputState }

func (GetServerlessInstancesInstanceSecurityIpGroupArrayOutput) ElementType added in v3.12.0

func (GetServerlessInstancesInstanceSecurityIpGroupArrayOutput) Index added in v3.12.0

func (GetServerlessInstancesInstanceSecurityIpGroupArrayOutput) ToGetServerlessInstancesInstanceSecurityIpGroupArrayOutput added in v3.12.0

func (GetServerlessInstancesInstanceSecurityIpGroupArrayOutput) ToGetServerlessInstancesInstanceSecurityIpGroupArrayOutputWithContext added in v3.12.0

func (o GetServerlessInstancesInstanceSecurityIpGroupArrayOutput) ToGetServerlessInstancesInstanceSecurityIpGroupArrayOutputWithContext(ctx context.Context) GetServerlessInstancesInstanceSecurityIpGroupArrayOutput

type GetServerlessInstancesInstanceSecurityIpGroupInput added in v3.12.0

type GetServerlessInstancesInstanceSecurityIpGroupInput interface {
	pulumi.Input

	ToGetServerlessInstancesInstanceSecurityIpGroupOutput() GetServerlessInstancesInstanceSecurityIpGroupOutput
	ToGetServerlessInstancesInstanceSecurityIpGroupOutputWithContext(context.Context) GetServerlessInstancesInstanceSecurityIpGroupOutput
}

GetServerlessInstancesInstanceSecurityIpGroupInput is an input type that accepts GetServerlessInstancesInstanceSecurityIpGroupArgs and GetServerlessInstancesInstanceSecurityIpGroupOutput values. You can construct a concrete instance of `GetServerlessInstancesInstanceSecurityIpGroupInput` via:

GetServerlessInstancesInstanceSecurityIpGroupArgs{...}

type GetServerlessInstancesInstanceSecurityIpGroupOutput added in v3.12.0

type GetServerlessInstancesInstanceSecurityIpGroupOutput struct{ *pulumi.OutputState }

func (GetServerlessInstancesInstanceSecurityIpGroupOutput) ElementType added in v3.12.0

func (GetServerlessInstancesInstanceSecurityIpGroupOutput) SecurityIpGroupAttribute added in v3.12.0

func (GetServerlessInstancesInstanceSecurityIpGroupOutput) SecurityIpGroupName added in v3.12.0

func (GetServerlessInstancesInstanceSecurityIpGroupOutput) SecurityIpList added in v3.12.0

func (GetServerlessInstancesInstanceSecurityIpGroupOutput) ToGetServerlessInstancesInstanceSecurityIpGroupOutput added in v3.12.0

func (o GetServerlessInstancesInstanceSecurityIpGroupOutput) ToGetServerlessInstancesInstanceSecurityIpGroupOutput() GetServerlessInstancesInstanceSecurityIpGroupOutput

func (GetServerlessInstancesInstanceSecurityIpGroupOutput) ToGetServerlessInstancesInstanceSecurityIpGroupOutputWithContext added in v3.12.0

func (o GetServerlessInstancesInstanceSecurityIpGroupOutput) ToGetServerlessInstancesInstanceSecurityIpGroupOutputWithContext(ctx context.Context) GetServerlessInstancesInstanceSecurityIpGroupOutput

type GetServerlessInstancesOutputArgs added in v3.12.0

type GetServerlessInstancesOutputArgs struct {
	// The db instance class.
	DbInstanceClass pulumi.StringPtrInput `pulumi:"dbInstanceClass"`
	// The db instance description.
	DbInstanceDescription pulumi.StringPtrInput `pulumi:"dbInstanceDescription"`
	// Default to `false`. Set it to `true` can output more details about resource attributes.
	EnableDetails pulumi.BoolPtrInput `pulumi:"enableDetails"`
	// A list of Serverless Instance IDs.
	Ids pulumi.StringArrayInput `pulumi:"ids"`
	// The network type of the instance. Valid values: `Classic` or `VPC`.
	NetworkType pulumi.StringPtrInput `pulumi:"networkType"`
	// File name where to save data source results (after running `pulumi preview`).
	OutputFile pulumi.StringPtrInput `pulumi:"outputFile"`
	// The ID of the resource group.
	ResourceGroupId pulumi.StringPtrInput `pulumi:"resourceGroupId"`
	// The instance status. Valid values: `Creating`, `DBInstanceClassChanging`, `DBInstanceNetTypeChanging`, `Deleting`, `EngineVersionUpgrading`, `GuardSwitching`, `HASwitching`, `Importing`, `ImportingFromOthers`, `LinkSwitching`, `MinorVersionUpgrading`, `NodeCreating`, `NodeDeleting`, `Rebooting`, `Restoring`, `Running`, `SSLModifying`, `TDEModifying`, `TempDBInstanceCreating`, `Transing`, `TransingToOthers`, `released`.
	Status pulumi.StringPtrInput `pulumi:"status"`
	// A mapping of tags to assign to the resource.
	Tags pulumi.MapInput `pulumi:"tags"`
	// The ID of the VPC network.
	VpcId pulumi.StringPtrInput `pulumi:"vpcId"`
	// The id of the vswitch.
	VswitchId pulumi.StringPtrInput `pulumi:"vswitchId"`
	// The ID of the zone.
	ZoneId pulumi.StringPtrInput `pulumi:"zoneId"`
}

A collection of arguments for invoking getServerlessInstances.

func (GetServerlessInstancesOutputArgs) ElementType added in v3.12.0

type GetServerlessInstancesResult added in v3.12.0

type GetServerlessInstancesResult struct {
	DbInstanceClass       *string `pulumi:"dbInstanceClass"`
	DbInstanceDescription *string `pulumi:"dbInstanceDescription"`
	EnableDetails         *bool   `pulumi:"enableDetails"`
	// The provider-assigned unique ID for this managed resource.
	Id              string                           `pulumi:"id"`
	Ids             []string                         `pulumi:"ids"`
	Instances       []GetServerlessInstancesInstance `pulumi:"instances"`
	NetworkType     *string                          `pulumi:"networkType"`
	OutputFile      *string                          `pulumi:"outputFile"`
	ResourceGroupId *string                          `pulumi:"resourceGroupId"`
	Status          *string                          `pulumi:"status"`
	Tags            map[string]interface{}           `pulumi:"tags"`
	VpcId           *string                          `pulumi:"vpcId"`
	VswitchId       *string                          `pulumi:"vswitchId"`
	ZoneId          *string                          `pulumi:"zoneId"`
}

A collection of values returned by getServerlessInstances.

func GetServerlessInstances added in v3.12.0

func GetServerlessInstances(ctx *pulumi.Context, args *GetServerlessInstancesArgs, opts ...pulumi.InvokeOption) (*GetServerlessInstancesResult, error)

This data source provides the Mongodb Serverless Instances of the current Alibaba Cloud user.

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

## Example Usage

Basic Usage

```go package main

import (

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

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		example, err := mongodb.GetServerlessInstances(ctx, &mongodb.GetServerlessInstancesArgs{
			Ids: []string{
				"example_value",
			},
			DbInstanceClass:       pulumi.StringRef("example_value"),
			DbInstanceDescription: pulumi.StringRef("example_value"),
			NetworkType:           pulumi.StringRef("VPC"),
			ResourceGroupId:       pulumi.StringRef("example_value"),
			Status:                pulumi.StringRef("Running"),
			VpcId:                 pulumi.StringRef("example_value"),
			VswitchId:             pulumi.StringRef("example_value"),
			ZoneId:                pulumi.StringRef("example_value"),
			Tags: map[string]interface{}{
				"Created": "MongodbServerlessInstance",
				"For":     "TF",
			},
		}, nil)
		if err != nil {
			return err
		}
		ctx.Export("mongodbServerlessInstanceId1", example.Instances[0].Id)
		return nil
	})
}

```

type GetServerlessInstancesResultOutput added in v3.12.0

type GetServerlessInstancesResultOutput struct{ *pulumi.OutputState }

A collection of values returned by getServerlessInstances.

func GetServerlessInstancesOutput added in v3.12.0

func (GetServerlessInstancesResultOutput) DbInstanceClass added in v3.12.0

func (GetServerlessInstancesResultOutput) DbInstanceDescription added in v3.12.0

func (o GetServerlessInstancesResultOutput) DbInstanceDescription() pulumi.StringPtrOutput

func (GetServerlessInstancesResultOutput) ElementType added in v3.12.0

func (GetServerlessInstancesResultOutput) EnableDetails added in v3.12.0

func (GetServerlessInstancesResultOutput) Id added in v3.12.0

The provider-assigned unique ID for this managed resource.

func (GetServerlessInstancesResultOutput) Ids added in v3.12.0

func (GetServerlessInstancesResultOutput) Instances added in v3.12.0

func (GetServerlessInstancesResultOutput) NetworkType added in v3.12.0

func (GetServerlessInstancesResultOutput) OutputFile added in v3.12.0

func (GetServerlessInstancesResultOutput) ResourceGroupId added in v3.12.0

func (GetServerlessInstancesResultOutput) Status added in v3.12.0

func (GetServerlessInstancesResultOutput) Tags added in v3.12.0

func (GetServerlessInstancesResultOutput) ToGetServerlessInstancesResultOutput added in v3.12.0

func (o GetServerlessInstancesResultOutput) ToGetServerlessInstancesResultOutput() GetServerlessInstancesResultOutput

func (GetServerlessInstancesResultOutput) ToGetServerlessInstancesResultOutputWithContext added in v3.12.0

func (o GetServerlessInstancesResultOutput) ToGetServerlessInstancesResultOutputWithContext(ctx context.Context) GetServerlessInstancesResultOutput

func (GetServerlessInstancesResultOutput) VpcId added in v3.12.0

func (GetServerlessInstancesResultOutput) VswitchId added in v3.12.0

func (GetServerlessInstancesResultOutput) ZoneId added in v3.12.0

type GetShardingNetworkPrivateAddressesAddress added in v3.19.0

type GetShardingNetworkPrivateAddressesAddress struct {
	// The db instance id.
	DbInstanceId string `pulumi:"dbInstanceId"`
	// The remaining duration of the classic network address. Unit: `seconds`.
	ExpiredTime string `pulumi:"expiredTime"`
	// The IP address of the instance.
	IpAddress string `pulumi:"ipAddress"`
	// The endpoint of the instance.
	NetworkAddress string `pulumi:"networkAddress"`
	// The type of the network.
	NetworkType string `pulumi:"networkType"`
	// The ID of the `mongos`, `shard`, or `Configserver` node in the sharded cluster instance.
	NodeId string `pulumi:"nodeId"`
	// The type of the node.
	NodeType string `pulumi:"nodeType"`
	// The port number.
	Port string `pulumi:"port"`
	// The role of the node.
	Role string `pulumi:"role"`
	// The ID of the VPC.
	VpcId string `pulumi:"vpcId"`
	// The vSwitch ID of the VPC.
	VswitchId string `pulumi:"vswitchId"`
}

type GetShardingNetworkPrivateAddressesAddressArgs added in v3.19.0

type GetShardingNetworkPrivateAddressesAddressArgs struct {
	// The db instance id.
	DbInstanceId pulumi.StringInput `pulumi:"dbInstanceId"`
	// The remaining duration of the classic network address. Unit: `seconds`.
	ExpiredTime pulumi.StringInput `pulumi:"expiredTime"`
	// The IP address of the instance.
	IpAddress pulumi.StringInput `pulumi:"ipAddress"`
	// The endpoint of the instance.
	NetworkAddress pulumi.StringInput `pulumi:"networkAddress"`
	// The type of the network.
	NetworkType pulumi.StringInput `pulumi:"networkType"`
	// The ID of the `mongos`, `shard`, or `Configserver` node in the sharded cluster instance.
	NodeId pulumi.StringInput `pulumi:"nodeId"`
	// The type of the node.
	NodeType pulumi.StringInput `pulumi:"nodeType"`
	// The port number.
	Port pulumi.StringInput `pulumi:"port"`
	// The role of the node.
	Role pulumi.StringInput `pulumi:"role"`
	// The ID of the VPC.
	VpcId pulumi.StringInput `pulumi:"vpcId"`
	// The vSwitch ID of the VPC.
	VswitchId pulumi.StringInput `pulumi:"vswitchId"`
}

func (GetShardingNetworkPrivateAddressesAddressArgs) ElementType added in v3.19.0

func (GetShardingNetworkPrivateAddressesAddressArgs) ToGetShardingNetworkPrivateAddressesAddressOutput added in v3.19.0

func (i GetShardingNetworkPrivateAddressesAddressArgs) ToGetShardingNetworkPrivateAddressesAddressOutput() GetShardingNetworkPrivateAddressesAddressOutput

func (GetShardingNetworkPrivateAddressesAddressArgs) ToGetShardingNetworkPrivateAddressesAddressOutputWithContext added in v3.19.0

func (i GetShardingNetworkPrivateAddressesAddressArgs) ToGetShardingNetworkPrivateAddressesAddressOutputWithContext(ctx context.Context) GetShardingNetworkPrivateAddressesAddressOutput

type GetShardingNetworkPrivateAddressesAddressArray added in v3.19.0

type GetShardingNetworkPrivateAddressesAddressArray []GetShardingNetworkPrivateAddressesAddressInput

func (GetShardingNetworkPrivateAddressesAddressArray) ElementType added in v3.19.0

func (GetShardingNetworkPrivateAddressesAddressArray) ToGetShardingNetworkPrivateAddressesAddressArrayOutput added in v3.19.0

func (i GetShardingNetworkPrivateAddressesAddressArray) ToGetShardingNetworkPrivateAddressesAddressArrayOutput() GetShardingNetworkPrivateAddressesAddressArrayOutput

func (GetShardingNetworkPrivateAddressesAddressArray) ToGetShardingNetworkPrivateAddressesAddressArrayOutputWithContext added in v3.19.0

func (i GetShardingNetworkPrivateAddressesAddressArray) ToGetShardingNetworkPrivateAddressesAddressArrayOutputWithContext(ctx context.Context) GetShardingNetworkPrivateAddressesAddressArrayOutput

type GetShardingNetworkPrivateAddressesAddressArrayInput added in v3.19.0

type GetShardingNetworkPrivateAddressesAddressArrayInput interface {
	pulumi.Input

	ToGetShardingNetworkPrivateAddressesAddressArrayOutput() GetShardingNetworkPrivateAddressesAddressArrayOutput
	ToGetShardingNetworkPrivateAddressesAddressArrayOutputWithContext(context.Context) GetShardingNetworkPrivateAddressesAddressArrayOutput
}

GetShardingNetworkPrivateAddressesAddressArrayInput is an input type that accepts GetShardingNetworkPrivateAddressesAddressArray and GetShardingNetworkPrivateAddressesAddressArrayOutput values. You can construct a concrete instance of `GetShardingNetworkPrivateAddressesAddressArrayInput` via:

GetShardingNetworkPrivateAddressesAddressArray{ GetShardingNetworkPrivateAddressesAddressArgs{...} }

type GetShardingNetworkPrivateAddressesAddressArrayOutput added in v3.19.0

type GetShardingNetworkPrivateAddressesAddressArrayOutput struct{ *pulumi.OutputState }

func (GetShardingNetworkPrivateAddressesAddressArrayOutput) ElementType added in v3.19.0

func (GetShardingNetworkPrivateAddressesAddressArrayOutput) Index added in v3.19.0

func (GetShardingNetworkPrivateAddressesAddressArrayOutput) ToGetShardingNetworkPrivateAddressesAddressArrayOutput added in v3.19.0

func (GetShardingNetworkPrivateAddressesAddressArrayOutput) ToGetShardingNetworkPrivateAddressesAddressArrayOutputWithContext added in v3.19.0

func (o GetShardingNetworkPrivateAddressesAddressArrayOutput) ToGetShardingNetworkPrivateAddressesAddressArrayOutputWithContext(ctx context.Context) GetShardingNetworkPrivateAddressesAddressArrayOutput

type GetShardingNetworkPrivateAddressesAddressInput added in v3.19.0

type GetShardingNetworkPrivateAddressesAddressInput interface {
	pulumi.Input

	ToGetShardingNetworkPrivateAddressesAddressOutput() GetShardingNetworkPrivateAddressesAddressOutput
	ToGetShardingNetworkPrivateAddressesAddressOutputWithContext(context.Context) GetShardingNetworkPrivateAddressesAddressOutput
}

GetShardingNetworkPrivateAddressesAddressInput is an input type that accepts GetShardingNetworkPrivateAddressesAddressArgs and GetShardingNetworkPrivateAddressesAddressOutput values. You can construct a concrete instance of `GetShardingNetworkPrivateAddressesAddressInput` via:

GetShardingNetworkPrivateAddressesAddressArgs{...}

type GetShardingNetworkPrivateAddressesAddressOutput added in v3.19.0

type GetShardingNetworkPrivateAddressesAddressOutput struct{ *pulumi.OutputState }

func (GetShardingNetworkPrivateAddressesAddressOutput) DbInstanceId added in v3.19.0

The db instance id.

func (GetShardingNetworkPrivateAddressesAddressOutput) ElementType added in v3.19.0

func (GetShardingNetworkPrivateAddressesAddressOutput) ExpiredTime added in v3.19.0

The remaining duration of the classic network address. Unit: `seconds`.

func (GetShardingNetworkPrivateAddressesAddressOutput) IpAddress added in v3.19.0

The IP address of the instance.

func (GetShardingNetworkPrivateAddressesAddressOutput) NetworkAddress added in v3.19.0

The endpoint of the instance.

func (GetShardingNetworkPrivateAddressesAddressOutput) NetworkType added in v3.19.0

The type of the network.

func (GetShardingNetworkPrivateAddressesAddressOutput) NodeId added in v3.19.0

The ID of the `mongos`, `shard`, or `Configserver` node in the sharded cluster instance.

func (GetShardingNetworkPrivateAddressesAddressOutput) NodeType added in v3.19.0

The type of the node.

func (GetShardingNetworkPrivateAddressesAddressOutput) Port added in v3.19.0

The port number.

func (GetShardingNetworkPrivateAddressesAddressOutput) Role added in v3.19.0

The role of the node.

func (GetShardingNetworkPrivateAddressesAddressOutput) ToGetShardingNetworkPrivateAddressesAddressOutput added in v3.19.0

func (o GetShardingNetworkPrivateAddressesAddressOutput) ToGetShardingNetworkPrivateAddressesAddressOutput() GetShardingNetworkPrivateAddressesAddressOutput

func (GetShardingNetworkPrivateAddressesAddressOutput) ToGetShardingNetworkPrivateAddressesAddressOutputWithContext added in v3.19.0

func (o GetShardingNetworkPrivateAddressesAddressOutput) ToGetShardingNetworkPrivateAddressesAddressOutputWithContext(ctx context.Context) GetShardingNetworkPrivateAddressesAddressOutput

func (GetShardingNetworkPrivateAddressesAddressOutput) VpcId added in v3.19.0

The ID of the VPC.

func (GetShardingNetworkPrivateAddressesAddressOutput) VswitchId added in v3.19.0

The vSwitch ID of the VPC.

type GetShardingNetworkPrivateAddressesArgs added in v3.19.0

type GetShardingNetworkPrivateAddressesArgs struct {
	// The db instance id.
	DbInstanceId string `pulumi:"dbInstanceId"`
	// The ID of the `mongos`, `shard`, or `Configserver` node in the sharded cluster instance.
	NodeId *string `pulumi:"nodeId"`
	// File name where to save data source results (after running `pulumi preview`).
	OutputFile *string `pulumi:"outputFile"`
	// The role of the node. Valid values: `Primary` or `Secondary`.
	Role *string `pulumi:"role"`
}

A collection of arguments for invoking getShardingNetworkPrivateAddresses.

type GetShardingNetworkPrivateAddressesOutputArgs added in v3.19.0

type GetShardingNetworkPrivateAddressesOutputArgs struct {
	// The db instance id.
	DbInstanceId pulumi.StringInput `pulumi:"dbInstanceId"`
	// The ID of the `mongos`, `shard`, or `Configserver` node in the sharded cluster instance.
	NodeId pulumi.StringPtrInput `pulumi:"nodeId"`
	// File name where to save data source results (after running `pulumi preview`).
	OutputFile pulumi.StringPtrInput `pulumi:"outputFile"`
	// The role of the node. Valid values: `Primary` or `Secondary`.
	Role pulumi.StringPtrInput `pulumi:"role"`
}

A collection of arguments for invoking getShardingNetworkPrivateAddresses.

func (GetShardingNetworkPrivateAddressesOutputArgs) ElementType added in v3.19.0

type GetShardingNetworkPrivateAddressesResult added in v3.19.0

type GetShardingNetworkPrivateAddressesResult struct {
	Addresses    []GetShardingNetworkPrivateAddressesAddress `pulumi:"addresses"`
	DbInstanceId string                                      `pulumi:"dbInstanceId"`
	// The provider-assigned unique ID for this managed resource.
	Id         string  `pulumi:"id"`
	NodeId     *string `pulumi:"nodeId"`
	OutputFile *string `pulumi:"outputFile"`
	Role       *string `pulumi:"role"`
}

A collection of values returned by getShardingNetworkPrivateAddresses.

func GetShardingNetworkPrivateAddresses added in v3.19.0

This data source provides the Mongodb Sharding Network Private Addresses of the current Alibaba Cloud user.

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

type GetShardingNetworkPrivateAddressesResultOutput added in v3.19.0

type GetShardingNetworkPrivateAddressesResultOutput struct{ *pulumi.OutputState }

A collection of values returned by getShardingNetworkPrivateAddresses.

func (GetShardingNetworkPrivateAddressesResultOutput) Addresses added in v3.19.0

func (GetShardingNetworkPrivateAddressesResultOutput) DbInstanceId added in v3.19.0

func (GetShardingNetworkPrivateAddressesResultOutput) ElementType added in v3.19.0

func (GetShardingNetworkPrivateAddressesResultOutput) Id added in v3.19.0

The provider-assigned unique ID for this managed resource.

func (GetShardingNetworkPrivateAddressesResultOutput) NodeId added in v3.19.0

func (GetShardingNetworkPrivateAddressesResultOutput) OutputFile added in v3.19.0

func (GetShardingNetworkPrivateAddressesResultOutput) Role added in v3.19.0

func (GetShardingNetworkPrivateAddressesResultOutput) ToGetShardingNetworkPrivateAddressesResultOutput added in v3.19.0

func (o GetShardingNetworkPrivateAddressesResultOutput) ToGetShardingNetworkPrivateAddressesResultOutput() GetShardingNetworkPrivateAddressesResultOutput

func (GetShardingNetworkPrivateAddressesResultOutput) ToGetShardingNetworkPrivateAddressesResultOutputWithContext added in v3.19.0

func (o GetShardingNetworkPrivateAddressesResultOutput) ToGetShardingNetworkPrivateAddressesResultOutputWithContext(ctx context.Context) GetShardingNetworkPrivateAddressesResultOutput

type GetShardingNetworkPublicAddressesAddress added in v3.14.0

type GetShardingNetworkPublicAddressesAddress struct {
	// The db instance id.
	DbInstanceId string `pulumi:"dbInstanceId"`
	// The remaining duration of the classic network address. Unit: `seconds`.
	ExpiredTime string `pulumi:"expiredTime"`
	// The IP address of the instance.
	IpAddress string `pulumi:"ipAddress"`
	// The endpoint of the instance.
	NetworkAddress string `pulumi:"networkAddress"`
	// The network type.
	NetworkType string `pulumi:"networkType"`
	// The ID of the `mongos`, `shard`, or `Configserver` node in the sharded cluster instance.
	NodeId string `pulumi:"nodeId"`
	// The type of the node.
	NodeType string `pulumi:"nodeType"`
	// The port number.
	Port string `pulumi:"port"`
	// The role of the node.
	Role string `pulumi:"role"`
	// The ID of the VPC.
	VpcId string `pulumi:"vpcId"`
	// The vSwitch ID of the VPC.
	VswitchId string `pulumi:"vswitchId"`
}

type GetShardingNetworkPublicAddressesAddressArgs added in v3.14.0

type GetShardingNetworkPublicAddressesAddressArgs struct {
	// The db instance id.
	DbInstanceId pulumi.StringInput `pulumi:"dbInstanceId"`
	// The remaining duration of the classic network address. Unit: `seconds`.
	ExpiredTime pulumi.StringInput `pulumi:"expiredTime"`
	// The IP address of the instance.
	IpAddress pulumi.StringInput `pulumi:"ipAddress"`
	// The endpoint of the instance.
	NetworkAddress pulumi.StringInput `pulumi:"networkAddress"`
	// The network type.
	NetworkType pulumi.StringInput `pulumi:"networkType"`
	// The ID of the `mongos`, `shard`, or `Configserver` node in the sharded cluster instance.
	NodeId pulumi.StringInput `pulumi:"nodeId"`
	// The type of the node.
	NodeType pulumi.StringInput `pulumi:"nodeType"`
	// The port number.
	Port pulumi.StringInput `pulumi:"port"`
	// The role of the node.
	Role pulumi.StringInput `pulumi:"role"`
	// The ID of the VPC.
	VpcId pulumi.StringInput `pulumi:"vpcId"`
	// The vSwitch ID of the VPC.
	VswitchId pulumi.StringInput `pulumi:"vswitchId"`
}

func (GetShardingNetworkPublicAddressesAddressArgs) ElementType added in v3.14.0

func (GetShardingNetworkPublicAddressesAddressArgs) ToGetShardingNetworkPublicAddressesAddressOutput added in v3.14.0

func (i GetShardingNetworkPublicAddressesAddressArgs) ToGetShardingNetworkPublicAddressesAddressOutput() GetShardingNetworkPublicAddressesAddressOutput

func (GetShardingNetworkPublicAddressesAddressArgs) ToGetShardingNetworkPublicAddressesAddressOutputWithContext added in v3.14.0

func (i GetShardingNetworkPublicAddressesAddressArgs) ToGetShardingNetworkPublicAddressesAddressOutputWithContext(ctx context.Context) GetShardingNetworkPublicAddressesAddressOutput

type GetShardingNetworkPublicAddressesAddressArray added in v3.14.0

type GetShardingNetworkPublicAddressesAddressArray []GetShardingNetworkPublicAddressesAddressInput

func (GetShardingNetworkPublicAddressesAddressArray) ElementType added in v3.14.0

func (GetShardingNetworkPublicAddressesAddressArray) ToGetShardingNetworkPublicAddressesAddressArrayOutput added in v3.14.0

func (i GetShardingNetworkPublicAddressesAddressArray) ToGetShardingNetworkPublicAddressesAddressArrayOutput() GetShardingNetworkPublicAddressesAddressArrayOutput

func (GetShardingNetworkPublicAddressesAddressArray) ToGetShardingNetworkPublicAddressesAddressArrayOutputWithContext added in v3.14.0

func (i GetShardingNetworkPublicAddressesAddressArray) ToGetShardingNetworkPublicAddressesAddressArrayOutputWithContext(ctx context.Context) GetShardingNetworkPublicAddressesAddressArrayOutput

type GetShardingNetworkPublicAddressesAddressArrayInput added in v3.14.0

type GetShardingNetworkPublicAddressesAddressArrayInput interface {
	pulumi.Input

	ToGetShardingNetworkPublicAddressesAddressArrayOutput() GetShardingNetworkPublicAddressesAddressArrayOutput
	ToGetShardingNetworkPublicAddressesAddressArrayOutputWithContext(context.Context) GetShardingNetworkPublicAddressesAddressArrayOutput
}

GetShardingNetworkPublicAddressesAddressArrayInput is an input type that accepts GetShardingNetworkPublicAddressesAddressArray and GetShardingNetworkPublicAddressesAddressArrayOutput values. You can construct a concrete instance of `GetShardingNetworkPublicAddressesAddressArrayInput` via:

GetShardingNetworkPublicAddressesAddressArray{ GetShardingNetworkPublicAddressesAddressArgs{...} }

type GetShardingNetworkPublicAddressesAddressArrayOutput added in v3.14.0

type GetShardingNetworkPublicAddressesAddressArrayOutput struct{ *pulumi.OutputState }

func (GetShardingNetworkPublicAddressesAddressArrayOutput) ElementType added in v3.14.0

func (GetShardingNetworkPublicAddressesAddressArrayOutput) Index added in v3.14.0

func (GetShardingNetworkPublicAddressesAddressArrayOutput) ToGetShardingNetworkPublicAddressesAddressArrayOutput added in v3.14.0

func (o GetShardingNetworkPublicAddressesAddressArrayOutput) ToGetShardingNetworkPublicAddressesAddressArrayOutput() GetShardingNetworkPublicAddressesAddressArrayOutput

func (GetShardingNetworkPublicAddressesAddressArrayOutput) ToGetShardingNetworkPublicAddressesAddressArrayOutputWithContext added in v3.14.0

func (o GetShardingNetworkPublicAddressesAddressArrayOutput) ToGetShardingNetworkPublicAddressesAddressArrayOutputWithContext(ctx context.Context) GetShardingNetworkPublicAddressesAddressArrayOutput

type GetShardingNetworkPublicAddressesAddressInput added in v3.14.0

type GetShardingNetworkPublicAddressesAddressInput interface {
	pulumi.Input

	ToGetShardingNetworkPublicAddressesAddressOutput() GetShardingNetworkPublicAddressesAddressOutput
	ToGetShardingNetworkPublicAddressesAddressOutputWithContext(context.Context) GetShardingNetworkPublicAddressesAddressOutput
}

GetShardingNetworkPublicAddressesAddressInput is an input type that accepts GetShardingNetworkPublicAddressesAddressArgs and GetShardingNetworkPublicAddressesAddressOutput values. You can construct a concrete instance of `GetShardingNetworkPublicAddressesAddressInput` via:

GetShardingNetworkPublicAddressesAddressArgs{...}

type GetShardingNetworkPublicAddressesAddressOutput added in v3.14.0

type GetShardingNetworkPublicAddressesAddressOutput struct{ *pulumi.OutputState }

func (GetShardingNetworkPublicAddressesAddressOutput) DbInstanceId added in v3.14.0

The db instance id.

func (GetShardingNetworkPublicAddressesAddressOutput) ElementType added in v3.14.0

func (GetShardingNetworkPublicAddressesAddressOutput) ExpiredTime added in v3.14.0

The remaining duration of the classic network address. Unit: `seconds`.

func (GetShardingNetworkPublicAddressesAddressOutput) IpAddress added in v3.14.0

The IP address of the instance.

func (GetShardingNetworkPublicAddressesAddressOutput) NetworkAddress added in v3.14.0

The endpoint of the instance.

func (GetShardingNetworkPublicAddressesAddressOutput) NetworkType added in v3.14.0

The network type.

func (GetShardingNetworkPublicAddressesAddressOutput) NodeId added in v3.14.0

The ID of the `mongos`, `shard`, or `Configserver` node in the sharded cluster instance.

func (GetShardingNetworkPublicAddressesAddressOutput) NodeType added in v3.14.0

The type of the node.

func (GetShardingNetworkPublicAddressesAddressOutput) Port added in v3.14.0

The port number.

func (GetShardingNetworkPublicAddressesAddressOutput) Role added in v3.14.0

The role of the node.

func (GetShardingNetworkPublicAddressesAddressOutput) ToGetShardingNetworkPublicAddressesAddressOutput added in v3.14.0

func (o GetShardingNetworkPublicAddressesAddressOutput) ToGetShardingNetworkPublicAddressesAddressOutput() GetShardingNetworkPublicAddressesAddressOutput

func (GetShardingNetworkPublicAddressesAddressOutput) ToGetShardingNetworkPublicAddressesAddressOutputWithContext added in v3.14.0

func (o GetShardingNetworkPublicAddressesAddressOutput) ToGetShardingNetworkPublicAddressesAddressOutputWithContext(ctx context.Context) GetShardingNetworkPublicAddressesAddressOutput

func (GetShardingNetworkPublicAddressesAddressOutput) VpcId added in v3.14.0

The ID of the VPC.

func (GetShardingNetworkPublicAddressesAddressOutput) VswitchId added in v3.14.0

The vSwitch ID of the VPC.

type GetShardingNetworkPublicAddressesArgs added in v3.14.0

type GetShardingNetworkPublicAddressesArgs struct {
	// The db instance id.
	DbInstanceId string `pulumi:"dbInstanceId"`
	// The ID of the `mongos`, `shard`, or `Configserver` node in the sharded cluster instance.
	NodeId *string `pulumi:"nodeId"`
	// File name where to save data source results (after running `pulumi preview`).
	OutputFile *string `pulumi:"outputFile"`
	// The role of the node. Valid values: `Primary` or `Secondary`.
	Role *string `pulumi:"role"`
}

A collection of arguments for invoking getShardingNetworkPublicAddresses.

type GetShardingNetworkPublicAddressesOutputArgs added in v3.14.0

type GetShardingNetworkPublicAddressesOutputArgs struct {
	// The db instance id.
	DbInstanceId pulumi.StringInput `pulumi:"dbInstanceId"`
	// The ID of the `mongos`, `shard`, or `Configserver` node in the sharded cluster instance.
	NodeId pulumi.StringPtrInput `pulumi:"nodeId"`
	// File name where to save data source results (after running `pulumi preview`).
	OutputFile pulumi.StringPtrInput `pulumi:"outputFile"`
	// The role of the node. Valid values: `Primary` or `Secondary`.
	Role pulumi.StringPtrInput `pulumi:"role"`
}

A collection of arguments for invoking getShardingNetworkPublicAddresses.

func (GetShardingNetworkPublicAddressesOutputArgs) ElementType added in v3.14.0

type GetShardingNetworkPublicAddressesResult added in v3.14.0

type GetShardingNetworkPublicAddressesResult struct {
	Addresses    []GetShardingNetworkPublicAddressesAddress `pulumi:"addresses"`
	DbInstanceId string                                     `pulumi:"dbInstanceId"`
	// The provider-assigned unique ID for this managed resource.
	Id         string  `pulumi:"id"`
	NodeId     *string `pulumi:"nodeId"`
	OutputFile *string `pulumi:"outputFile"`
	Role       *string `pulumi:"role"`
}

A collection of values returned by getShardingNetworkPublicAddresses.

func GetShardingNetworkPublicAddresses added in v3.14.0

This data source provides the Mongodb Sharding Network Public Addresses of the current Alibaba Cloud user.

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

## Example Usage

Basic Usage

```go package main

import (

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

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		example, err := mongodb.GetShardingNetworkPublicAddresses(ctx, &mongodb.GetShardingNetworkPublicAddressesArgs{
			DbInstanceId: "example_value",
			NodeId:       pulumi.StringRef("example_value"),
			Role:         pulumi.StringRef("Primary"),
		}, nil)
		if err != nil {
			return err
		}
		ctx.Export("mongodbShardingNetworkPublicAddressDbInstanceId1", example.Addresses[0].DbInstanceId)
		return nil
	})
}

```

type GetShardingNetworkPublicAddressesResultOutput added in v3.14.0

type GetShardingNetworkPublicAddressesResultOutput struct{ *pulumi.OutputState }

A collection of values returned by getShardingNetworkPublicAddresses.

func (GetShardingNetworkPublicAddressesResultOutput) Addresses added in v3.14.0

func (GetShardingNetworkPublicAddressesResultOutput) DbInstanceId added in v3.14.0

func (GetShardingNetworkPublicAddressesResultOutput) ElementType added in v3.14.0

func (GetShardingNetworkPublicAddressesResultOutput) Id added in v3.14.0

The provider-assigned unique ID for this managed resource.

func (GetShardingNetworkPublicAddressesResultOutput) NodeId added in v3.14.0

func (GetShardingNetworkPublicAddressesResultOutput) OutputFile added in v3.14.0

func (GetShardingNetworkPublicAddressesResultOutput) Role added in v3.14.0

func (GetShardingNetworkPublicAddressesResultOutput) ToGetShardingNetworkPublicAddressesResultOutput added in v3.14.0

func (o GetShardingNetworkPublicAddressesResultOutput) ToGetShardingNetworkPublicAddressesResultOutput() GetShardingNetworkPublicAddressesResultOutput

func (GetShardingNetworkPublicAddressesResultOutput) ToGetShardingNetworkPublicAddressesResultOutputWithContext added in v3.14.0

func (o GetShardingNetworkPublicAddressesResultOutput) ToGetShardingNetworkPublicAddressesResultOutputWithContext(ctx context.Context) GetShardingNetworkPublicAddressesResultOutput

type GetZonesArgs

type GetZonesArgs struct {
	// Indicate whether the zones can be used in a multi AZ configuration. Default to `false`. Multi AZ is usually used to launch MongoDB instances.
	Multi *bool `pulumi:"multi"`
	// File name where to save data source results (after running `pulumi preview`).
	OutputFile *string `pulumi:"outputFile"`
}

A collection of arguments for invoking getZones.

type GetZonesOutputArgs added in v3.9.0

type GetZonesOutputArgs struct {
	// Indicate whether the zones can be used in a multi AZ configuration. Default to `false`. Multi AZ is usually used to launch MongoDB instances.
	Multi pulumi.BoolPtrInput `pulumi:"multi"`
	// File name where to save data source results (after running `pulumi preview`).
	OutputFile pulumi.StringPtrInput `pulumi:"outputFile"`
}

A collection of arguments for invoking getZones.

func (GetZonesOutputArgs) ElementType added in v3.9.0

func (GetZonesOutputArgs) ElementType() reflect.Type

type GetZonesResult

type GetZonesResult struct {
	// The provider-assigned unique ID for this managed resource.
	Id string `pulumi:"id"`
	// A list of zone IDs.
	Ids        []string `pulumi:"ids"`
	Multi      *bool    `pulumi:"multi"`
	OutputFile *string  `pulumi:"outputFile"`
	// A list of availability zones. Each element contains the following attributes:
	Zones []GetZonesZone `pulumi:"zones"`
}

A collection of values returned by getZones.

func GetZones

func GetZones(ctx *pulumi.Context, args *GetZonesArgs, opts ...pulumi.InvokeOption) (*GetZonesResult, error)

This data source provides availability zones for mongoDB that can be accessed by an Alibaba Cloud account within the region configured in the provider.

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

## Example Usage

```go package main

import (

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

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		// Declare the data source
		zonesIds, err := mongodb.GetZones(ctx, nil, nil)
		if err != nil {
			return err
		}
		// Create an mongoDB instance with the first matched zone
		_, err = mongodb.NewInstance(ctx, "mongodb", &mongodb.InstanceArgs{
			ZoneId: pulumi.String(zonesIds.Zones[0].Id),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

type GetZonesResultOutput added in v3.9.0

type GetZonesResultOutput struct{ *pulumi.OutputState }

A collection of values returned by getZones.

func GetZonesOutput added in v3.9.0

func GetZonesOutput(ctx *pulumi.Context, args GetZonesOutputArgs, opts ...pulumi.InvokeOption) GetZonesResultOutput

func (GetZonesResultOutput) ElementType added in v3.9.0

func (GetZonesResultOutput) ElementType() reflect.Type

func (GetZonesResultOutput) Id added in v3.9.0

The provider-assigned unique ID for this managed resource.

func (GetZonesResultOutput) Ids added in v3.9.0

A list of zone IDs.

func (GetZonesResultOutput) Multi added in v3.9.0

func (GetZonesResultOutput) OutputFile added in v3.9.0

func (GetZonesResultOutput) ToGetZonesResultOutput added in v3.9.0

func (o GetZonesResultOutput) ToGetZonesResultOutput() GetZonesResultOutput

func (GetZonesResultOutput) ToGetZonesResultOutputWithContext added in v3.9.0

func (o GetZonesResultOutput) ToGetZonesResultOutputWithContext(ctx context.Context) GetZonesResultOutput

func (GetZonesResultOutput) Zones added in v3.9.0

A list of availability zones. Each element contains the following attributes:

type GetZonesZone

type GetZonesZone struct {
	// ID of the zone.
	Id string `pulumi:"id"`
	// A list of zone ids in which the multi zone.
	MultiZoneIds []string `pulumi:"multiZoneIds"`
}

type GetZonesZoneArgs

type GetZonesZoneArgs struct {
	// ID of the zone.
	Id pulumi.StringInput `pulumi:"id"`
	// A list of zone ids in which the multi zone.
	MultiZoneIds pulumi.StringArrayInput `pulumi:"multiZoneIds"`
}

func (GetZonesZoneArgs) ElementType

func (GetZonesZoneArgs) ElementType() reflect.Type

func (GetZonesZoneArgs) ToGetZonesZoneOutput

func (i GetZonesZoneArgs) ToGetZonesZoneOutput() GetZonesZoneOutput

func (GetZonesZoneArgs) ToGetZonesZoneOutputWithContext

func (i GetZonesZoneArgs) ToGetZonesZoneOutputWithContext(ctx context.Context) GetZonesZoneOutput

type GetZonesZoneArray

type GetZonesZoneArray []GetZonesZoneInput

func (GetZonesZoneArray) ElementType

func (GetZonesZoneArray) ElementType() reflect.Type

func (GetZonesZoneArray) ToGetZonesZoneArrayOutput

func (i GetZonesZoneArray) ToGetZonesZoneArrayOutput() GetZonesZoneArrayOutput

func (GetZonesZoneArray) ToGetZonesZoneArrayOutputWithContext

func (i GetZonesZoneArray) ToGetZonesZoneArrayOutputWithContext(ctx context.Context) GetZonesZoneArrayOutput

type GetZonesZoneArrayInput

type GetZonesZoneArrayInput interface {
	pulumi.Input

	ToGetZonesZoneArrayOutput() GetZonesZoneArrayOutput
	ToGetZonesZoneArrayOutputWithContext(context.Context) GetZonesZoneArrayOutput
}

GetZonesZoneArrayInput is an input type that accepts GetZonesZoneArray and GetZonesZoneArrayOutput values. You can construct a concrete instance of `GetZonesZoneArrayInput` via:

GetZonesZoneArray{ GetZonesZoneArgs{...} }

type GetZonesZoneArrayOutput

type GetZonesZoneArrayOutput struct{ *pulumi.OutputState }

func (GetZonesZoneArrayOutput) ElementType

func (GetZonesZoneArrayOutput) ElementType() reflect.Type

func (GetZonesZoneArrayOutput) Index

func (GetZonesZoneArrayOutput) ToGetZonesZoneArrayOutput

func (o GetZonesZoneArrayOutput) ToGetZonesZoneArrayOutput() GetZonesZoneArrayOutput

func (GetZonesZoneArrayOutput) ToGetZonesZoneArrayOutputWithContext

func (o GetZonesZoneArrayOutput) ToGetZonesZoneArrayOutputWithContext(ctx context.Context) GetZonesZoneArrayOutput

type GetZonesZoneInput

type GetZonesZoneInput interface {
	pulumi.Input

	ToGetZonesZoneOutput() GetZonesZoneOutput
	ToGetZonesZoneOutputWithContext(context.Context) GetZonesZoneOutput
}

GetZonesZoneInput is an input type that accepts GetZonesZoneArgs and GetZonesZoneOutput values. You can construct a concrete instance of `GetZonesZoneInput` via:

GetZonesZoneArgs{...}

type GetZonesZoneOutput

type GetZonesZoneOutput struct{ *pulumi.OutputState }

func (GetZonesZoneOutput) ElementType

func (GetZonesZoneOutput) ElementType() reflect.Type

func (GetZonesZoneOutput) Id

ID of the zone.

func (GetZonesZoneOutput) MultiZoneIds

func (o GetZonesZoneOutput) MultiZoneIds() pulumi.StringArrayOutput

A list of zone ids in which the multi zone.

func (GetZonesZoneOutput) ToGetZonesZoneOutput

func (o GetZonesZoneOutput) ToGetZonesZoneOutput() GetZonesZoneOutput

func (GetZonesZoneOutput) ToGetZonesZoneOutputWithContext

func (o GetZonesZoneOutput) ToGetZonesZoneOutputWithContext(ctx context.Context) GetZonesZoneOutput

type Instance

type Instance struct {
	pulumi.CustomResourceState

	// Password of the root account. It is a string of 6 to 32 characters and is composed of letters, numbers, and underlines.
	AccountPassword pulumi.StringPtrOutput `pulumi:"accountPassword"`
	// Auto renew for prepaid. Default value: `false`. Valid values: `true`, `false`.
	// > **NOTE:** The start time to the end time must be 1 hour. For example, the MaintainStartTime is 01:00Z, then the MaintainEndTime must be 02:00Z.
	AutoRenew pulumi.BoolPtrOutput `pulumi:"autoRenew"`
	// The frequency at which high-frequency backups are created. Valid values: `-1`, `15`, `30`, `60`, `120`, `180`, `240`, `360`, `480`, `720`.
	BackupInterval pulumi.StringOutput `pulumi:"backupInterval"`
	// MongoDB Instance backup period. It is required when `backupTime` was existed. Valid values: [Monday, Tuesday, Wednesday, Thursday, Friday, Saturday, Sunday]. Default to [Monday, Tuesday, Wednesday, Thursday, Friday, Saturday, Sunday].
	BackupPeriods pulumi.StringArrayOutput `pulumi:"backupPeriods"`
	// The retention period of full backups.
	BackupRetentionPeriod pulumi.IntOutput `pulumi:"backupRetentionPeriod"`
	// MongoDB instance backup time. It is required when `backupPeriod` was existed. In the format of HH:mmZ- HH:mmZ. Time setting interval is one hour. If not set, the system will return a default, like "23:00Z-24:00Z".
	BackupTime pulumi.StringOutput `pulumi:"backupTime"`
	// The ID of the encryption key.
	CloudDiskEncryptionKey pulumi.StringPtrOutput `pulumi:"cloudDiskEncryptionKey"`
	// Instance specification. see [Instance specifications](https://www.alibabacloud.com/help/doc-detail/57141.htm).
	DbInstanceClass pulumi.StringOutput `pulumi:"dbInstanceClass"`
	// User-defined DB instance storage space.Unit: GB. Value range:
	// - Custom storage space.
	// - 10-GB increments.
	DbInstanceStorage pulumi.IntOutput `pulumi:"dbInstanceStorage"`
	// The time when the changed configurations take effect. Valid values: `Immediately`, `MaintainTime`.
	EffectiveTime pulumi.StringPtrOutput `pulumi:"effectiveTime"`
	// Whether to enable cloud disk encryption. Default value: `false`. Valid values: `true`, `false`.
	Encrypted pulumi.BoolPtrOutput `pulumi:"encrypted"`
	// The ID of the custom key.
	EncryptionKey pulumi.StringOutput `pulumi:"encryptionKey"`
	// The encryption method. **NOTE:** `encryptorName` is valid only when `tdeStatus` is set to `enabled`.
	EncryptorName pulumi.StringOutput `pulumi:"encryptorName"`
	// Database version. Value options can refer to the latest docs [CreateDBInstance](https://www.alibabacloud.com/help/doc-detail/61763.htm) `EngineVersion`.
	EngineVersion pulumi.StringOutput `pulumi:"engineVersion"`
	// Configure the zone where the hidden node is located to deploy multiple zones. **NOTE:** This parameter value cannot be the same as `zoneId` and `secondaryZoneId` parameter values.
	HiddenZoneId pulumi.StringPtrOutput `pulumi:"hiddenZoneId"`
	// The billing method of the instance. Default value: `PostPaid`. Valid values: `PrePaid`, `PostPaid`. **NOTE:** It can be modified from `PostPaid` to `PrePaid` after version 1.63.0.
	InstanceChargeType pulumi.StringOutput `pulumi:"instanceChargeType"`
	// An KMS encrypts password used to a instance. If the `accountPassword` is filled in, this field will be ignored.
	KmsEncryptedPassword pulumi.StringPtrOutput `pulumi:"kmsEncryptedPassword"`
	// An KMS encryption context used to decrypt `kmsEncryptedPassword` before creating or updating instance with `kmsEncryptedPassword`. See [Encryption Context](https://www.alibabacloud.com/help/doc-detail/42975.htm). It is valid when `kmsEncryptedPassword` is set.
	KmsEncryptionContext pulumi.MapOutput `pulumi:"kmsEncryptionContext"`
	// The end time of the operation and maintenance time period of the instance, in the format of HH:mmZ (UTC time).
	MaintainEndTime pulumi.StringOutput `pulumi:"maintainEndTime"`
	// The start time of the operation and maintenance time period of the instance, in the format of HH:mmZ (UTC time).
	MaintainStartTime pulumi.StringOutput `pulumi:"maintainStartTime"`
	// The name of DB instance. It must be 2 to 256 characters in length.
	Name pulumi.StringOutput `pulumi:"name"`
	// The network type of the instance. Valid values:`Classic`, `VPC`.
	NetworkType pulumi.StringOutput `pulumi:"networkType"`
	// The type of configuration changes performed. Default value: `DOWNGRADE`. Valid values:
	OrderType pulumi.StringPtrOutput `pulumi:"orderType"`
	// Set of parameters needs to be set after mongodb instance was launched. See `parameters` below.
	Parameters InstanceParameterArrayOutput `pulumi:"parameters"`
	// The duration that you will buy DB instance (in month). It is valid when `instanceChargeType` is `PrePaid`. Default value: `1`. Valid values: [1~9], 12, 24, 36.
	Period pulumi.IntOutput `pulumi:"period"`
	// The number of read-only nodes in the replica set instance. Default value: 0. Valid values: 0 to 5.
	ReadonlyReplicas pulumi.IntOutput `pulumi:"readonlyReplicas"`
	// The name of the mongo replica set.
	ReplicaSetName pulumi.StringOutput `pulumi:"replicaSetName"`
	// Replica set instance information.
	ReplicaSets InstanceReplicaSetArrayOutput `pulumi:"replicaSets"`
	// Number of replica set nodes. Valid values: `1`, `3`, `5`, `7`.
	ReplicationFactor pulumi.IntOutput `pulumi:"replicationFactor"`
	// The ID of the Resource Group.
	ResourceGroupId pulumi.StringOutput `pulumi:"resourceGroupId"`
	// Instance data backup retention days. Available since v1.42.0.
	RetentionPeriod pulumi.IntOutput `pulumi:"retentionPeriod"`
	// The Alibaba Cloud Resource Name (ARN) of the specified Resource Access Management (RAM) role.
	RoleArn pulumi.StringOutput `pulumi:"roleArn"`
	// Configure the available area where the slave node (Secondary node) is located to realize multi-available area deployment. **NOTE:** This parameter value cannot be the same as `zoneId` and `hiddenZoneId` parameter values.
	SecondaryZoneId pulumi.StringPtrOutput `pulumi:"secondaryZoneId"`
	// The Security Group ID of ECS.
	SecurityGroupId pulumi.StringPtrOutput `pulumi:"securityGroupId"`
	// List of IP addresses allowed to access all databases of an instance. The list contains up to 1,000 IP addresses, separated by commas. Supported formats include 0.0.0.0/0, 10.23.12.24 (IP), and 10.23.12.24/24 (Classless Inter-Domain Routing (CIDR) mode. /24 represents the length of the prefix in an IP address. The range of the prefix length is [1,32]).
	SecurityIpLists pulumi.StringArrayOutput `pulumi:"securityIpLists"`
	// The snapshot backup type. Default value: `Standard`. Valid values:
	SnapshotBackupType pulumi.StringOutput `pulumi:"snapshotBackupType"`
	// Actions performed on SSL functions. Valid values:
	SslAction pulumi.StringPtrOutput `pulumi:"sslAction"`
	// Status of the SSL feature.
	SslStatus pulumi.StringOutput `pulumi:"sslStatus"`
	// The storage engine of the instance. Default value: `WiredTiger`. Valid values: `WiredTiger`, `RocksDB`.
	StorageEngine pulumi.StringOutput `pulumi:"storageEngine"`
	// The storage type of the instance. Valid values: `cloudEssd1`, `cloudEssd2`, `cloudEssd3`, `localSsd`.
	StorageType pulumi.StringOutput `pulumi:"storageType"`
	// A mapping of tags to assign to the resource.
	Tags pulumi.MapOutput `pulumi:"tags"`
	// The TDE(Transparent Data Encryption) status. Valid values: `enabled`.
	TdeStatus pulumi.StringOutput `pulumi:"tdeStatus"`
	// The ID of the VPC. > **NOTE:** `vpcId` is valid only when `networkType` is set to `VPC`.
	VpcId pulumi.StringOutput `pulumi:"vpcId"`
	// The virtual switch ID to launch DB instances in one VPC.
	VswitchId pulumi.StringOutput `pulumi:"vswitchId"`
	// The Zone to launch the DB instance. it supports multiple zone.
	// If it is a multi-zone and `vswitchId` is specified, the vswitch must in one of them.
	// The multiple zone ID can be retrieved by setting `multi` to "true" in the data source `getZones`.
	ZoneId pulumi.StringOutput `pulumi:"zoneId"`
}

Provides a MongoDB instance resource supports replica set instances only. the MongoDB provides stable, reliable, and automatic scalable database services. It offers a full range of database solutions, such as disaster recovery, backup, recovery, monitoring, and alarms. You can see detail product introduction [here](https://www.alibabacloud.com/help/doc-detail/26558.htm)

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

> **NOTE:** The following regions don't support create Classic network MongoDB instance. [`cn-zhangjiakou`,`cn-huhehaote`,`ap-southeast-3`,`ap-southeast-5`,`me-east-1`,`ap-northeast-1`,`eu-west-1`]

> **NOTE:** Create MongoDB instance or change instance type and storage would cost 5~10 minutes. Please make full preparation

## Example Usage

### Create a Mongodb instance

```go package main

import (

"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/mongodb"
"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/vpc"
"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
		}
		_default, err := mongodb.GetZones(ctx, nil, nil)
		if err != nil {
			return err
		}
		index := len(_default.Zones) - 1
		zoneId := _default.Zones[index].Id
		defaultNetwork, err := vpc.NewNetwork(ctx, "default", &vpc.NetworkArgs{
			VpcName:   pulumi.String(name),
			CidrBlock: pulumi.String("172.17.3.0/24"),
		})
		if err != nil {
			return err
		}
		defaultSwitch, err := vpc.NewSwitch(ctx, "default", &vpc.SwitchArgs{
			VswitchName: pulumi.String(name),
			CidrBlock:   pulumi.String("172.17.3.0/24"),
			VpcId:       defaultNetwork.ID(),
			ZoneId:      pulumi.String(zoneId),
		})
		if err != nil {
			return err
		}
		_, err = mongodb.NewInstance(ctx, "default", &mongodb.InstanceArgs{
			EngineVersion:     pulumi.String("4.2"),
			DbInstanceClass:   pulumi.String("dds.mongo.mid"),
			DbInstanceStorage: pulumi.Int(10),
			VswitchId:         defaultSwitch.ID(),
			SecurityIpLists: pulumi.StringArray{
				pulumi.String("10.168.1.12"),
				pulumi.String("100.69.7.112"),
			},
			Name: pulumi.String(name),
			Tags: pulumi.Map{
				"Created": pulumi.Any("TF"),
				"For":     pulumi.Any("example"),
			},
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Module Support

You can use to the existing mongodb module to create a MongoDB instance resource one-click.

## Import

MongoDB instance can be imported using the id, e.g.

```sh $ pulumi import alicloud:mongodb/instance:Instance example dds-bp1291daeda44194 ```

func GetInstance

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

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

func (*Instance) ElementType() reflect.Type

func (*Instance) ToInstanceOutput

func (i *Instance) ToInstanceOutput() InstanceOutput

func (*Instance) ToInstanceOutputWithContext

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

type InstanceArgs

type InstanceArgs struct {
	// Password of the root account. It is a string of 6 to 32 characters and is composed of letters, numbers, and underlines.
	AccountPassword pulumi.StringPtrInput
	// Auto renew for prepaid. Default value: `false`. Valid values: `true`, `false`.
	// > **NOTE:** The start time to the end time must be 1 hour. For example, the MaintainStartTime is 01:00Z, then the MaintainEndTime must be 02:00Z.
	AutoRenew pulumi.BoolPtrInput
	// The frequency at which high-frequency backups are created. Valid values: `-1`, `15`, `30`, `60`, `120`, `180`, `240`, `360`, `480`, `720`.
	BackupInterval pulumi.StringPtrInput
	// MongoDB Instance backup period. It is required when `backupTime` was existed. Valid values: [Monday, Tuesday, Wednesday, Thursday, Friday, Saturday, Sunday]. Default to [Monday, Tuesday, Wednesday, Thursday, Friday, Saturday, Sunday].
	BackupPeriods pulumi.StringArrayInput
	// The retention period of full backups.
	BackupRetentionPeriod pulumi.IntPtrInput
	// MongoDB instance backup time. It is required when `backupPeriod` was existed. In the format of HH:mmZ- HH:mmZ. Time setting interval is one hour. If not set, the system will return a default, like "23:00Z-24:00Z".
	BackupTime pulumi.StringPtrInput
	// The ID of the encryption key.
	CloudDiskEncryptionKey pulumi.StringPtrInput
	// Instance specification. see [Instance specifications](https://www.alibabacloud.com/help/doc-detail/57141.htm).
	DbInstanceClass pulumi.StringInput
	// User-defined DB instance storage space.Unit: GB. Value range:
	// - Custom storage space.
	// - 10-GB increments.
	DbInstanceStorage pulumi.IntInput
	// The time when the changed configurations take effect. Valid values: `Immediately`, `MaintainTime`.
	EffectiveTime pulumi.StringPtrInput
	// Whether to enable cloud disk encryption. Default value: `false`. Valid values: `true`, `false`.
	Encrypted pulumi.BoolPtrInput
	// The ID of the custom key.
	EncryptionKey pulumi.StringPtrInput
	// The encryption method. **NOTE:** `encryptorName` is valid only when `tdeStatus` is set to `enabled`.
	EncryptorName pulumi.StringPtrInput
	// Database version. Value options can refer to the latest docs [CreateDBInstance](https://www.alibabacloud.com/help/doc-detail/61763.htm) `EngineVersion`.
	EngineVersion pulumi.StringInput
	// Configure the zone where the hidden node is located to deploy multiple zones. **NOTE:** This parameter value cannot be the same as `zoneId` and `secondaryZoneId` parameter values.
	HiddenZoneId pulumi.StringPtrInput
	// The billing method of the instance. Default value: `PostPaid`. Valid values: `PrePaid`, `PostPaid`. **NOTE:** It can be modified from `PostPaid` to `PrePaid` after version 1.63.0.
	InstanceChargeType pulumi.StringPtrInput
	// An KMS encrypts password used to a instance. If the `accountPassword` is filled in, this field will be ignored.
	KmsEncryptedPassword pulumi.StringPtrInput
	// An KMS encryption context used to decrypt `kmsEncryptedPassword` before creating or updating instance with `kmsEncryptedPassword`. See [Encryption Context](https://www.alibabacloud.com/help/doc-detail/42975.htm). It is valid when `kmsEncryptedPassword` is set.
	KmsEncryptionContext pulumi.MapInput
	// The end time of the operation and maintenance time period of the instance, in the format of HH:mmZ (UTC time).
	MaintainEndTime pulumi.StringPtrInput
	// The start time of the operation and maintenance time period of the instance, in the format of HH:mmZ (UTC time).
	MaintainStartTime pulumi.StringPtrInput
	// The name of DB instance. It must be 2 to 256 characters in length.
	Name pulumi.StringPtrInput
	// The network type of the instance. Valid values:`Classic`, `VPC`.
	NetworkType pulumi.StringPtrInput
	// The type of configuration changes performed. Default value: `DOWNGRADE`. Valid values:
	OrderType pulumi.StringPtrInput
	// Set of parameters needs to be set after mongodb instance was launched. See `parameters` below.
	Parameters InstanceParameterArrayInput
	// The duration that you will buy DB instance (in month). It is valid when `instanceChargeType` is `PrePaid`. Default value: `1`. Valid values: [1~9], 12, 24, 36.
	Period pulumi.IntPtrInput
	// The number of read-only nodes in the replica set instance. Default value: 0. Valid values: 0 to 5.
	ReadonlyReplicas pulumi.IntPtrInput
	// Number of replica set nodes. Valid values: `1`, `3`, `5`, `7`.
	ReplicationFactor pulumi.IntPtrInput
	// The ID of the Resource Group.
	ResourceGroupId pulumi.StringPtrInput
	// The Alibaba Cloud Resource Name (ARN) of the specified Resource Access Management (RAM) role.
	RoleArn pulumi.StringPtrInput
	// Configure the available area where the slave node (Secondary node) is located to realize multi-available area deployment. **NOTE:** This parameter value cannot be the same as `zoneId` and `hiddenZoneId` parameter values.
	SecondaryZoneId pulumi.StringPtrInput
	// The Security Group ID of ECS.
	SecurityGroupId pulumi.StringPtrInput
	// List of IP addresses allowed to access all databases of an instance. The list contains up to 1,000 IP addresses, separated by commas. Supported formats include 0.0.0.0/0, 10.23.12.24 (IP), and 10.23.12.24/24 (Classless Inter-Domain Routing (CIDR) mode. /24 represents the length of the prefix in an IP address. The range of the prefix length is [1,32]).
	SecurityIpLists pulumi.StringArrayInput
	// The snapshot backup type. Default value: `Standard`. Valid values:
	SnapshotBackupType pulumi.StringPtrInput
	// Actions performed on SSL functions. Valid values:
	SslAction pulumi.StringPtrInput
	// The storage engine of the instance. Default value: `WiredTiger`. Valid values: `WiredTiger`, `RocksDB`.
	StorageEngine pulumi.StringPtrInput
	// The storage type of the instance. Valid values: `cloudEssd1`, `cloudEssd2`, `cloudEssd3`, `localSsd`.
	StorageType pulumi.StringPtrInput
	// A mapping of tags to assign to the resource.
	Tags pulumi.MapInput
	// The TDE(Transparent Data Encryption) status. Valid values: `enabled`.
	TdeStatus pulumi.StringPtrInput
	// The ID of the VPC. > **NOTE:** `vpcId` is valid only when `networkType` is set to `VPC`.
	VpcId pulumi.StringPtrInput
	// The virtual switch ID to launch DB instances in one VPC.
	VswitchId pulumi.StringPtrInput
	// The Zone to launch the DB instance. it supports multiple zone.
	// If it is a multi-zone and `vswitchId` is specified, the vswitch must in one of them.
	// The multiple zone ID can be retrieved by setting `multi` to "true" in the data source `getZones`.
	ZoneId pulumi.StringPtrInput
}

The set of arguments for constructing a Instance resource.

func (InstanceArgs) ElementType

func (InstanceArgs) ElementType() reflect.Type

type InstanceArray

type InstanceArray []InstanceInput

func (InstanceArray) ElementType

func (InstanceArray) ElementType() reflect.Type

func (InstanceArray) ToInstanceArrayOutput

func (i InstanceArray) ToInstanceArrayOutput() InstanceArrayOutput

func (InstanceArray) ToInstanceArrayOutputWithContext

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

type InstanceArrayInput

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

type InstanceArrayOutput struct{ *pulumi.OutputState }

func (InstanceArrayOutput) ElementType

func (InstanceArrayOutput) ElementType() reflect.Type

func (InstanceArrayOutput) Index

func (InstanceArrayOutput) ToInstanceArrayOutput

func (o InstanceArrayOutput) ToInstanceArrayOutput() InstanceArrayOutput

func (InstanceArrayOutput) ToInstanceArrayOutputWithContext

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

type InstanceInput

type InstanceInput interface {
	pulumi.Input

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

type InstanceMap

type InstanceMap map[string]InstanceInput

func (InstanceMap) ElementType

func (InstanceMap) ElementType() reflect.Type

func (InstanceMap) ToInstanceMapOutput

func (i InstanceMap) ToInstanceMapOutput() InstanceMapOutput

func (InstanceMap) ToInstanceMapOutputWithContext

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

type InstanceMapInput

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

type InstanceMapOutput struct{ *pulumi.OutputState }

func (InstanceMapOutput) ElementType

func (InstanceMapOutput) ElementType() reflect.Type

func (InstanceMapOutput) MapIndex

func (InstanceMapOutput) ToInstanceMapOutput

func (o InstanceMapOutput) ToInstanceMapOutput() InstanceMapOutput

func (InstanceMapOutput) ToInstanceMapOutputWithContext

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

type InstanceOutput

type InstanceOutput struct{ *pulumi.OutputState }

func (InstanceOutput) AccountPassword added in v3.27.0

func (o InstanceOutput) AccountPassword() pulumi.StringPtrOutput

Password of the root account. It is a string of 6 to 32 characters and is composed of letters, numbers, and underlines.

func (InstanceOutput) AutoRenew added in v3.27.0

func (o InstanceOutput) AutoRenew() pulumi.BoolPtrOutput

Auto renew for prepaid. Default value: `false`. Valid values: `true`, `false`. > **NOTE:** The start time to the end time must be 1 hour. For example, the MaintainStartTime is 01:00Z, then the MaintainEndTime must be 02:00Z.

func (InstanceOutput) BackupInterval added in v3.45.0

func (o InstanceOutput) BackupInterval() pulumi.StringOutput

The frequency at which high-frequency backups are created. Valid values: `-1`, `15`, `30`, `60`, `120`, `180`, `240`, `360`, `480`, `720`.

func (InstanceOutput) BackupPeriods added in v3.27.0

func (o InstanceOutput) BackupPeriods() pulumi.StringArrayOutput

MongoDB Instance backup period. It is required when `backupTime` was existed. Valid values: [Monday, Tuesday, Wednesday, Thursday, Friday, Saturday, Sunday]. Default to [Monday, Tuesday, Wednesday, Thursday, Friday, Saturday, Sunday].

func (InstanceOutput) BackupRetentionPeriod added in v3.45.1

func (o InstanceOutput) BackupRetentionPeriod() pulumi.IntOutput

The retention period of full backups.

func (InstanceOutput) BackupTime added in v3.27.0

func (o InstanceOutput) BackupTime() pulumi.StringOutput

MongoDB instance backup time. It is required when `backupPeriod` was existed. In the format of HH:mmZ- HH:mmZ. Time setting interval is one hour. If not set, the system will return a default, like "23:00Z-24:00Z".

func (InstanceOutput) CloudDiskEncryptionKey added in v3.45.0

func (o InstanceOutput) CloudDiskEncryptionKey() pulumi.StringPtrOutput

The ID of the encryption key.

func (InstanceOutput) DbInstanceClass added in v3.27.0

func (o InstanceOutput) DbInstanceClass() pulumi.StringOutput

Instance specification. see [Instance specifications](https://www.alibabacloud.com/help/doc-detail/57141.htm).

func (InstanceOutput) DbInstanceStorage added in v3.27.0

func (o InstanceOutput) DbInstanceStorage() pulumi.IntOutput

User-defined DB instance storage space.Unit: GB. Value range: - Custom storage space. - 10-GB increments.

func (InstanceOutput) EffectiveTime added in v3.47.0

func (o InstanceOutput) EffectiveTime() pulumi.StringPtrOutput

The time when the changed configurations take effect. Valid values: `Immediately`, `MaintainTime`.

func (InstanceOutput) ElementType

func (InstanceOutput) ElementType() reflect.Type

func (InstanceOutput) Encrypted added in v3.45.0

func (o InstanceOutput) Encrypted() pulumi.BoolPtrOutput

Whether to enable cloud disk encryption. Default value: `false`. Valid values: `true`, `false`.

func (InstanceOutput) EncryptionKey added in v3.45.0

func (o InstanceOutput) EncryptionKey() pulumi.StringOutput

The ID of the custom key.

func (InstanceOutput) EncryptorName added in v3.45.0

func (o InstanceOutput) EncryptorName() pulumi.StringOutput

The encryption method. **NOTE:** `encryptorName` is valid only when `tdeStatus` is set to `enabled`.

func (InstanceOutput) EngineVersion added in v3.27.0

func (o InstanceOutput) EngineVersion() pulumi.StringOutput

Database version. Value options can refer to the latest docs [CreateDBInstance](https://www.alibabacloud.com/help/doc-detail/61763.htm) `EngineVersion`.

func (InstanceOutput) HiddenZoneId added in v3.33.0

func (o InstanceOutput) HiddenZoneId() pulumi.StringPtrOutput

Configure the zone where the hidden node is located to deploy multiple zones. **NOTE:** This parameter value cannot be the same as `zoneId` and `secondaryZoneId` parameter values.

func (InstanceOutput) InstanceChargeType added in v3.27.0

func (o InstanceOutput) InstanceChargeType() pulumi.StringOutput

The billing method of the instance. Default value: `PostPaid`. Valid values: `PrePaid`, `PostPaid`. **NOTE:** It can be modified from `PostPaid` to `PrePaid` after version 1.63.0.

func (InstanceOutput) KmsEncryptedPassword added in v3.27.0

func (o InstanceOutput) KmsEncryptedPassword() pulumi.StringPtrOutput

An KMS encrypts password used to a instance. If the `accountPassword` is filled in, this field will be ignored.

func (InstanceOutput) KmsEncryptionContext added in v3.27.0

func (o InstanceOutput) KmsEncryptionContext() pulumi.MapOutput

An KMS encryption context used to decrypt `kmsEncryptedPassword` before creating or updating instance with `kmsEncryptedPassword`. See [Encryption Context](https://www.alibabacloud.com/help/doc-detail/42975.htm). It is valid when `kmsEncryptedPassword` is set.

func (InstanceOutput) MaintainEndTime added in v3.27.0

func (o InstanceOutput) MaintainEndTime() pulumi.StringOutput

The end time of the operation and maintenance time period of the instance, in the format of HH:mmZ (UTC time).

func (InstanceOutput) MaintainStartTime added in v3.27.0

func (o InstanceOutput) MaintainStartTime() pulumi.StringOutput

The start time of the operation and maintenance time period of the instance, in the format of HH:mmZ (UTC time).

func (InstanceOutput) Name added in v3.27.0

The name of DB instance. It must be 2 to 256 characters in length.

func (InstanceOutput) NetworkType added in v3.27.0

func (o InstanceOutput) NetworkType() pulumi.StringOutput

The network type of the instance. Valid values:`Classic`, `VPC`.

func (InstanceOutput) OrderType added in v3.27.0

func (o InstanceOutput) OrderType() pulumi.StringPtrOutput

The type of configuration changes performed. Default value: `DOWNGRADE`. Valid values:

func (InstanceOutput) Parameters added in v3.36.0

Set of parameters needs to be set after mongodb instance was launched. See `parameters` below.

func (InstanceOutput) Period added in v3.27.0

func (o InstanceOutput) Period() pulumi.IntOutput

The duration that you will buy DB instance (in month). It is valid when `instanceChargeType` is `PrePaid`. Default value: `1`. Valid values: [1~9], 12, 24, 36.

func (InstanceOutput) ReadonlyReplicas added in v3.33.0

func (o InstanceOutput) ReadonlyReplicas() pulumi.IntOutput

The number of read-only nodes in the replica set instance. Default value: 0. Valid values: 0 to 5.

func (InstanceOutput) ReplicaSetName added in v3.27.0

func (o InstanceOutput) ReplicaSetName() pulumi.StringOutput

The name of the mongo replica set.

func (InstanceOutput) ReplicaSets added in v3.27.0

Replica set instance information.

func (InstanceOutput) ReplicationFactor added in v3.27.0

func (o InstanceOutput) ReplicationFactor() pulumi.IntOutput

Number of replica set nodes. Valid values: `1`, `3`, `5`, `7`.

func (InstanceOutput) ResourceGroupId added in v3.27.0

func (o InstanceOutput) ResourceGroupId() pulumi.StringOutput

The ID of the Resource Group.

func (InstanceOutput) RetentionPeriod added in v3.27.0

func (o InstanceOutput) RetentionPeriod() pulumi.IntOutput

Instance data backup retention days. Available since v1.42.0.

func (InstanceOutput) RoleArn added in v3.45.0

func (o InstanceOutput) RoleArn() pulumi.StringOutput

The Alibaba Cloud Resource Name (ARN) of the specified Resource Access Management (RAM) role.

func (InstanceOutput) SecondaryZoneId added in v3.33.0

func (o InstanceOutput) SecondaryZoneId() pulumi.StringPtrOutput

Configure the available area where the slave node (Secondary node) is located to realize multi-available area deployment. **NOTE:** This parameter value cannot be the same as `zoneId` and `hiddenZoneId` parameter values.

func (InstanceOutput) SecurityGroupId added in v3.27.0

func (o InstanceOutput) SecurityGroupId() pulumi.StringPtrOutput

The Security Group ID of ECS.

func (InstanceOutput) SecurityIpLists added in v3.27.0

func (o InstanceOutput) SecurityIpLists() pulumi.StringArrayOutput

List of IP addresses allowed to access all databases of an instance. The list contains up to 1,000 IP addresses, separated by commas. Supported formats include 0.0.0.0/0, 10.23.12.24 (IP), and 10.23.12.24/24 (Classless Inter-Domain Routing (CIDR) mode. /24 represents the length of the prefix in an IP address. The range of the prefix length is [1,32]).

func (InstanceOutput) SnapshotBackupType added in v3.45.0

func (o InstanceOutput) SnapshotBackupType() pulumi.StringOutput

The snapshot backup type. Default value: `Standard`. Valid values:

func (InstanceOutput) SslAction added in v3.27.0

func (o InstanceOutput) SslAction() pulumi.StringPtrOutput

Actions performed on SSL functions. Valid values:

func (InstanceOutput) SslStatus added in v3.27.0

func (o InstanceOutput) SslStatus() pulumi.StringOutput

Status of the SSL feature.

func (InstanceOutput) StorageEngine added in v3.27.0

func (o InstanceOutput) StorageEngine() pulumi.StringOutput

The storage engine of the instance. Default value: `WiredTiger`. Valid values: `WiredTiger`, `RocksDB`.

func (InstanceOutput) StorageType added in v3.33.0

func (o InstanceOutput) StorageType() pulumi.StringOutput

The storage type of the instance. Valid values: `cloudEssd1`, `cloudEssd2`, `cloudEssd3`, `localSsd`.

func (InstanceOutput) Tags added in v3.27.0

func (o InstanceOutput) Tags() pulumi.MapOutput

A mapping of tags to assign to the resource.

func (InstanceOutput) TdeStatus added in v3.27.0

func (o InstanceOutput) TdeStatus() pulumi.StringOutput

The TDE(Transparent Data Encryption) status. Valid values: `enabled`.

func (InstanceOutput) ToInstanceOutput

func (o InstanceOutput) ToInstanceOutput() InstanceOutput

func (InstanceOutput) ToInstanceOutputWithContext

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

func (InstanceOutput) VpcId added in v3.27.0

The ID of the VPC. > **NOTE:** `vpcId` is valid only when `networkType` is set to `VPC`.

func (InstanceOutput) VswitchId added in v3.27.0

func (o InstanceOutput) VswitchId() pulumi.StringOutput

The virtual switch ID to launch DB instances in one VPC.

func (InstanceOutput) ZoneId added in v3.27.0

func (o InstanceOutput) ZoneId() pulumi.StringOutput

The Zone to launch the DB instance. it supports multiple zone. If it is a multi-zone and `vswitchId` is specified, the vswitch must in one of them. The multiple zone ID can be retrieved by setting `multi` to "true" in the data source `getZones`.

type InstanceParameter added in v3.36.0

type InstanceParameter struct {
	// The name of the parameter.
	Name string `pulumi:"name"`
	// The value of the parameter.
	Value string `pulumi:"value"`
}

type InstanceParameterArgs added in v3.36.0

type InstanceParameterArgs struct {
	// The name of the parameter.
	Name pulumi.StringInput `pulumi:"name"`
	// The value of the parameter.
	Value pulumi.StringInput `pulumi:"value"`
}

func (InstanceParameterArgs) ElementType added in v3.36.0

func (InstanceParameterArgs) ElementType() reflect.Type

func (InstanceParameterArgs) ToInstanceParameterOutput added in v3.36.0

func (i InstanceParameterArgs) ToInstanceParameterOutput() InstanceParameterOutput

func (InstanceParameterArgs) ToInstanceParameterOutputWithContext added in v3.36.0

func (i InstanceParameterArgs) ToInstanceParameterOutputWithContext(ctx context.Context) InstanceParameterOutput

type InstanceParameterArray added in v3.36.0

type InstanceParameterArray []InstanceParameterInput

func (InstanceParameterArray) ElementType added in v3.36.0

func (InstanceParameterArray) ElementType() reflect.Type

func (InstanceParameterArray) ToInstanceParameterArrayOutput added in v3.36.0

func (i InstanceParameterArray) ToInstanceParameterArrayOutput() InstanceParameterArrayOutput

func (InstanceParameterArray) ToInstanceParameterArrayOutputWithContext added in v3.36.0

func (i InstanceParameterArray) ToInstanceParameterArrayOutputWithContext(ctx context.Context) InstanceParameterArrayOutput

type InstanceParameterArrayInput added in v3.36.0

type InstanceParameterArrayInput interface {
	pulumi.Input

	ToInstanceParameterArrayOutput() InstanceParameterArrayOutput
	ToInstanceParameterArrayOutputWithContext(context.Context) InstanceParameterArrayOutput
}

InstanceParameterArrayInput is an input type that accepts InstanceParameterArray and InstanceParameterArrayOutput values. You can construct a concrete instance of `InstanceParameterArrayInput` via:

InstanceParameterArray{ InstanceParameterArgs{...} }

type InstanceParameterArrayOutput added in v3.36.0

type InstanceParameterArrayOutput struct{ *pulumi.OutputState }

func (InstanceParameterArrayOutput) ElementType added in v3.36.0

func (InstanceParameterArrayOutput) Index added in v3.36.0

func (InstanceParameterArrayOutput) ToInstanceParameterArrayOutput added in v3.36.0

func (o InstanceParameterArrayOutput) ToInstanceParameterArrayOutput() InstanceParameterArrayOutput

func (InstanceParameterArrayOutput) ToInstanceParameterArrayOutputWithContext added in v3.36.0

func (o InstanceParameterArrayOutput) ToInstanceParameterArrayOutputWithContext(ctx context.Context) InstanceParameterArrayOutput

type InstanceParameterInput added in v3.36.0

type InstanceParameterInput interface {
	pulumi.Input

	ToInstanceParameterOutput() InstanceParameterOutput
	ToInstanceParameterOutputWithContext(context.Context) InstanceParameterOutput
}

InstanceParameterInput is an input type that accepts InstanceParameterArgs and InstanceParameterOutput values. You can construct a concrete instance of `InstanceParameterInput` via:

InstanceParameterArgs{...}

type InstanceParameterOutput added in v3.36.0

type InstanceParameterOutput struct{ *pulumi.OutputState }

func (InstanceParameterOutput) ElementType added in v3.36.0

func (InstanceParameterOutput) ElementType() reflect.Type

func (InstanceParameterOutput) Name added in v3.36.0

The name of the parameter.

func (InstanceParameterOutput) ToInstanceParameterOutput added in v3.36.0

func (o InstanceParameterOutput) ToInstanceParameterOutput() InstanceParameterOutput

func (InstanceParameterOutput) ToInstanceParameterOutputWithContext added in v3.36.0

func (o InstanceParameterOutput) ToInstanceParameterOutputWithContext(ctx context.Context) InstanceParameterOutput

func (InstanceParameterOutput) Value added in v3.36.0

The value of the parameter.

type InstanceReplicaSet added in v3.9.0

type InstanceReplicaSet struct {
	// The connection address of the node.
	ConnectionDomain *string `pulumi:"connectionDomain"`
	// The connection port of the node.
	ConnectionPort *string `pulumi:"connectionPort"`
	// The network type of the instance. Valid values:`Classic`, `VPC`.
	NetworkType *string `pulumi:"networkType"`
	// The role of the node.
	ReplicaSetRole *string `pulumi:"replicaSetRole"`
	// VPC instance ID.
	VpcCloudInstanceId *string `pulumi:"vpcCloudInstanceId"`
	// The ID of the VPC. > **NOTE:** `vpcId` is valid only when `networkType` is set to `VPC`.
	VpcId *string `pulumi:"vpcId"`
	// The virtual switch ID to launch DB instances in one VPC.
	VswitchId *string `pulumi:"vswitchId"`
}

type InstanceReplicaSetArgs added in v3.9.0

type InstanceReplicaSetArgs struct {
	// The connection address of the node.
	ConnectionDomain pulumi.StringPtrInput `pulumi:"connectionDomain"`
	// The connection port of the node.
	ConnectionPort pulumi.StringPtrInput `pulumi:"connectionPort"`
	// The network type of the instance. Valid values:`Classic`, `VPC`.
	NetworkType pulumi.StringPtrInput `pulumi:"networkType"`
	// The role of the node.
	ReplicaSetRole pulumi.StringPtrInput `pulumi:"replicaSetRole"`
	// VPC instance ID.
	VpcCloudInstanceId pulumi.StringPtrInput `pulumi:"vpcCloudInstanceId"`
	// The ID of the VPC. > **NOTE:** `vpcId` is valid only when `networkType` is set to `VPC`.
	VpcId pulumi.StringPtrInput `pulumi:"vpcId"`
	// The virtual switch ID to launch DB instances in one VPC.
	VswitchId pulumi.StringPtrInput `pulumi:"vswitchId"`
}

func (InstanceReplicaSetArgs) ElementType added in v3.9.0

func (InstanceReplicaSetArgs) ElementType() reflect.Type

func (InstanceReplicaSetArgs) ToInstanceReplicaSetOutput added in v3.9.0

func (i InstanceReplicaSetArgs) ToInstanceReplicaSetOutput() InstanceReplicaSetOutput

func (InstanceReplicaSetArgs) ToInstanceReplicaSetOutputWithContext added in v3.9.0

func (i InstanceReplicaSetArgs) ToInstanceReplicaSetOutputWithContext(ctx context.Context) InstanceReplicaSetOutput

type InstanceReplicaSetArray added in v3.9.0

type InstanceReplicaSetArray []InstanceReplicaSetInput

func (InstanceReplicaSetArray) ElementType added in v3.9.0

func (InstanceReplicaSetArray) ElementType() reflect.Type

func (InstanceReplicaSetArray) ToInstanceReplicaSetArrayOutput added in v3.9.0

func (i InstanceReplicaSetArray) ToInstanceReplicaSetArrayOutput() InstanceReplicaSetArrayOutput

func (InstanceReplicaSetArray) ToInstanceReplicaSetArrayOutputWithContext added in v3.9.0

func (i InstanceReplicaSetArray) ToInstanceReplicaSetArrayOutputWithContext(ctx context.Context) InstanceReplicaSetArrayOutput

type InstanceReplicaSetArrayInput added in v3.9.0

type InstanceReplicaSetArrayInput interface {
	pulumi.Input

	ToInstanceReplicaSetArrayOutput() InstanceReplicaSetArrayOutput
	ToInstanceReplicaSetArrayOutputWithContext(context.Context) InstanceReplicaSetArrayOutput
}

InstanceReplicaSetArrayInput is an input type that accepts InstanceReplicaSetArray and InstanceReplicaSetArrayOutput values. You can construct a concrete instance of `InstanceReplicaSetArrayInput` via:

InstanceReplicaSetArray{ InstanceReplicaSetArgs{...} }

type InstanceReplicaSetArrayOutput added in v3.9.0

type InstanceReplicaSetArrayOutput struct{ *pulumi.OutputState }

func (InstanceReplicaSetArrayOutput) ElementType added in v3.9.0

func (InstanceReplicaSetArrayOutput) Index added in v3.9.0

func (InstanceReplicaSetArrayOutput) ToInstanceReplicaSetArrayOutput added in v3.9.0

func (o InstanceReplicaSetArrayOutput) ToInstanceReplicaSetArrayOutput() InstanceReplicaSetArrayOutput

func (InstanceReplicaSetArrayOutput) ToInstanceReplicaSetArrayOutputWithContext added in v3.9.0

func (o InstanceReplicaSetArrayOutput) ToInstanceReplicaSetArrayOutputWithContext(ctx context.Context) InstanceReplicaSetArrayOutput

type InstanceReplicaSetInput added in v3.9.0

type InstanceReplicaSetInput interface {
	pulumi.Input

	ToInstanceReplicaSetOutput() InstanceReplicaSetOutput
	ToInstanceReplicaSetOutputWithContext(context.Context) InstanceReplicaSetOutput
}

InstanceReplicaSetInput is an input type that accepts InstanceReplicaSetArgs and InstanceReplicaSetOutput values. You can construct a concrete instance of `InstanceReplicaSetInput` via:

InstanceReplicaSetArgs{...}

type InstanceReplicaSetOutput added in v3.9.0

type InstanceReplicaSetOutput struct{ *pulumi.OutputState }

func (InstanceReplicaSetOutput) ConnectionDomain added in v3.9.0

func (o InstanceReplicaSetOutput) ConnectionDomain() pulumi.StringPtrOutput

The connection address of the node.

func (InstanceReplicaSetOutput) ConnectionPort added in v3.9.0

func (o InstanceReplicaSetOutput) ConnectionPort() pulumi.StringPtrOutput

The connection port of the node.

func (InstanceReplicaSetOutput) ElementType added in v3.9.0

func (InstanceReplicaSetOutput) ElementType() reflect.Type

func (InstanceReplicaSetOutput) NetworkType added in v3.9.0

The network type of the instance. Valid values:`Classic`, `VPC`.

func (InstanceReplicaSetOutput) ReplicaSetRole added in v3.9.0

func (o InstanceReplicaSetOutput) ReplicaSetRole() pulumi.StringPtrOutput

The role of the node.

func (InstanceReplicaSetOutput) ToInstanceReplicaSetOutput added in v3.9.0

func (o InstanceReplicaSetOutput) ToInstanceReplicaSetOutput() InstanceReplicaSetOutput

func (InstanceReplicaSetOutput) ToInstanceReplicaSetOutputWithContext added in v3.9.0

func (o InstanceReplicaSetOutput) ToInstanceReplicaSetOutputWithContext(ctx context.Context) InstanceReplicaSetOutput

func (InstanceReplicaSetOutput) VpcCloudInstanceId added in v3.9.0

func (o InstanceReplicaSetOutput) VpcCloudInstanceId() pulumi.StringPtrOutput

VPC instance ID.

func (InstanceReplicaSetOutput) VpcId added in v3.9.0

The ID of the VPC. > **NOTE:** `vpcId` is valid only when `networkType` is set to `VPC`.

func (InstanceReplicaSetOutput) VswitchId added in v3.9.0

The virtual switch ID to launch DB instances in one VPC.

type InstanceState

type InstanceState struct {
	// Password of the root account. It is a string of 6 to 32 characters and is composed of letters, numbers, and underlines.
	AccountPassword pulumi.StringPtrInput
	// Auto renew for prepaid. Default value: `false`. Valid values: `true`, `false`.
	// > **NOTE:** The start time to the end time must be 1 hour. For example, the MaintainStartTime is 01:00Z, then the MaintainEndTime must be 02:00Z.
	AutoRenew pulumi.BoolPtrInput
	// The frequency at which high-frequency backups are created. Valid values: `-1`, `15`, `30`, `60`, `120`, `180`, `240`, `360`, `480`, `720`.
	BackupInterval pulumi.StringPtrInput
	// MongoDB Instance backup period. It is required when `backupTime` was existed. Valid values: [Monday, Tuesday, Wednesday, Thursday, Friday, Saturday, Sunday]. Default to [Monday, Tuesday, Wednesday, Thursday, Friday, Saturday, Sunday].
	BackupPeriods pulumi.StringArrayInput
	// The retention period of full backups.
	BackupRetentionPeriod pulumi.IntPtrInput
	// MongoDB instance backup time. It is required when `backupPeriod` was existed. In the format of HH:mmZ- HH:mmZ. Time setting interval is one hour. If not set, the system will return a default, like "23:00Z-24:00Z".
	BackupTime pulumi.StringPtrInput
	// The ID of the encryption key.
	CloudDiskEncryptionKey pulumi.StringPtrInput
	// Instance specification. see [Instance specifications](https://www.alibabacloud.com/help/doc-detail/57141.htm).
	DbInstanceClass pulumi.StringPtrInput
	// User-defined DB instance storage space.Unit: GB. Value range:
	// - Custom storage space.
	// - 10-GB increments.
	DbInstanceStorage pulumi.IntPtrInput
	// The time when the changed configurations take effect. Valid values: `Immediately`, `MaintainTime`.
	EffectiveTime pulumi.StringPtrInput
	// Whether to enable cloud disk encryption. Default value: `false`. Valid values: `true`, `false`.
	Encrypted pulumi.BoolPtrInput
	// The ID of the custom key.
	EncryptionKey pulumi.StringPtrInput
	// The encryption method. **NOTE:** `encryptorName` is valid only when `tdeStatus` is set to `enabled`.
	EncryptorName pulumi.StringPtrInput
	// Database version. Value options can refer to the latest docs [CreateDBInstance](https://www.alibabacloud.com/help/doc-detail/61763.htm) `EngineVersion`.
	EngineVersion pulumi.StringPtrInput
	// Configure the zone where the hidden node is located to deploy multiple zones. **NOTE:** This parameter value cannot be the same as `zoneId` and `secondaryZoneId` parameter values.
	HiddenZoneId pulumi.StringPtrInput
	// The billing method of the instance. Default value: `PostPaid`. Valid values: `PrePaid`, `PostPaid`. **NOTE:** It can be modified from `PostPaid` to `PrePaid` after version 1.63.0.
	InstanceChargeType pulumi.StringPtrInput
	// An KMS encrypts password used to a instance. If the `accountPassword` is filled in, this field will be ignored.
	KmsEncryptedPassword pulumi.StringPtrInput
	// An KMS encryption context used to decrypt `kmsEncryptedPassword` before creating or updating instance with `kmsEncryptedPassword`. See [Encryption Context](https://www.alibabacloud.com/help/doc-detail/42975.htm). It is valid when `kmsEncryptedPassword` is set.
	KmsEncryptionContext pulumi.MapInput
	// The end time of the operation and maintenance time period of the instance, in the format of HH:mmZ (UTC time).
	MaintainEndTime pulumi.StringPtrInput
	// The start time of the operation and maintenance time period of the instance, in the format of HH:mmZ (UTC time).
	MaintainStartTime pulumi.StringPtrInput
	// The name of DB instance. It must be 2 to 256 characters in length.
	Name pulumi.StringPtrInput
	// The network type of the instance. Valid values:`Classic`, `VPC`.
	NetworkType pulumi.StringPtrInput
	// The type of configuration changes performed. Default value: `DOWNGRADE`. Valid values:
	OrderType pulumi.StringPtrInput
	// Set of parameters needs to be set after mongodb instance was launched. See `parameters` below.
	Parameters InstanceParameterArrayInput
	// The duration that you will buy DB instance (in month). It is valid when `instanceChargeType` is `PrePaid`. Default value: `1`. Valid values: [1~9], 12, 24, 36.
	Period pulumi.IntPtrInput
	// The number of read-only nodes in the replica set instance. Default value: 0. Valid values: 0 to 5.
	ReadonlyReplicas pulumi.IntPtrInput
	// The name of the mongo replica set.
	ReplicaSetName pulumi.StringPtrInput
	// Replica set instance information.
	ReplicaSets InstanceReplicaSetArrayInput
	// Number of replica set nodes. Valid values: `1`, `3`, `5`, `7`.
	ReplicationFactor pulumi.IntPtrInput
	// The ID of the Resource Group.
	ResourceGroupId pulumi.StringPtrInput
	// Instance data backup retention days. Available since v1.42.0.
	RetentionPeriod pulumi.IntPtrInput
	// The Alibaba Cloud Resource Name (ARN) of the specified Resource Access Management (RAM) role.
	RoleArn pulumi.StringPtrInput
	// Configure the available area where the slave node (Secondary node) is located to realize multi-available area deployment. **NOTE:** This parameter value cannot be the same as `zoneId` and `hiddenZoneId` parameter values.
	SecondaryZoneId pulumi.StringPtrInput
	// The Security Group ID of ECS.
	SecurityGroupId pulumi.StringPtrInput
	// List of IP addresses allowed to access all databases of an instance. The list contains up to 1,000 IP addresses, separated by commas. Supported formats include 0.0.0.0/0, 10.23.12.24 (IP), and 10.23.12.24/24 (Classless Inter-Domain Routing (CIDR) mode. /24 represents the length of the prefix in an IP address. The range of the prefix length is [1,32]).
	SecurityIpLists pulumi.StringArrayInput
	// The snapshot backup type. Default value: `Standard`. Valid values:
	SnapshotBackupType pulumi.StringPtrInput
	// Actions performed on SSL functions. Valid values:
	SslAction pulumi.StringPtrInput
	// Status of the SSL feature.
	SslStatus pulumi.StringPtrInput
	// The storage engine of the instance. Default value: `WiredTiger`. Valid values: `WiredTiger`, `RocksDB`.
	StorageEngine pulumi.StringPtrInput
	// The storage type of the instance. Valid values: `cloudEssd1`, `cloudEssd2`, `cloudEssd3`, `localSsd`.
	StorageType pulumi.StringPtrInput
	// A mapping of tags to assign to the resource.
	Tags pulumi.MapInput
	// The TDE(Transparent Data Encryption) status. Valid values: `enabled`.
	TdeStatus pulumi.StringPtrInput
	// The ID of the VPC. > **NOTE:** `vpcId` is valid only when `networkType` is set to `VPC`.
	VpcId pulumi.StringPtrInput
	// The virtual switch ID to launch DB instances in one VPC.
	VswitchId pulumi.StringPtrInput
	// The Zone to launch the DB instance. it supports multiple zone.
	// If it is a multi-zone and `vswitchId` is specified, the vswitch must in one of them.
	// The multiple zone ID can be retrieved by setting `multi` to "true" in the data source `getZones`.
	ZoneId pulumi.StringPtrInput
}

func (InstanceState) ElementType

func (InstanceState) ElementType() reflect.Type

type ServerlessInstance added in v3.12.0

type ServerlessInstance struct {
	pulumi.CustomResourceState

	// The password of the database logon account.
	// * The password length is `8` to `32` bits.
	// * The password consists of at least any three of uppercase letters, lowercase letters, numbers, and special characters. The special character is `!#$%^&*()_+-=`. The MongoDB Serverless instance provides a default database login account. This account cannot be modified. You can only set or modify the password for this account.
	AccountPassword pulumi.StringOutput `pulumi:"accountPassword"`
	// Set whether the instance is automatically renewed.
	AutoRenew pulumi.BoolPtrOutput `pulumi:"autoRenew"`
	// The I/O throughput consumed by the instance. Valid values: `100` to `8000`.
	CapacityUnit pulumi.IntOutput `pulumi:"capacityUnit"`
	// The db instance description.
	DbInstanceDescription pulumi.StringPtrOutput `pulumi:"dbInstanceDescription"`
	// The db instance storage. Valid values: `1` to `100`.
	DbInstanceStorage pulumi.IntOutput `pulumi:"dbInstanceStorage"`
	// The database engine of the instance. Valid values: `MongoDB`.
	Engine pulumi.StringOutput `pulumi:"engine"`
	// The database version number. Valid values: `4.2`.
	EngineVersion pulumi.StringOutput `pulumi:"engineVersion"`
	// The end time of the maintenance window. Specify the time in the `HH:mmZ` format. The time must be in UTC. **NOTE:** The difference between the start time and end time must be one hour. For example, if `maintainStartTime` is `01:00Z`, `maintainEndTime` must be `02:00Z`.
	MaintainEndTime pulumi.StringOutput `pulumi:"maintainEndTime"`
	// The start time of the maintenance window. Specify the time in the `HH:mmZ` format. The time must be in UTC.
	MaintainStartTime pulumi.StringOutput `pulumi:"maintainStartTime"`
	// The purchase duration of the instance, in months. Valid values: `1` to `9`, `12`, `24`, `36`, `60`.
	Period pulumi.IntPtrOutput `pulumi:"period"`
	// The period price type. Valid values: `Day`, `Month`.
	PeriodPriceType pulumi.StringPtrOutput `pulumi:"periodPriceType"`
	// The ID of the resource group.
	ResourceGroupId pulumi.StringOutput `pulumi:"resourceGroupId"`
	// An array that consists of the information of IP whitelists.
	SecurityIpGroups ServerlessInstanceSecurityIpGroupArrayOutput `pulumi:"securityIpGroups"`
	// The instance status. For more information, see the instance Status Table.
	Status pulumi.StringOutput `pulumi:"status"`
	// The storage engine used by the instance. Valid values: `WiredTiger`.
	StorageEngine pulumi.StringOutput `pulumi:"storageEngine"`
	// A mapping of tags to assign to the resource.
	Tags pulumi.MapOutput `pulumi:"tags"`
	// The ID of the VPC network.
	VpcId pulumi.StringOutput `pulumi:"vpcId"`
	// The of the vswitch.
	VswitchId pulumi.StringOutput `pulumi:"vswitchId"`
	// The ID of the zone. Use this parameter to specify the zone created by the instance.
	ZoneId pulumi.StringOutput `pulumi:"zoneId"`
}

Provides a MongoDB Serverless Instance resource.

For information about MongoDB Serverless Instance and how to use it, see [What is Serverless Instance](https://www.alibabacloud.com/help/doc-detail/26558.html).

> **NOTE:** Deprecated since v1.214.0.

> **DEPRECATED:** This resource has been deprecated from version `1.214.0`.

## Example Usage

Basic Usage

```go package main

import (

"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/mongodb"
"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/resourcemanager"
"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/vpc"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_default, err := mongodb.GetZones(ctx, nil, nil)
		if err != nil {
			return err
		}
		defaultGetNetworks, err := vpc.GetNetworks(ctx, &vpc.GetNetworksArgs{
			NameRegex: pulumi.StringRef("default-NODELETING"),
		}, nil)
		if err != nil {
			return err
		}
		defaultGetSwitches, err := vpc.GetSwitches(ctx, &vpc.GetSwitchesArgs{
			VpcId:  pulumi.StringRef(defaultGetNetworks.Ids[0]),
			ZoneId: pulumi.StringRef(_default.Zones[0].Id),
		}, nil)
		if err != nil {
			return err
		}
		defaultGetResourceGroups, err := resourcemanager.GetResourceGroups(ctx, nil, nil)
		if err != nil {
			return err
		}
		_, err = mongodb.NewServerlessInstance(ctx, "example", &mongodb.ServerlessInstanceArgs{
			AccountPassword:       pulumi.String("Abc12345"),
			DbInstanceDescription: pulumi.String("example_value"),
			DbInstanceStorage:     pulumi.Int(5),
			StorageEngine:         pulumi.String("WiredTiger"),
			CapacityUnit:          pulumi.Int(100),
			Engine:                pulumi.String("MongoDB"),
			ResourceGroupId:       pulumi.String(defaultGetResourceGroups.Groups[0].Id),
			EngineVersion:         pulumi.String("4.2"),
			Period:                pulumi.Int(1),
			PeriodPriceType:       pulumi.String("Month"),
			VpcId:                 pulumi.String(defaultGetNetworks.Ids[0]),
			ZoneId:                pulumi.String(_default.Zones[0].Id),
			VswitchId:             pulumi.String(defaultGetSwitches.Ids[0]),
			Tags: pulumi.Map{
				"Created": pulumi.Any("MongodbServerlessInstance"),
				"For":     pulumi.Any("TF"),
			},
			SecurityIpGroups: mongodb.ServerlessInstanceSecurityIpGroupArray{
				&mongodb.ServerlessInstanceSecurityIpGroupArgs{
					SecurityIpGroupAttribute: pulumi.String("example_value"),
					SecurityIpGroupName:      pulumi.String("example_value"),
					SecurityIpList:           pulumi.String("192.168.0.1"),
				},
			},
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

MongoDB Serverless Instance can be imported using the id, e.g.

```sh $ pulumi import alicloud:mongodb/serverlessInstance:ServerlessInstance example <id> ```

func GetServerlessInstance added in v3.12.0

func GetServerlessInstance(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *ServerlessInstanceState, opts ...pulumi.ResourceOption) (*ServerlessInstance, error)

GetServerlessInstance gets an existing ServerlessInstance 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 NewServerlessInstance added in v3.12.0

func NewServerlessInstance(ctx *pulumi.Context,
	name string, args *ServerlessInstanceArgs, opts ...pulumi.ResourceOption) (*ServerlessInstance, error)

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

func (*ServerlessInstance) ElementType added in v3.12.0

func (*ServerlessInstance) ElementType() reflect.Type

func (*ServerlessInstance) ToServerlessInstanceOutput added in v3.12.0

func (i *ServerlessInstance) ToServerlessInstanceOutput() ServerlessInstanceOutput

func (*ServerlessInstance) ToServerlessInstanceOutputWithContext added in v3.12.0

func (i *ServerlessInstance) ToServerlessInstanceOutputWithContext(ctx context.Context) ServerlessInstanceOutput

type ServerlessInstanceArgs added in v3.12.0

type ServerlessInstanceArgs struct {
	// The password of the database logon account.
	// * The password length is `8` to `32` bits.
	// * The password consists of at least any three of uppercase letters, lowercase letters, numbers, and special characters. The special character is `!#$%^&*()_+-=`. The MongoDB Serverless instance provides a default database login account. This account cannot be modified. You can only set or modify the password for this account.
	AccountPassword pulumi.StringInput
	// Set whether the instance is automatically renewed.
	AutoRenew pulumi.BoolPtrInput
	// The I/O throughput consumed by the instance. Valid values: `100` to `8000`.
	CapacityUnit pulumi.IntInput
	// The db instance description.
	DbInstanceDescription pulumi.StringPtrInput
	// The db instance storage. Valid values: `1` to `100`.
	DbInstanceStorage pulumi.IntInput
	// The database engine of the instance. Valid values: `MongoDB`.
	Engine pulumi.StringPtrInput
	// The database version number. Valid values: `4.2`.
	EngineVersion pulumi.StringInput
	// The end time of the maintenance window. Specify the time in the `HH:mmZ` format. The time must be in UTC. **NOTE:** The difference between the start time and end time must be one hour. For example, if `maintainStartTime` is `01:00Z`, `maintainEndTime` must be `02:00Z`.
	MaintainEndTime pulumi.StringPtrInput
	// The start time of the maintenance window. Specify the time in the `HH:mmZ` format. The time must be in UTC.
	MaintainStartTime pulumi.StringPtrInput
	// The purchase duration of the instance, in months. Valid values: `1` to `9`, `12`, `24`, `36`, `60`.
	Period pulumi.IntPtrInput
	// The period price type. Valid values: `Day`, `Month`.
	PeriodPriceType pulumi.StringPtrInput
	// The ID of the resource group.
	ResourceGroupId pulumi.StringPtrInput
	// An array that consists of the information of IP whitelists.
	SecurityIpGroups ServerlessInstanceSecurityIpGroupArrayInput
	// The storage engine used by the instance. Valid values: `WiredTiger`.
	StorageEngine pulumi.StringPtrInput
	// A mapping of tags to assign to the resource.
	Tags pulumi.MapInput
	// The ID of the VPC network.
	VpcId pulumi.StringInput
	// The of the vswitch.
	VswitchId pulumi.StringInput
	// The ID of the zone. Use this parameter to specify the zone created by the instance.
	ZoneId pulumi.StringInput
}

The set of arguments for constructing a ServerlessInstance resource.

func (ServerlessInstanceArgs) ElementType added in v3.12.0

func (ServerlessInstanceArgs) ElementType() reflect.Type

type ServerlessInstanceArray added in v3.12.0

type ServerlessInstanceArray []ServerlessInstanceInput

func (ServerlessInstanceArray) ElementType added in v3.12.0

func (ServerlessInstanceArray) ElementType() reflect.Type

func (ServerlessInstanceArray) ToServerlessInstanceArrayOutput added in v3.12.0

func (i ServerlessInstanceArray) ToServerlessInstanceArrayOutput() ServerlessInstanceArrayOutput

func (ServerlessInstanceArray) ToServerlessInstanceArrayOutputWithContext added in v3.12.0

func (i ServerlessInstanceArray) ToServerlessInstanceArrayOutputWithContext(ctx context.Context) ServerlessInstanceArrayOutput

type ServerlessInstanceArrayInput added in v3.12.0

type ServerlessInstanceArrayInput interface {
	pulumi.Input

	ToServerlessInstanceArrayOutput() ServerlessInstanceArrayOutput
	ToServerlessInstanceArrayOutputWithContext(context.Context) ServerlessInstanceArrayOutput
}

ServerlessInstanceArrayInput is an input type that accepts ServerlessInstanceArray and ServerlessInstanceArrayOutput values. You can construct a concrete instance of `ServerlessInstanceArrayInput` via:

ServerlessInstanceArray{ ServerlessInstanceArgs{...} }

type ServerlessInstanceArrayOutput added in v3.12.0

type ServerlessInstanceArrayOutput struct{ *pulumi.OutputState }

func (ServerlessInstanceArrayOutput) ElementType added in v3.12.0

func (ServerlessInstanceArrayOutput) Index added in v3.12.0

func (ServerlessInstanceArrayOutput) ToServerlessInstanceArrayOutput added in v3.12.0

func (o ServerlessInstanceArrayOutput) ToServerlessInstanceArrayOutput() ServerlessInstanceArrayOutput

func (ServerlessInstanceArrayOutput) ToServerlessInstanceArrayOutputWithContext added in v3.12.0

func (o ServerlessInstanceArrayOutput) ToServerlessInstanceArrayOutputWithContext(ctx context.Context) ServerlessInstanceArrayOutput

type ServerlessInstanceInput added in v3.12.0

type ServerlessInstanceInput interface {
	pulumi.Input

	ToServerlessInstanceOutput() ServerlessInstanceOutput
	ToServerlessInstanceOutputWithContext(ctx context.Context) ServerlessInstanceOutput
}

type ServerlessInstanceMap added in v3.12.0

type ServerlessInstanceMap map[string]ServerlessInstanceInput

func (ServerlessInstanceMap) ElementType added in v3.12.0

func (ServerlessInstanceMap) ElementType() reflect.Type

func (ServerlessInstanceMap) ToServerlessInstanceMapOutput added in v3.12.0

func (i ServerlessInstanceMap) ToServerlessInstanceMapOutput() ServerlessInstanceMapOutput

func (ServerlessInstanceMap) ToServerlessInstanceMapOutputWithContext added in v3.12.0

func (i ServerlessInstanceMap) ToServerlessInstanceMapOutputWithContext(ctx context.Context) ServerlessInstanceMapOutput

type ServerlessInstanceMapInput added in v3.12.0

type ServerlessInstanceMapInput interface {
	pulumi.Input

	ToServerlessInstanceMapOutput() ServerlessInstanceMapOutput
	ToServerlessInstanceMapOutputWithContext(context.Context) ServerlessInstanceMapOutput
}

ServerlessInstanceMapInput is an input type that accepts ServerlessInstanceMap and ServerlessInstanceMapOutput values. You can construct a concrete instance of `ServerlessInstanceMapInput` via:

ServerlessInstanceMap{ "key": ServerlessInstanceArgs{...} }

type ServerlessInstanceMapOutput added in v3.12.0

type ServerlessInstanceMapOutput struct{ *pulumi.OutputState }

func (ServerlessInstanceMapOutput) ElementType added in v3.12.0

func (ServerlessInstanceMapOutput) MapIndex added in v3.12.0

func (ServerlessInstanceMapOutput) ToServerlessInstanceMapOutput added in v3.12.0

func (o ServerlessInstanceMapOutput) ToServerlessInstanceMapOutput() ServerlessInstanceMapOutput

func (ServerlessInstanceMapOutput) ToServerlessInstanceMapOutputWithContext added in v3.12.0

func (o ServerlessInstanceMapOutput) ToServerlessInstanceMapOutputWithContext(ctx context.Context) ServerlessInstanceMapOutput

type ServerlessInstanceOutput added in v3.12.0

type ServerlessInstanceOutput struct{ *pulumi.OutputState }

func (ServerlessInstanceOutput) AccountPassword added in v3.27.0

func (o ServerlessInstanceOutput) AccountPassword() pulumi.StringOutput

The password of the database logon account. * The password length is `8` to `32` bits. * The password consists of at least any three of uppercase letters, lowercase letters, numbers, and special characters. The special character is `!#$%^&*()_+-=`. The MongoDB Serverless instance provides a default database login account. This account cannot be modified. You can only set or modify the password for this account.

func (ServerlessInstanceOutput) AutoRenew added in v3.27.0

Set whether the instance is automatically renewed.

func (ServerlessInstanceOutput) CapacityUnit added in v3.27.0

func (o ServerlessInstanceOutput) CapacityUnit() pulumi.IntOutput

The I/O throughput consumed by the instance. Valid values: `100` to `8000`.

func (ServerlessInstanceOutput) DbInstanceDescription added in v3.27.0

func (o ServerlessInstanceOutput) DbInstanceDescription() pulumi.StringPtrOutput

The db instance description.

func (ServerlessInstanceOutput) DbInstanceStorage added in v3.27.0

func (o ServerlessInstanceOutput) DbInstanceStorage() pulumi.IntOutput

The db instance storage. Valid values: `1` to `100`.

func (ServerlessInstanceOutput) ElementType added in v3.12.0

func (ServerlessInstanceOutput) ElementType() reflect.Type

func (ServerlessInstanceOutput) Engine added in v3.27.0

The database engine of the instance. Valid values: `MongoDB`.

func (ServerlessInstanceOutput) EngineVersion added in v3.27.0

func (o ServerlessInstanceOutput) EngineVersion() pulumi.StringOutput

The database version number. Valid values: `4.2`.

func (ServerlessInstanceOutput) MaintainEndTime added in v3.27.0

func (o ServerlessInstanceOutput) MaintainEndTime() pulumi.StringOutput

The end time of the maintenance window. Specify the time in the `HH:mmZ` format. The time must be in UTC. **NOTE:** The difference between the start time and end time must be one hour. For example, if `maintainStartTime` is `01:00Z`, `maintainEndTime` must be `02:00Z`.

func (ServerlessInstanceOutput) MaintainStartTime added in v3.27.0

func (o ServerlessInstanceOutput) MaintainStartTime() pulumi.StringOutput

The start time of the maintenance window. Specify the time in the `HH:mmZ` format. The time must be in UTC.

func (ServerlessInstanceOutput) Period added in v3.27.0

The purchase duration of the instance, in months. Valid values: `1` to `9`, `12`, `24`, `36`, `60`.

func (ServerlessInstanceOutput) PeriodPriceType added in v3.27.0

func (o ServerlessInstanceOutput) PeriodPriceType() pulumi.StringPtrOutput

The period price type. Valid values: `Day`, `Month`.

func (ServerlessInstanceOutput) ResourceGroupId added in v3.27.0

func (o ServerlessInstanceOutput) ResourceGroupId() pulumi.StringOutput

The ID of the resource group.

func (ServerlessInstanceOutput) SecurityIpGroups added in v3.27.0

An array that consists of the information of IP whitelists.

func (ServerlessInstanceOutput) Status added in v3.27.0

The instance status. For more information, see the instance Status Table.

func (ServerlessInstanceOutput) StorageEngine added in v3.27.0

func (o ServerlessInstanceOutput) StorageEngine() pulumi.StringOutput

The storage engine used by the instance. Valid values: `WiredTiger`.

func (ServerlessInstanceOutput) Tags added in v3.27.0

A mapping of tags to assign to the resource.

func (ServerlessInstanceOutput) ToServerlessInstanceOutput added in v3.12.0

func (o ServerlessInstanceOutput) ToServerlessInstanceOutput() ServerlessInstanceOutput

func (ServerlessInstanceOutput) ToServerlessInstanceOutputWithContext added in v3.12.0

func (o ServerlessInstanceOutput) ToServerlessInstanceOutputWithContext(ctx context.Context) ServerlessInstanceOutput

func (ServerlessInstanceOutput) VpcId added in v3.27.0

The ID of the VPC network.

func (ServerlessInstanceOutput) VswitchId added in v3.27.0

The of the vswitch.

func (ServerlessInstanceOutput) ZoneId added in v3.27.0

The ID of the zone. Use this parameter to specify the zone created by the instance.

type ServerlessInstanceSecurityIpGroup added in v3.12.0

type ServerlessInstanceSecurityIpGroup struct {
	SecurityIpGroupAttribute *string `pulumi:"securityIpGroupAttribute"`
	SecurityIpGroupName      *string `pulumi:"securityIpGroupName"`
	SecurityIpList           *string `pulumi:"securityIpList"`
}

type ServerlessInstanceSecurityIpGroupArgs added in v3.12.0

type ServerlessInstanceSecurityIpGroupArgs struct {
	SecurityIpGroupAttribute pulumi.StringPtrInput `pulumi:"securityIpGroupAttribute"`
	SecurityIpGroupName      pulumi.StringPtrInput `pulumi:"securityIpGroupName"`
	SecurityIpList           pulumi.StringPtrInput `pulumi:"securityIpList"`
}

func (ServerlessInstanceSecurityIpGroupArgs) ElementType added in v3.12.0

func (ServerlessInstanceSecurityIpGroupArgs) ToServerlessInstanceSecurityIpGroupOutput added in v3.12.0

func (i ServerlessInstanceSecurityIpGroupArgs) ToServerlessInstanceSecurityIpGroupOutput() ServerlessInstanceSecurityIpGroupOutput

func (ServerlessInstanceSecurityIpGroupArgs) ToServerlessInstanceSecurityIpGroupOutputWithContext added in v3.12.0

func (i ServerlessInstanceSecurityIpGroupArgs) ToServerlessInstanceSecurityIpGroupOutputWithContext(ctx context.Context) ServerlessInstanceSecurityIpGroupOutput

type ServerlessInstanceSecurityIpGroupArray added in v3.12.0

type ServerlessInstanceSecurityIpGroupArray []ServerlessInstanceSecurityIpGroupInput

func (ServerlessInstanceSecurityIpGroupArray) ElementType added in v3.12.0

func (ServerlessInstanceSecurityIpGroupArray) ToServerlessInstanceSecurityIpGroupArrayOutput added in v3.12.0

func (i ServerlessInstanceSecurityIpGroupArray) ToServerlessInstanceSecurityIpGroupArrayOutput() ServerlessInstanceSecurityIpGroupArrayOutput

func (ServerlessInstanceSecurityIpGroupArray) ToServerlessInstanceSecurityIpGroupArrayOutputWithContext added in v3.12.0

func (i ServerlessInstanceSecurityIpGroupArray) ToServerlessInstanceSecurityIpGroupArrayOutputWithContext(ctx context.Context) ServerlessInstanceSecurityIpGroupArrayOutput

type ServerlessInstanceSecurityIpGroupArrayInput added in v3.12.0

type ServerlessInstanceSecurityIpGroupArrayInput interface {
	pulumi.Input

	ToServerlessInstanceSecurityIpGroupArrayOutput() ServerlessInstanceSecurityIpGroupArrayOutput
	ToServerlessInstanceSecurityIpGroupArrayOutputWithContext(context.Context) ServerlessInstanceSecurityIpGroupArrayOutput
}

ServerlessInstanceSecurityIpGroupArrayInput is an input type that accepts ServerlessInstanceSecurityIpGroupArray and ServerlessInstanceSecurityIpGroupArrayOutput values. You can construct a concrete instance of `ServerlessInstanceSecurityIpGroupArrayInput` via:

ServerlessInstanceSecurityIpGroupArray{ ServerlessInstanceSecurityIpGroupArgs{...} }

type ServerlessInstanceSecurityIpGroupArrayOutput added in v3.12.0

type ServerlessInstanceSecurityIpGroupArrayOutput struct{ *pulumi.OutputState }

func (ServerlessInstanceSecurityIpGroupArrayOutput) ElementType added in v3.12.0

func (ServerlessInstanceSecurityIpGroupArrayOutput) Index added in v3.12.0

func (ServerlessInstanceSecurityIpGroupArrayOutput) ToServerlessInstanceSecurityIpGroupArrayOutput added in v3.12.0

func (o ServerlessInstanceSecurityIpGroupArrayOutput) ToServerlessInstanceSecurityIpGroupArrayOutput() ServerlessInstanceSecurityIpGroupArrayOutput

func (ServerlessInstanceSecurityIpGroupArrayOutput) ToServerlessInstanceSecurityIpGroupArrayOutputWithContext added in v3.12.0

func (o ServerlessInstanceSecurityIpGroupArrayOutput) ToServerlessInstanceSecurityIpGroupArrayOutputWithContext(ctx context.Context) ServerlessInstanceSecurityIpGroupArrayOutput

type ServerlessInstanceSecurityIpGroupInput added in v3.12.0

type ServerlessInstanceSecurityIpGroupInput interface {
	pulumi.Input

	ToServerlessInstanceSecurityIpGroupOutput() ServerlessInstanceSecurityIpGroupOutput
	ToServerlessInstanceSecurityIpGroupOutputWithContext(context.Context) ServerlessInstanceSecurityIpGroupOutput
}

ServerlessInstanceSecurityIpGroupInput is an input type that accepts ServerlessInstanceSecurityIpGroupArgs and ServerlessInstanceSecurityIpGroupOutput values. You can construct a concrete instance of `ServerlessInstanceSecurityIpGroupInput` via:

ServerlessInstanceSecurityIpGroupArgs{...}

type ServerlessInstanceSecurityIpGroupOutput added in v3.12.0

type ServerlessInstanceSecurityIpGroupOutput struct{ *pulumi.OutputState }

func (ServerlessInstanceSecurityIpGroupOutput) ElementType added in v3.12.0

func (ServerlessInstanceSecurityIpGroupOutput) SecurityIpGroupAttribute added in v3.12.0

func (o ServerlessInstanceSecurityIpGroupOutput) SecurityIpGroupAttribute() pulumi.StringPtrOutput

func (ServerlessInstanceSecurityIpGroupOutput) SecurityIpGroupName added in v3.12.0

func (ServerlessInstanceSecurityIpGroupOutput) SecurityIpList added in v3.12.0

func (ServerlessInstanceSecurityIpGroupOutput) ToServerlessInstanceSecurityIpGroupOutput added in v3.12.0

func (o ServerlessInstanceSecurityIpGroupOutput) ToServerlessInstanceSecurityIpGroupOutput() ServerlessInstanceSecurityIpGroupOutput

func (ServerlessInstanceSecurityIpGroupOutput) ToServerlessInstanceSecurityIpGroupOutputWithContext added in v3.12.0

func (o ServerlessInstanceSecurityIpGroupOutput) ToServerlessInstanceSecurityIpGroupOutputWithContext(ctx context.Context) ServerlessInstanceSecurityIpGroupOutput

type ServerlessInstanceState added in v3.12.0

type ServerlessInstanceState struct {
	// The password of the database logon account.
	// * The password length is `8` to `32` bits.
	// * The password consists of at least any three of uppercase letters, lowercase letters, numbers, and special characters. The special character is `!#$%^&*()_+-=`. The MongoDB Serverless instance provides a default database login account. This account cannot be modified. You can only set or modify the password for this account.
	AccountPassword pulumi.StringPtrInput
	// Set whether the instance is automatically renewed.
	AutoRenew pulumi.BoolPtrInput
	// The I/O throughput consumed by the instance. Valid values: `100` to `8000`.
	CapacityUnit pulumi.IntPtrInput
	// The db instance description.
	DbInstanceDescription pulumi.StringPtrInput
	// The db instance storage. Valid values: `1` to `100`.
	DbInstanceStorage pulumi.IntPtrInput
	// The database engine of the instance. Valid values: `MongoDB`.
	Engine pulumi.StringPtrInput
	// The database version number. Valid values: `4.2`.
	EngineVersion pulumi.StringPtrInput
	// The end time of the maintenance window. Specify the time in the `HH:mmZ` format. The time must be in UTC. **NOTE:** The difference between the start time and end time must be one hour. For example, if `maintainStartTime` is `01:00Z`, `maintainEndTime` must be `02:00Z`.
	MaintainEndTime pulumi.StringPtrInput
	// The start time of the maintenance window. Specify the time in the `HH:mmZ` format. The time must be in UTC.
	MaintainStartTime pulumi.StringPtrInput
	// The purchase duration of the instance, in months. Valid values: `1` to `9`, `12`, `24`, `36`, `60`.
	Period pulumi.IntPtrInput
	// The period price type. Valid values: `Day`, `Month`.
	PeriodPriceType pulumi.StringPtrInput
	// The ID of the resource group.
	ResourceGroupId pulumi.StringPtrInput
	// An array that consists of the information of IP whitelists.
	SecurityIpGroups ServerlessInstanceSecurityIpGroupArrayInput
	// The instance status. For more information, see the instance Status Table.
	Status pulumi.StringPtrInput
	// The storage engine used by the instance. Valid values: `WiredTiger`.
	StorageEngine pulumi.StringPtrInput
	// A mapping of tags to assign to the resource.
	Tags pulumi.MapInput
	// The ID of the VPC network.
	VpcId pulumi.StringPtrInput
	// The of the vswitch.
	VswitchId pulumi.StringPtrInput
	// The ID of the zone. Use this parameter to specify the zone created by the instance.
	ZoneId pulumi.StringPtrInput
}

func (ServerlessInstanceState) ElementType added in v3.12.0

func (ServerlessInstanceState) ElementType() reflect.Type

type ShardingInstance

type ShardingInstance struct {
	pulumi.CustomResourceState

	// Password of the root account. It is a string of 6 to 32 characters and is composed of letters, numbers, and underlines.
	AccountPassword pulumi.StringPtrOutput `pulumi:"accountPassword"`
	// Auto renew for prepaid. Default value: `false`. Valid values: `true`, `false`.
	AutoRenew pulumi.BoolPtrOutput `pulumi:"autoRenew"`
	// MongoDB Instance backup period. It is required when `backupTime` was existed. Valid values: [Monday, Tuesday, Wednesday, Thursday, Friday, Saturday, Sunday]. Default to [Monday, Tuesday, Wednesday, Thursday, Friday, Saturday, Sunday]
	BackupPeriods pulumi.StringArrayOutput `pulumi:"backupPeriods"`
	// Sharding Instance backup time. It is required when `backupPeriod` was existed. In the format of HH:mmZ- HH:mmZ. Time setting interval is one hour. If not set, the system will return a default, like "23:00Z-24:00Z".
	BackupTime pulumi.StringOutput `pulumi:"backupTime"`
	// The ConfigServer nodes of the instance. See `configServerList` below.
	ConfigServerLists ShardingInstanceConfigServerListArrayOutput `pulumi:"configServerLists"`
	// Database version. Value options can refer to the latest docs [CreateDBInstance](https://www.alibabacloud.com/help/en/doc-detail/61884.htm) `EngineVersion`.
	EngineVersion pulumi.StringOutput `pulumi:"engineVersion"`
	// The billing method of the instance. Default value: `PostPaid`. Valid values: `PrePaid`, `PostPaid`. **NOTE:** It can be modified from `PostPaid` to `PrePaid` after version v1.141.0.
	InstanceChargeType pulumi.StringOutput `pulumi:"instanceChargeType"`
	// An KMS encrypts password used to a instance. If the `accountPassword` is filled in, this field will be ignored.
	KmsEncryptedPassword pulumi.StringPtrOutput `pulumi:"kmsEncryptedPassword"`
	// An KMS encryption context used to decrypt `kmsEncryptedPassword` before creating or updating instance with `kmsEncryptedPassword`. See [Encryption Context](https://www.alibabacloud.com/help/doc-detail/42975.htm). It is valid when `kmsEncryptedPassword` is set.
	KmsEncryptionContext pulumi.MapOutput `pulumi:"kmsEncryptionContext"`
	// The Mongo nodes of the instance. The mongo-node count can be purchased is in range of [2, 32]. See `mongoList` below.
	MongoLists ShardingInstanceMongoListArrayOutput `pulumi:"mongoLists"`
	// The name of DB instance. It must be 2 to 256 characters in length.
	Name pulumi.StringOutput `pulumi:"name"`
	// The network type of the instance. Valid values:`Classic` or `VPC`.
	NetworkType pulumi.StringOutput `pulumi:"networkType"`
	// The type of configuration changes performed. Default value: `DOWNGRADE`. Valid values:
	OrderType pulumi.StringPtrOutput `pulumi:"orderType"`
	// The duration that you will buy DB instance (in month). It is valid when `instanceChargeType` is `PrePaid`. Default value: `1`. Valid values: [1~9], 12, 24, 36.
	Period pulumi.IntOutput `pulumi:"period"`
	// The type of the access protocol. Valid values: `mongodb` or `dynamodb`.
	ProtocolType pulumi.StringOutput `pulumi:"protocolType"`
	// The ID of the Resource Group.
	ResourceGroupId pulumi.StringOutput `pulumi:"resourceGroupId"`
	// (Available since v1.42.0) Instance data backup retention days.
	RetentionPeriod pulumi.IntOutput `pulumi:"retentionPeriod"`
	// The Security Group ID of ECS.
	SecurityGroupId pulumi.StringOutput `pulumi:"securityGroupId"`
	// List of IP addresses allowed to access all databases of an instance. The list contains up to 1,000 IP addresses, separated by commas. Supported formats include 0.0.0.0/0, 10.23.12.24 (IP), and 10.23.12.24/24 (Classless Inter-Domain Routing (CIDR) mode. /24 represents the length of the prefix in an IP address. The range of the prefix length is [1,32]). System default to `["127.0.0.1"]`.
	SecurityIpLists pulumi.StringArrayOutput `pulumi:"securityIpLists"`
	// The Shard nodes of the instance. The shard-node count can be purchased is in range of [2, 32]. See `shardList` below.
	ShardLists ShardingInstanceShardListArrayOutput `pulumi:"shardLists"`
	// The storage engine of the instance. Default value: `WiredTiger`. Valid values: `WiredTiger`, `RocksDB`.
	StorageEngine pulumi.StringOutput `pulumi:"storageEngine"`
	// A mapping of tags to assign to the resource.
	Tags pulumi.MapOutput `pulumi:"tags"`
	// The TDE(Transparent Data Encryption) status. It can be updated from version 1.160.0.
	TdeStatus pulumi.StringOutput `pulumi:"tdeStatus"`
	// The ID of the VPC. > **NOTE:** `vpcId` is valid only when `networkType` is set to `VPC`.
	VpcId pulumi.StringOutput `pulumi:"vpcId"`
	// The virtual switch ID to launch DB instances in one VPC.
	VswitchId pulumi.StringOutput `pulumi:"vswitchId"`
	// The Zone to launch the DB instance. MongoDB Sharding Instance does not support multiple-zone.
	// If it is a multi-zone and `vswitchId` is specified, the vswitch must in one of them.
	ZoneId pulumi.StringOutput `pulumi:"zoneId"`
}

Provides a MongoDB Sharding Instance resource supports replica set instances only. the MongoDB provides stable, reliable, and automatic scalable database services. It offers a full range of database solutions, such as disaster recovery, backup, recovery, monitoring, and alarms. You can see detail product introduction [here](https://www.alibabacloud.com/help/doc-detail/26558.htm)

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

> **NOTE:** The following regions don't support create Classic network MongoDB Sharding Instance. [`cn-zhangjiakou`,`cn-huhehaote`,`ap-southeast-3`,`ap-southeast-5`,`me-east-1`,`ap-northeast-1`,`eu-west-1`]

> **NOTE:** Create MongoDB Sharding instance or change instance type and storage would cost 10~20 minutes. Please make full preparation.

## Example Usage

### Create a Mongodb Sharding instance

```go package main

import (

"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/mongodb"
"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/vpc"
"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
		}
		_default, err := mongodb.GetZones(ctx, nil, nil)
		if err != nil {
			return err
		}
		index := len(_default.Zones) - 1
		zoneId := _default.Zones[index].Id
		defaultNetwork, err := vpc.NewNetwork(ctx, "default", &vpc.NetworkArgs{
			VpcName:   pulumi.String(name),
			CidrBlock: pulumi.String("172.17.3.0/24"),
		})
		if err != nil {
			return err
		}
		defaultSwitch, err := vpc.NewSwitch(ctx, "default", &vpc.SwitchArgs{
			VswitchName: pulumi.String(name),
			CidrBlock:   pulumi.String("172.17.3.0/24"),
			VpcId:       defaultNetwork.ID(),
			ZoneId:      pulumi.String(zoneId),
		})
		if err != nil {
			return err
		}
		_, err = mongodb.NewShardingInstance(ctx, "default", &mongodb.ShardingInstanceArgs{
			EngineVersion: pulumi.String("4.2"),
			VswitchId:     defaultSwitch.ID(),
			ZoneId:        pulumi.String(zoneId),
			Name:          pulumi.String(name),
			MongoLists: mongodb.ShardingInstanceMongoListArray{
				&mongodb.ShardingInstanceMongoListArgs{
					NodeClass: pulumi.String("dds.mongos.mid"),
				},
				&mongodb.ShardingInstanceMongoListArgs{
					NodeClass: pulumi.String("dds.mongos.mid"),
				},
			},
			ShardLists: mongodb.ShardingInstanceShardListArray{
				&mongodb.ShardingInstanceShardListArgs{
					NodeClass:   pulumi.String("dds.shard.mid"),
					NodeStorage: pulumi.Int(10),
				},
				&mongodb.ShardingInstanceShardListArgs{
					NodeClass:        pulumi.String("dds.shard.standard"),
					NodeStorage:      pulumi.Int(20),
					ReadonlyReplicas: pulumi.Int(1),
				},
			},
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Module Support

You can use to the existing mongodb-sharding module to create a MongoDB Sharding Instance resource one-click.

## Import

MongoDB Sharding Instance can be imported using the id, e.g.

```sh $ pulumi import alicloud:mongodb/shardingInstance:ShardingInstance example dds-bp1291daeda44195 ```

func GetShardingInstance

func GetShardingInstance(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *ShardingInstanceState, opts ...pulumi.ResourceOption) (*ShardingInstance, error)

GetShardingInstance gets an existing ShardingInstance 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 NewShardingInstance

func NewShardingInstance(ctx *pulumi.Context,
	name string, args *ShardingInstanceArgs, opts ...pulumi.ResourceOption) (*ShardingInstance, error)

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

func (*ShardingInstance) ElementType

func (*ShardingInstance) ElementType() reflect.Type

func (*ShardingInstance) ToShardingInstanceOutput

func (i *ShardingInstance) ToShardingInstanceOutput() ShardingInstanceOutput

func (*ShardingInstance) ToShardingInstanceOutputWithContext

func (i *ShardingInstance) ToShardingInstanceOutputWithContext(ctx context.Context) ShardingInstanceOutput

type ShardingInstanceArgs

type ShardingInstanceArgs struct {
	// Password of the root account. It is a string of 6 to 32 characters and is composed of letters, numbers, and underlines.
	AccountPassword pulumi.StringPtrInput
	// Auto renew for prepaid. Default value: `false`. Valid values: `true`, `false`.
	AutoRenew pulumi.BoolPtrInput
	// MongoDB Instance backup period. It is required when `backupTime` was existed. Valid values: [Monday, Tuesday, Wednesday, Thursday, Friday, Saturday, Sunday]. Default to [Monday, Tuesday, Wednesday, Thursday, Friday, Saturday, Sunday]
	BackupPeriods pulumi.StringArrayInput
	// Sharding Instance backup time. It is required when `backupPeriod` was existed. In the format of HH:mmZ- HH:mmZ. Time setting interval is one hour. If not set, the system will return a default, like "23:00Z-24:00Z".
	BackupTime pulumi.StringPtrInput
	// The ConfigServer nodes of the instance. See `configServerList` below.
	ConfigServerLists ShardingInstanceConfigServerListArrayInput
	// Database version. Value options can refer to the latest docs [CreateDBInstance](https://www.alibabacloud.com/help/en/doc-detail/61884.htm) `EngineVersion`.
	EngineVersion pulumi.StringInput
	// The billing method of the instance. Default value: `PostPaid`. Valid values: `PrePaid`, `PostPaid`. **NOTE:** It can be modified from `PostPaid` to `PrePaid` after version v1.141.0.
	InstanceChargeType pulumi.StringPtrInput
	// An KMS encrypts password used to a instance. If the `accountPassword` is filled in, this field will be ignored.
	KmsEncryptedPassword pulumi.StringPtrInput
	// An KMS encryption context used to decrypt `kmsEncryptedPassword` before creating or updating instance with `kmsEncryptedPassword`. See [Encryption Context](https://www.alibabacloud.com/help/doc-detail/42975.htm). It is valid when `kmsEncryptedPassword` is set.
	KmsEncryptionContext pulumi.MapInput
	// The Mongo nodes of the instance. The mongo-node count can be purchased is in range of [2, 32]. See `mongoList` below.
	MongoLists ShardingInstanceMongoListArrayInput
	// The name of DB instance. It must be 2 to 256 characters in length.
	Name pulumi.StringPtrInput
	// The network type of the instance. Valid values:`Classic` or `VPC`.
	NetworkType pulumi.StringPtrInput
	// The type of configuration changes performed. Default value: `DOWNGRADE`. Valid values:
	OrderType pulumi.StringPtrInput
	// The duration that you will buy DB instance (in month). It is valid when `instanceChargeType` is `PrePaid`. Default value: `1`. Valid values: [1~9], 12, 24, 36.
	Period pulumi.IntPtrInput
	// The type of the access protocol. Valid values: `mongodb` or `dynamodb`.
	ProtocolType pulumi.StringPtrInput
	// The ID of the Resource Group.
	ResourceGroupId pulumi.StringPtrInput
	// The Security Group ID of ECS.
	SecurityGroupId pulumi.StringPtrInput
	// List of IP addresses allowed to access all databases of an instance. The list contains up to 1,000 IP addresses, separated by commas. Supported formats include 0.0.0.0/0, 10.23.12.24 (IP), and 10.23.12.24/24 (Classless Inter-Domain Routing (CIDR) mode. /24 represents the length of the prefix in an IP address. The range of the prefix length is [1,32]). System default to `["127.0.0.1"]`.
	SecurityIpLists pulumi.StringArrayInput
	// The Shard nodes of the instance. The shard-node count can be purchased is in range of [2, 32]. See `shardList` below.
	ShardLists ShardingInstanceShardListArrayInput
	// The storage engine of the instance. Default value: `WiredTiger`. Valid values: `WiredTiger`, `RocksDB`.
	StorageEngine pulumi.StringPtrInput
	// A mapping of tags to assign to the resource.
	Tags pulumi.MapInput
	// The TDE(Transparent Data Encryption) status. It can be updated from version 1.160.0.
	TdeStatus pulumi.StringPtrInput
	// The ID of the VPC. > **NOTE:** `vpcId` is valid only when `networkType` is set to `VPC`.
	VpcId pulumi.StringPtrInput
	// The virtual switch ID to launch DB instances in one VPC.
	VswitchId pulumi.StringPtrInput
	// The Zone to launch the DB instance. MongoDB Sharding Instance does not support multiple-zone.
	// If it is a multi-zone and `vswitchId` is specified, the vswitch must in one of them.
	ZoneId pulumi.StringPtrInput
}

The set of arguments for constructing a ShardingInstance resource.

func (ShardingInstanceArgs) ElementType

func (ShardingInstanceArgs) ElementType() reflect.Type

type ShardingInstanceArray

type ShardingInstanceArray []ShardingInstanceInput

func (ShardingInstanceArray) ElementType

func (ShardingInstanceArray) ElementType() reflect.Type

func (ShardingInstanceArray) ToShardingInstanceArrayOutput

func (i ShardingInstanceArray) ToShardingInstanceArrayOutput() ShardingInstanceArrayOutput

func (ShardingInstanceArray) ToShardingInstanceArrayOutputWithContext

func (i ShardingInstanceArray) ToShardingInstanceArrayOutputWithContext(ctx context.Context) ShardingInstanceArrayOutput

type ShardingInstanceArrayInput

type ShardingInstanceArrayInput interface {
	pulumi.Input

	ToShardingInstanceArrayOutput() ShardingInstanceArrayOutput
	ToShardingInstanceArrayOutputWithContext(context.Context) ShardingInstanceArrayOutput
}

ShardingInstanceArrayInput is an input type that accepts ShardingInstanceArray and ShardingInstanceArrayOutput values. You can construct a concrete instance of `ShardingInstanceArrayInput` via:

ShardingInstanceArray{ ShardingInstanceArgs{...} }

type ShardingInstanceArrayOutput

type ShardingInstanceArrayOutput struct{ *pulumi.OutputState }

func (ShardingInstanceArrayOutput) ElementType

func (ShardingInstanceArrayOutput) Index

func (ShardingInstanceArrayOutput) ToShardingInstanceArrayOutput

func (o ShardingInstanceArrayOutput) ToShardingInstanceArrayOutput() ShardingInstanceArrayOutput

func (ShardingInstanceArrayOutput) ToShardingInstanceArrayOutputWithContext

func (o ShardingInstanceArrayOutput) ToShardingInstanceArrayOutputWithContext(ctx context.Context) ShardingInstanceArrayOutput

type ShardingInstanceConfigServerList added in v3.9.0

type ShardingInstanceConfigServerList struct {
	// The connection address of the Config Server node.
	ConnectString *string `pulumi:"connectString"`
	// The max connections of the Config Server node.
	MaxConnections *int `pulumi:"maxConnections"`
	// The maximum IOPS of the Config Server node.
	MaxIops *int `pulumi:"maxIops"`
	// The instance type of the ConfigServer node. Valid values: `mdb.shard.2x.xlarge.d`, `dds.cs.mid`.
	NodeClass *string `pulumi:"nodeClass"`
	// The description of the Config Server node.
	NodeDescription *string `pulumi:"nodeDescription"`
	// The ID of the Config Server node.
	NodeId *string `pulumi:"nodeId"`
	// The storage space of the ConfigServer node.
	NodeStorage *int `pulumi:"nodeStorage"`
	// The connection port of the Config Server node.
	Port *int `pulumi:"port"`
}

type ShardingInstanceConfigServerListArgs added in v3.9.0

type ShardingInstanceConfigServerListArgs struct {
	// The connection address of the Config Server node.
	ConnectString pulumi.StringPtrInput `pulumi:"connectString"`
	// The max connections of the Config Server node.
	MaxConnections pulumi.IntPtrInput `pulumi:"maxConnections"`
	// The maximum IOPS of the Config Server node.
	MaxIops pulumi.IntPtrInput `pulumi:"maxIops"`
	// The instance type of the ConfigServer node. Valid values: `mdb.shard.2x.xlarge.d`, `dds.cs.mid`.
	NodeClass pulumi.StringPtrInput `pulumi:"nodeClass"`
	// The description of the Config Server node.
	NodeDescription pulumi.StringPtrInput `pulumi:"nodeDescription"`
	// The ID of the Config Server node.
	NodeId pulumi.StringPtrInput `pulumi:"nodeId"`
	// The storage space of the ConfigServer node.
	NodeStorage pulumi.IntPtrInput `pulumi:"nodeStorage"`
	// The connection port of the Config Server node.
	Port pulumi.IntPtrInput `pulumi:"port"`
}

func (ShardingInstanceConfigServerListArgs) ElementType added in v3.9.0

func (ShardingInstanceConfigServerListArgs) ToShardingInstanceConfigServerListOutput added in v3.9.0

func (i ShardingInstanceConfigServerListArgs) ToShardingInstanceConfigServerListOutput() ShardingInstanceConfigServerListOutput

func (ShardingInstanceConfigServerListArgs) ToShardingInstanceConfigServerListOutputWithContext added in v3.9.0

func (i ShardingInstanceConfigServerListArgs) ToShardingInstanceConfigServerListOutputWithContext(ctx context.Context) ShardingInstanceConfigServerListOutput

type ShardingInstanceConfigServerListArray added in v3.9.0

type ShardingInstanceConfigServerListArray []ShardingInstanceConfigServerListInput

func (ShardingInstanceConfigServerListArray) ElementType added in v3.9.0

func (ShardingInstanceConfigServerListArray) ToShardingInstanceConfigServerListArrayOutput added in v3.9.0

func (i ShardingInstanceConfigServerListArray) ToShardingInstanceConfigServerListArrayOutput() ShardingInstanceConfigServerListArrayOutput

func (ShardingInstanceConfigServerListArray) ToShardingInstanceConfigServerListArrayOutputWithContext added in v3.9.0

func (i ShardingInstanceConfigServerListArray) ToShardingInstanceConfigServerListArrayOutputWithContext(ctx context.Context) ShardingInstanceConfigServerListArrayOutput

type ShardingInstanceConfigServerListArrayInput added in v3.9.0

type ShardingInstanceConfigServerListArrayInput interface {
	pulumi.Input

	ToShardingInstanceConfigServerListArrayOutput() ShardingInstanceConfigServerListArrayOutput
	ToShardingInstanceConfigServerListArrayOutputWithContext(context.Context) ShardingInstanceConfigServerListArrayOutput
}

ShardingInstanceConfigServerListArrayInput is an input type that accepts ShardingInstanceConfigServerListArray and ShardingInstanceConfigServerListArrayOutput values. You can construct a concrete instance of `ShardingInstanceConfigServerListArrayInput` via:

ShardingInstanceConfigServerListArray{ ShardingInstanceConfigServerListArgs{...} }

type ShardingInstanceConfigServerListArrayOutput added in v3.9.0

type ShardingInstanceConfigServerListArrayOutput struct{ *pulumi.OutputState }

func (ShardingInstanceConfigServerListArrayOutput) ElementType added in v3.9.0

func (ShardingInstanceConfigServerListArrayOutput) Index added in v3.9.0

func (ShardingInstanceConfigServerListArrayOutput) ToShardingInstanceConfigServerListArrayOutput added in v3.9.0

func (o ShardingInstanceConfigServerListArrayOutput) ToShardingInstanceConfigServerListArrayOutput() ShardingInstanceConfigServerListArrayOutput

func (ShardingInstanceConfigServerListArrayOutput) ToShardingInstanceConfigServerListArrayOutputWithContext added in v3.9.0

func (o ShardingInstanceConfigServerListArrayOutput) ToShardingInstanceConfigServerListArrayOutputWithContext(ctx context.Context) ShardingInstanceConfigServerListArrayOutput

type ShardingInstanceConfigServerListInput added in v3.9.0

type ShardingInstanceConfigServerListInput interface {
	pulumi.Input

	ToShardingInstanceConfigServerListOutput() ShardingInstanceConfigServerListOutput
	ToShardingInstanceConfigServerListOutputWithContext(context.Context) ShardingInstanceConfigServerListOutput
}

ShardingInstanceConfigServerListInput is an input type that accepts ShardingInstanceConfigServerListArgs and ShardingInstanceConfigServerListOutput values. You can construct a concrete instance of `ShardingInstanceConfigServerListInput` via:

ShardingInstanceConfigServerListArgs{...}

type ShardingInstanceConfigServerListOutput added in v3.9.0

type ShardingInstanceConfigServerListOutput struct{ *pulumi.OutputState }

func (ShardingInstanceConfigServerListOutput) ConnectString added in v3.9.0

The connection address of the Config Server node.

func (ShardingInstanceConfigServerListOutput) ElementType added in v3.9.0

func (ShardingInstanceConfigServerListOutput) MaxConnections added in v3.9.0

The max connections of the Config Server node.

func (ShardingInstanceConfigServerListOutput) MaxIops added in v3.9.0

The maximum IOPS of the Config Server node.

func (ShardingInstanceConfigServerListOutput) NodeClass added in v3.9.0

The instance type of the ConfigServer node. Valid values: `mdb.shard.2x.xlarge.d`, `dds.cs.mid`.

func (ShardingInstanceConfigServerListOutput) NodeDescription added in v3.9.0

The description of the Config Server node.

func (ShardingInstanceConfigServerListOutput) NodeId added in v3.9.0

The ID of the Config Server node.

func (ShardingInstanceConfigServerListOutput) NodeStorage added in v3.9.0

The storage space of the ConfigServer node.

func (ShardingInstanceConfigServerListOutput) Port added in v3.9.0

The connection port of the Config Server node.

func (ShardingInstanceConfigServerListOutput) ToShardingInstanceConfigServerListOutput added in v3.9.0

func (o ShardingInstanceConfigServerListOutput) ToShardingInstanceConfigServerListOutput() ShardingInstanceConfigServerListOutput

func (ShardingInstanceConfigServerListOutput) ToShardingInstanceConfigServerListOutputWithContext added in v3.9.0

func (o ShardingInstanceConfigServerListOutput) ToShardingInstanceConfigServerListOutputWithContext(ctx context.Context) ShardingInstanceConfigServerListOutput

type ShardingInstanceInput

type ShardingInstanceInput interface {
	pulumi.Input

	ToShardingInstanceOutput() ShardingInstanceOutput
	ToShardingInstanceOutputWithContext(ctx context.Context) ShardingInstanceOutput
}

type ShardingInstanceMap

type ShardingInstanceMap map[string]ShardingInstanceInput

func (ShardingInstanceMap) ElementType

func (ShardingInstanceMap) ElementType() reflect.Type

func (ShardingInstanceMap) ToShardingInstanceMapOutput

func (i ShardingInstanceMap) ToShardingInstanceMapOutput() ShardingInstanceMapOutput

func (ShardingInstanceMap) ToShardingInstanceMapOutputWithContext

func (i ShardingInstanceMap) ToShardingInstanceMapOutputWithContext(ctx context.Context) ShardingInstanceMapOutput

type ShardingInstanceMapInput

type ShardingInstanceMapInput interface {
	pulumi.Input

	ToShardingInstanceMapOutput() ShardingInstanceMapOutput
	ToShardingInstanceMapOutputWithContext(context.Context) ShardingInstanceMapOutput
}

ShardingInstanceMapInput is an input type that accepts ShardingInstanceMap and ShardingInstanceMapOutput values. You can construct a concrete instance of `ShardingInstanceMapInput` via:

ShardingInstanceMap{ "key": ShardingInstanceArgs{...} }

type ShardingInstanceMapOutput

type ShardingInstanceMapOutput struct{ *pulumi.OutputState }

func (ShardingInstanceMapOutput) ElementType

func (ShardingInstanceMapOutput) ElementType() reflect.Type

func (ShardingInstanceMapOutput) MapIndex

func (ShardingInstanceMapOutput) ToShardingInstanceMapOutput

func (o ShardingInstanceMapOutput) ToShardingInstanceMapOutput() ShardingInstanceMapOutput

func (ShardingInstanceMapOutput) ToShardingInstanceMapOutputWithContext

func (o ShardingInstanceMapOutput) ToShardingInstanceMapOutputWithContext(ctx context.Context) ShardingInstanceMapOutput

type ShardingInstanceMongoList

type ShardingInstanceMongoList struct {
	// The connection address of the Config Server node.
	ConnectString *string `pulumi:"connectString"`
	// The instance type of the mongo node. see [Instance specifications](https://www.alibabacloud.com/help/doc-detail/57141.htm).
	NodeClass string `pulumi:"nodeClass"`
	// The ID of the Config Server node.
	NodeId *string `pulumi:"nodeId"`
	// The connection port of the Config Server node.
	Port *int `pulumi:"port"`
}

type ShardingInstanceMongoListArgs

type ShardingInstanceMongoListArgs struct {
	// The connection address of the Config Server node.
	ConnectString pulumi.StringPtrInput `pulumi:"connectString"`
	// The instance type of the mongo node. see [Instance specifications](https://www.alibabacloud.com/help/doc-detail/57141.htm).
	NodeClass pulumi.StringInput `pulumi:"nodeClass"`
	// The ID of the Config Server node.
	NodeId pulumi.StringPtrInput `pulumi:"nodeId"`
	// The connection port of the Config Server node.
	Port pulumi.IntPtrInput `pulumi:"port"`
}

func (ShardingInstanceMongoListArgs) ElementType

func (ShardingInstanceMongoListArgs) ToShardingInstanceMongoListOutput

func (i ShardingInstanceMongoListArgs) ToShardingInstanceMongoListOutput() ShardingInstanceMongoListOutput

func (ShardingInstanceMongoListArgs) ToShardingInstanceMongoListOutputWithContext

func (i ShardingInstanceMongoListArgs) ToShardingInstanceMongoListOutputWithContext(ctx context.Context) ShardingInstanceMongoListOutput

type ShardingInstanceMongoListArray

type ShardingInstanceMongoListArray []ShardingInstanceMongoListInput

func (ShardingInstanceMongoListArray) ElementType

func (ShardingInstanceMongoListArray) ToShardingInstanceMongoListArrayOutput

func (i ShardingInstanceMongoListArray) ToShardingInstanceMongoListArrayOutput() ShardingInstanceMongoListArrayOutput

func (ShardingInstanceMongoListArray) ToShardingInstanceMongoListArrayOutputWithContext

func (i ShardingInstanceMongoListArray) ToShardingInstanceMongoListArrayOutputWithContext(ctx context.Context) ShardingInstanceMongoListArrayOutput

type ShardingInstanceMongoListArrayInput

type ShardingInstanceMongoListArrayInput interface {
	pulumi.Input

	ToShardingInstanceMongoListArrayOutput() ShardingInstanceMongoListArrayOutput
	ToShardingInstanceMongoListArrayOutputWithContext(context.Context) ShardingInstanceMongoListArrayOutput
}

ShardingInstanceMongoListArrayInput is an input type that accepts ShardingInstanceMongoListArray and ShardingInstanceMongoListArrayOutput values. You can construct a concrete instance of `ShardingInstanceMongoListArrayInput` via:

ShardingInstanceMongoListArray{ ShardingInstanceMongoListArgs{...} }

type ShardingInstanceMongoListArrayOutput

type ShardingInstanceMongoListArrayOutput struct{ *pulumi.OutputState }

func (ShardingInstanceMongoListArrayOutput) ElementType

func (ShardingInstanceMongoListArrayOutput) Index

func (ShardingInstanceMongoListArrayOutput) ToShardingInstanceMongoListArrayOutput

func (o ShardingInstanceMongoListArrayOutput) ToShardingInstanceMongoListArrayOutput() ShardingInstanceMongoListArrayOutput

func (ShardingInstanceMongoListArrayOutput) ToShardingInstanceMongoListArrayOutputWithContext

func (o ShardingInstanceMongoListArrayOutput) ToShardingInstanceMongoListArrayOutputWithContext(ctx context.Context) ShardingInstanceMongoListArrayOutput

type ShardingInstanceMongoListInput

type ShardingInstanceMongoListInput interface {
	pulumi.Input

	ToShardingInstanceMongoListOutput() ShardingInstanceMongoListOutput
	ToShardingInstanceMongoListOutputWithContext(context.Context) ShardingInstanceMongoListOutput
}

ShardingInstanceMongoListInput is an input type that accepts ShardingInstanceMongoListArgs and ShardingInstanceMongoListOutput values. You can construct a concrete instance of `ShardingInstanceMongoListInput` via:

ShardingInstanceMongoListArgs{...}

type ShardingInstanceMongoListOutput

type ShardingInstanceMongoListOutput struct{ *pulumi.OutputState }

func (ShardingInstanceMongoListOutput) ConnectString

The connection address of the Config Server node.

func (ShardingInstanceMongoListOutput) ElementType

func (ShardingInstanceMongoListOutput) NodeClass

The instance type of the mongo node. see [Instance specifications](https://www.alibabacloud.com/help/doc-detail/57141.htm).

func (ShardingInstanceMongoListOutput) NodeId

The ID of the Config Server node.

func (ShardingInstanceMongoListOutput) Port

The connection port of the Config Server node.

func (ShardingInstanceMongoListOutput) ToShardingInstanceMongoListOutput

func (o ShardingInstanceMongoListOutput) ToShardingInstanceMongoListOutput() ShardingInstanceMongoListOutput

func (ShardingInstanceMongoListOutput) ToShardingInstanceMongoListOutputWithContext

func (o ShardingInstanceMongoListOutput) ToShardingInstanceMongoListOutputWithContext(ctx context.Context) ShardingInstanceMongoListOutput

type ShardingInstanceOutput

type ShardingInstanceOutput struct{ *pulumi.OutputState }

func (ShardingInstanceOutput) AccountPassword added in v3.27.0

func (o ShardingInstanceOutput) AccountPassword() pulumi.StringPtrOutput

Password of the root account. It is a string of 6 to 32 characters and is composed of letters, numbers, and underlines.

func (ShardingInstanceOutput) AutoRenew added in v3.27.0

Auto renew for prepaid. Default value: `false`. Valid values: `true`, `false`.

func (ShardingInstanceOutput) BackupPeriods added in v3.27.0

MongoDB Instance backup period. It is required when `backupTime` was existed. Valid values: [Monday, Tuesday, Wednesday, Thursday, Friday, Saturday, Sunday]. Default to [Monday, Tuesday, Wednesday, Thursday, Friday, Saturday, Sunday]

func (ShardingInstanceOutput) BackupTime added in v3.27.0

Sharding Instance backup time. It is required when `backupPeriod` was existed. In the format of HH:mmZ- HH:mmZ. Time setting interval is one hour. If not set, the system will return a default, like "23:00Z-24:00Z".

func (ShardingInstanceOutput) ConfigServerLists added in v3.27.0

The ConfigServer nodes of the instance. See `configServerList` below.

func (ShardingInstanceOutput) ElementType

func (ShardingInstanceOutput) ElementType() reflect.Type

func (ShardingInstanceOutput) EngineVersion added in v3.27.0

func (o ShardingInstanceOutput) EngineVersion() pulumi.StringOutput

Database version. Value options can refer to the latest docs [CreateDBInstance](https://www.alibabacloud.com/help/en/doc-detail/61884.htm) `EngineVersion`.

func (ShardingInstanceOutput) InstanceChargeType added in v3.27.0

func (o ShardingInstanceOutput) InstanceChargeType() pulumi.StringOutput

The billing method of the instance. Default value: `PostPaid`. Valid values: `PrePaid`, `PostPaid`. **NOTE:** It can be modified from `PostPaid` to `PrePaid` after version v1.141.0.

func (ShardingInstanceOutput) KmsEncryptedPassword added in v3.27.0

func (o ShardingInstanceOutput) KmsEncryptedPassword() pulumi.StringPtrOutput

An KMS encrypts password used to a instance. If the `accountPassword` is filled in, this field will be ignored.

func (ShardingInstanceOutput) KmsEncryptionContext added in v3.27.0

func (o ShardingInstanceOutput) KmsEncryptionContext() pulumi.MapOutput

An KMS encryption context used to decrypt `kmsEncryptedPassword` before creating or updating instance with `kmsEncryptedPassword`. See [Encryption Context](https://www.alibabacloud.com/help/doc-detail/42975.htm). It is valid when `kmsEncryptedPassword` is set.

func (ShardingInstanceOutput) MongoLists added in v3.27.0

The Mongo nodes of the instance. The mongo-node count can be purchased is in range of [2, 32]. See `mongoList` below.

func (ShardingInstanceOutput) Name added in v3.27.0

The name of DB instance. It must be 2 to 256 characters in length.

func (ShardingInstanceOutput) NetworkType added in v3.27.0

func (o ShardingInstanceOutput) NetworkType() pulumi.StringOutput

The network type of the instance. Valid values:`Classic` or `VPC`.

func (ShardingInstanceOutput) OrderType added in v3.27.0

The type of configuration changes performed. Default value: `DOWNGRADE`. Valid values:

func (ShardingInstanceOutput) Period added in v3.27.0

The duration that you will buy DB instance (in month). It is valid when `instanceChargeType` is `PrePaid`. Default value: `1`. Valid values: [1~9], 12, 24, 36.

func (ShardingInstanceOutput) ProtocolType added in v3.27.0

func (o ShardingInstanceOutput) ProtocolType() pulumi.StringOutput

The type of the access protocol. Valid values: `mongodb` or `dynamodb`.

func (ShardingInstanceOutput) ResourceGroupId added in v3.27.0

func (o ShardingInstanceOutput) ResourceGroupId() pulumi.StringOutput

The ID of the Resource Group.

func (ShardingInstanceOutput) RetentionPeriod added in v3.27.0

func (o ShardingInstanceOutput) RetentionPeriod() pulumi.IntOutput

(Available since v1.42.0) Instance data backup retention days.

func (ShardingInstanceOutput) SecurityGroupId added in v3.27.0

func (o ShardingInstanceOutput) SecurityGroupId() pulumi.StringOutput

The Security Group ID of ECS.

func (ShardingInstanceOutput) SecurityIpLists added in v3.27.0

func (o ShardingInstanceOutput) SecurityIpLists() pulumi.StringArrayOutput

List of IP addresses allowed to access all databases of an instance. The list contains up to 1,000 IP addresses, separated by commas. Supported formats include 0.0.0.0/0, 10.23.12.24 (IP), and 10.23.12.24/24 (Classless Inter-Domain Routing (CIDR) mode. /24 represents the length of the prefix in an IP address. The range of the prefix length is [1,32]). System default to `["127.0.0.1"]`.

func (ShardingInstanceOutput) ShardLists added in v3.27.0

The Shard nodes of the instance. The shard-node count can be purchased is in range of [2, 32]. See `shardList` below.

func (ShardingInstanceOutput) StorageEngine added in v3.27.0

func (o ShardingInstanceOutput) StorageEngine() pulumi.StringOutput

The storage engine of the instance. Default value: `WiredTiger`. Valid values: `WiredTiger`, `RocksDB`.

func (ShardingInstanceOutput) Tags added in v3.27.0

A mapping of tags to assign to the resource.

func (ShardingInstanceOutput) TdeStatus added in v3.27.0

The TDE(Transparent Data Encryption) status. It can be updated from version 1.160.0.

func (ShardingInstanceOutput) ToShardingInstanceOutput

func (o ShardingInstanceOutput) ToShardingInstanceOutput() ShardingInstanceOutput

func (ShardingInstanceOutput) ToShardingInstanceOutputWithContext

func (o ShardingInstanceOutput) ToShardingInstanceOutputWithContext(ctx context.Context) ShardingInstanceOutput

func (ShardingInstanceOutput) VpcId added in v3.27.0

The ID of the VPC. > **NOTE:** `vpcId` is valid only when `networkType` is set to `VPC`.

func (ShardingInstanceOutput) VswitchId added in v3.27.0

The virtual switch ID to launch DB instances in one VPC.

func (ShardingInstanceOutput) ZoneId added in v3.27.0

The Zone to launch the DB instance. MongoDB Sharding Instance does not support multiple-zone. If it is a multi-zone and `vswitchId` is specified, the vswitch must in one of them.

type ShardingInstanceShardList

type ShardingInstanceShardList struct {
	// The instance type of the shard node. see [Instance specifications](https://www.alibabacloud.com/help/doc-detail/57141.htm).
	NodeClass string `pulumi:"nodeClass"`
	// The ID of the Config Server node.
	NodeId *string `pulumi:"nodeId"`
	// The storage space of the shard node.
	// - Custom storage space; value range: [10, 1,000]
	// - 10-GB increments. Unit: GB.
	NodeStorage int `pulumi:"nodeStorage"`
	// The number of read-only nodes in shard node Default value: `0`. Valid values: `0` to `5`.
	ReadonlyReplicas *int `pulumi:"readonlyReplicas"`
}

type ShardingInstanceShardListArgs

type ShardingInstanceShardListArgs struct {
	// The instance type of the shard node. see [Instance specifications](https://www.alibabacloud.com/help/doc-detail/57141.htm).
	NodeClass pulumi.StringInput `pulumi:"nodeClass"`
	// The ID of the Config Server node.
	NodeId pulumi.StringPtrInput `pulumi:"nodeId"`
	// The storage space of the shard node.
	// - Custom storage space; value range: [10, 1,000]
	// - 10-GB increments. Unit: GB.
	NodeStorage pulumi.IntInput `pulumi:"nodeStorage"`
	// The number of read-only nodes in shard node Default value: `0`. Valid values: `0` to `5`.
	ReadonlyReplicas pulumi.IntPtrInput `pulumi:"readonlyReplicas"`
}

func (ShardingInstanceShardListArgs) ElementType

func (ShardingInstanceShardListArgs) ToShardingInstanceShardListOutput

func (i ShardingInstanceShardListArgs) ToShardingInstanceShardListOutput() ShardingInstanceShardListOutput

func (ShardingInstanceShardListArgs) ToShardingInstanceShardListOutputWithContext

func (i ShardingInstanceShardListArgs) ToShardingInstanceShardListOutputWithContext(ctx context.Context) ShardingInstanceShardListOutput

type ShardingInstanceShardListArray

type ShardingInstanceShardListArray []ShardingInstanceShardListInput

func (ShardingInstanceShardListArray) ElementType

func (ShardingInstanceShardListArray) ToShardingInstanceShardListArrayOutput

func (i ShardingInstanceShardListArray) ToShardingInstanceShardListArrayOutput() ShardingInstanceShardListArrayOutput

func (ShardingInstanceShardListArray) ToShardingInstanceShardListArrayOutputWithContext

func (i ShardingInstanceShardListArray) ToShardingInstanceShardListArrayOutputWithContext(ctx context.Context) ShardingInstanceShardListArrayOutput

type ShardingInstanceShardListArrayInput

type ShardingInstanceShardListArrayInput interface {
	pulumi.Input

	ToShardingInstanceShardListArrayOutput() ShardingInstanceShardListArrayOutput
	ToShardingInstanceShardListArrayOutputWithContext(context.Context) ShardingInstanceShardListArrayOutput
}

ShardingInstanceShardListArrayInput is an input type that accepts ShardingInstanceShardListArray and ShardingInstanceShardListArrayOutput values. You can construct a concrete instance of `ShardingInstanceShardListArrayInput` via:

ShardingInstanceShardListArray{ ShardingInstanceShardListArgs{...} }

type ShardingInstanceShardListArrayOutput

type ShardingInstanceShardListArrayOutput struct{ *pulumi.OutputState }

func (ShardingInstanceShardListArrayOutput) ElementType

func (ShardingInstanceShardListArrayOutput) Index

func (ShardingInstanceShardListArrayOutput) ToShardingInstanceShardListArrayOutput

func (o ShardingInstanceShardListArrayOutput) ToShardingInstanceShardListArrayOutput() ShardingInstanceShardListArrayOutput

func (ShardingInstanceShardListArrayOutput) ToShardingInstanceShardListArrayOutputWithContext

func (o ShardingInstanceShardListArrayOutput) ToShardingInstanceShardListArrayOutputWithContext(ctx context.Context) ShardingInstanceShardListArrayOutput

type ShardingInstanceShardListInput

type ShardingInstanceShardListInput interface {
	pulumi.Input

	ToShardingInstanceShardListOutput() ShardingInstanceShardListOutput
	ToShardingInstanceShardListOutputWithContext(context.Context) ShardingInstanceShardListOutput
}

ShardingInstanceShardListInput is an input type that accepts ShardingInstanceShardListArgs and ShardingInstanceShardListOutput values. You can construct a concrete instance of `ShardingInstanceShardListInput` via:

ShardingInstanceShardListArgs{...}

type ShardingInstanceShardListOutput

type ShardingInstanceShardListOutput struct{ *pulumi.OutputState }

func (ShardingInstanceShardListOutput) ElementType

func (ShardingInstanceShardListOutput) NodeClass

The instance type of the shard node. see [Instance specifications](https://www.alibabacloud.com/help/doc-detail/57141.htm).

func (ShardingInstanceShardListOutput) NodeId

The ID of the Config Server node.

func (ShardingInstanceShardListOutput) NodeStorage

The storage space of the shard node. - Custom storage space; value range: [10, 1,000] - 10-GB increments. Unit: GB.

func (ShardingInstanceShardListOutput) ReadonlyReplicas added in v3.4.0

The number of read-only nodes in shard node Default value: `0`. Valid values: `0` to `5`.

func (ShardingInstanceShardListOutput) ToShardingInstanceShardListOutput

func (o ShardingInstanceShardListOutput) ToShardingInstanceShardListOutput() ShardingInstanceShardListOutput

func (ShardingInstanceShardListOutput) ToShardingInstanceShardListOutputWithContext

func (o ShardingInstanceShardListOutput) ToShardingInstanceShardListOutputWithContext(ctx context.Context) ShardingInstanceShardListOutput

type ShardingInstanceState

type ShardingInstanceState struct {
	// Password of the root account. It is a string of 6 to 32 characters and is composed of letters, numbers, and underlines.
	AccountPassword pulumi.StringPtrInput
	// Auto renew for prepaid. Default value: `false`. Valid values: `true`, `false`.
	AutoRenew pulumi.BoolPtrInput
	// MongoDB Instance backup period. It is required when `backupTime` was existed. Valid values: [Monday, Tuesday, Wednesday, Thursday, Friday, Saturday, Sunday]. Default to [Monday, Tuesday, Wednesday, Thursday, Friday, Saturday, Sunday]
	BackupPeriods pulumi.StringArrayInput
	// Sharding Instance backup time. It is required when `backupPeriod` was existed. In the format of HH:mmZ- HH:mmZ. Time setting interval is one hour. If not set, the system will return a default, like "23:00Z-24:00Z".
	BackupTime pulumi.StringPtrInput
	// The ConfigServer nodes of the instance. See `configServerList` below.
	ConfigServerLists ShardingInstanceConfigServerListArrayInput
	// Database version. Value options can refer to the latest docs [CreateDBInstance](https://www.alibabacloud.com/help/en/doc-detail/61884.htm) `EngineVersion`.
	EngineVersion pulumi.StringPtrInput
	// The billing method of the instance. Default value: `PostPaid`. Valid values: `PrePaid`, `PostPaid`. **NOTE:** It can be modified from `PostPaid` to `PrePaid` after version v1.141.0.
	InstanceChargeType pulumi.StringPtrInput
	// An KMS encrypts password used to a instance. If the `accountPassword` is filled in, this field will be ignored.
	KmsEncryptedPassword pulumi.StringPtrInput
	// An KMS encryption context used to decrypt `kmsEncryptedPassword` before creating or updating instance with `kmsEncryptedPassword`. See [Encryption Context](https://www.alibabacloud.com/help/doc-detail/42975.htm). It is valid when `kmsEncryptedPassword` is set.
	KmsEncryptionContext pulumi.MapInput
	// The Mongo nodes of the instance. The mongo-node count can be purchased is in range of [2, 32]. See `mongoList` below.
	MongoLists ShardingInstanceMongoListArrayInput
	// The name of DB instance. It must be 2 to 256 characters in length.
	Name pulumi.StringPtrInput
	// The network type of the instance. Valid values:`Classic` or `VPC`.
	NetworkType pulumi.StringPtrInput
	// The type of configuration changes performed. Default value: `DOWNGRADE`. Valid values:
	OrderType pulumi.StringPtrInput
	// The duration that you will buy DB instance (in month). It is valid when `instanceChargeType` is `PrePaid`. Default value: `1`. Valid values: [1~9], 12, 24, 36.
	Period pulumi.IntPtrInput
	// The type of the access protocol. Valid values: `mongodb` or `dynamodb`.
	ProtocolType pulumi.StringPtrInput
	// The ID of the Resource Group.
	ResourceGroupId pulumi.StringPtrInput
	// (Available since v1.42.0) Instance data backup retention days.
	RetentionPeriod pulumi.IntPtrInput
	// The Security Group ID of ECS.
	SecurityGroupId pulumi.StringPtrInput
	// List of IP addresses allowed to access all databases of an instance. The list contains up to 1,000 IP addresses, separated by commas. Supported formats include 0.0.0.0/0, 10.23.12.24 (IP), and 10.23.12.24/24 (Classless Inter-Domain Routing (CIDR) mode. /24 represents the length of the prefix in an IP address. The range of the prefix length is [1,32]). System default to `["127.0.0.1"]`.
	SecurityIpLists pulumi.StringArrayInput
	// The Shard nodes of the instance. The shard-node count can be purchased is in range of [2, 32]. See `shardList` below.
	ShardLists ShardingInstanceShardListArrayInput
	// The storage engine of the instance. Default value: `WiredTiger`. Valid values: `WiredTiger`, `RocksDB`.
	StorageEngine pulumi.StringPtrInput
	// A mapping of tags to assign to the resource.
	Tags pulumi.MapInput
	// The TDE(Transparent Data Encryption) status. It can be updated from version 1.160.0.
	TdeStatus pulumi.StringPtrInput
	// The ID of the VPC. > **NOTE:** `vpcId` is valid only when `networkType` is set to `VPC`.
	VpcId pulumi.StringPtrInput
	// The virtual switch ID to launch DB instances in one VPC.
	VswitchId pulumi.StringPtrInput
	// The Zone to launch the DB instance. MongoDB Sharding Instance does not support multiple-zone.
	// If it is a multi-zone and `vswitchId` is specified, the vswitch must in one of them.
	ZoneId pulumi.StringPtrInput
}

func (ShardingInstanceState) ElementType

func (ShardingInstanceState) ElementType() reflect.Type

type ShardingNetworkPrivateAddress added in v3.18.0

type ShardingNetworkPrivateAddress struct {
	pulumi.CustomResourceState

	// The name of the account.
	// - The name must be 4 to 16 characters in length and can contain lowercase letters, digits, and underscores (_). It must start with a lowercase letter.
	// - You need to set the account name and password only when you apply for an endpoint for a shard or Configserver node for the first time. In this case, the account name and password are used for all shard and Configserver nodes.
	// - The permissions of this account are fixed to read-only.
	AccountName pulumi.StringPtrOutput `pulumi:"accountName"`
	// Account password.
	// - The password must contain at least three of the following character types: uppercase letters, lowercase letters, digits, and special characters. Special characters include `!#$%^&*()_+-=`.
	// - The password must be 8 to 32 characters in length.
	AccountPassword pulumi.StringPtrOutput `pulumi:"accountPassword"`
	// The db instance id.
	DbInstanceId pulumi.StringOutput `pulumi:"dbInstanceId"`
	// The endpoint of the instance.
	NetworkAddresses ShardingNetworkPrivateAddressNetworkAddressArrayOutput `pulumi:"networkAddresses"`
	// The ID of the Shard node or the ConfigServer node.
	NodeId pulumi.StringOutput `pulumi:"nodeId"`
	// The zone ID of the instance.
	ZoneId pulumi.StringOutput `pulumi:"zoneId"`
}

Provides a MongoDB Sharding Network Private Address resource.

For information about MongoDB Sharding Network Private Address and how to use it, see [What is Sharding Network Private Address](https://www.alibabacloud.com/help/en/doc-detail/141403.html).

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

## Example Usage

Basic Usage

```go package main

import (

"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/mongodb"
"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/vpc"
"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
		}
		_default, err := mongodb.GetZones(ctx, nil, nil)
		if err != nil {
			return err
		}
		index := len(_default.Zones) - 1
		zoneId := _default.Zones[index].Id
		defaultNetwork, err := vpc.NewNetwork(ctx, "default", &vpc.NetworkArgs{
			VpcName:   pulumi.String(name),
			CidrBlock: pulumi.String("172.17.3.0/24"),
		})
		if err != nil {
			return err
		}
		defaultSwitch, err := vpc.NewSwitch(ctx, "default", &vpc.SwitchArgs{
			VswitchName: pulumi.String(name),
			CidrBlock:   pulumi.String("172.17.3.0/24"),
			VpcId:       defaultNetwork.ID(),
			ZoneId:      pulumi.String(zoneId),
		})
		if err != nil {
			return err
		}
		defaultShardingInstance, err := mongodb.NewShardingInstance(ctx, "default", &mongodb.ShardingInstanceArgs{
			ZoneId:        pulumi.String(zoneId),
			VswitchId:     defaultSwitch.ID(),
			EngineVersion: pulumi.String("4.2"),
			Name:          pulumi.String(name),
			ShardLists: mongodb.ShardingInstanceShardListArray{
				&mongodb.ShardingInstanceShardListArgs{
					NodeClass:   pulumi.String("dds.shard.mid"),
					NodeStorage: pulumi.Int(10),
				},
				&mongodb.ShardingInstanceShardListArgs{
					NodeClass:        pulumi.String("dds.shard.standard"),
					NodeStorage:      pulumi.Int(20),
					ReadonlyReplicas: pulumi.Int(1),
				},
			},
			MongoLists: mongodb.ShardingInstanceMongoListArray{
				&mongodb.ShardingInstanceMongoListArgs{
					NodeClass: pulumi.String("dds.mongos.mid"),
				},
				&mongodb.ShardingInstanceMongoListArgs{
					NodeClass: pulumi.String("dds.mongos.mid"),
				},
			},
		})
		if err != nil {
			return err
		}
		_, err = mongodb.NewShardingNetworkPrivateAddress(ctx, "default", &mongodb.ShardingNetworkPrivateAddressArgs{
			DbInstanceId: defaultShardingInstance.ID(),
			NodeId: defaultShardingInstance.ShardLists.ApplyT(func(shardLists []mongodb.ShardingInstanceShardList) (*string, error) {
				return &shardLists[0].NodeId, nil
			}).(pulumi.StringPtrOutput),
			ZoneId:          defaultShardingInstance.ZoneId,
			AccountName:     pulumi.String("example"),
			AccountPassword: pulumi.String("Example_123"),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

MongoDB Sharding Network Private Address can be imported using the id, e.g.

```sh $ pulumi import alicloud:mongodb/shardingNetworkPrivateAddress:ShardingNetworkPrivateAddress example <db_instance_id>:<node_id> ```

func GetShardingNetworkPrivateAddress added in v3.18.0

func GetShardingNetworkPrivateAddress(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *ShardingNetworkPrivateAddressState, opts ...pulumi.ResourceOption) (*ShardingNetworkPrivateAddress, error)

GetShardingNetworkPrivateAddress gets an existing ShardingNetworkPrivateAddress 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 NewShardingNetworkPrivateAddress added in v3.18.0

func NewShardingNetworkPrivateAddress(ctx *pulumi.Context,
	name string, args *ShardingNetworkPrivateAddressArgs, opts ...pulumi.ResourceOption) (*ShardingNetworkPrivateAddress, error)

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

func (*ShardingNetworkPrivateAddress) ElementType added in v3.18.0

func (*ShardingNetworkPrivateAddress) ToShardingNetworkPrivateAddressOutput added in v3.18.0

func (i *ShardingNetworkPrivateAddress) ToShardingNetworkPrivateAddressOutput() ShardingNetworkPrivateAddressOutput

func (*ShardingNetworkPrivateAddress) ToShardingNetworkPrivateAddressOutputWithContext added in v3.18.0

func (i *ShardingNetworkPrivateAddress) ToShardingNetworkPrivateAddressOutputWithContext(ctx context.Context) ShardingNetworkPrivateAddressOutput

type ShardingNetworkPrivateAddressArgs added in v3.18.0

type ShardingNetworkPrivateAddressArgs struct {
	// The name of the account.
	// - The name must be 4 to 16 characters in length and can contain lowercase letters, digits, and underscores (_). It must start with a lowercase letter.
	// - You need to set the account name and password only when you apply for an endpoint for a shard or Configserver node for the first time. In this case, the account name and password are used for all shard and Configserver nodes.
	// - The permissions of this account are fixed to read-only.
	AccountName pulumi.StringPtrInput
	// Account password.
	// - The password must contain at least three of the following character types: uppercase letters, lowercase letters, digits, and special characters. Special characters include `!#$%^&*()_+-=`.
	// - The password must be 8 to 32 characters in length.
	AccountPassword pulumi.StringPtrInput
	// The db instance id.
	DbInstanceId pulumi.StringInput
	// The ID of the Shard node or the ConfigServer node.
	NodeId pulumi.StringInput
	// The zone ID of the instance.
	ZoneId pulumi.StringInput
}

The set of arguments for constructing a ShardingNetworkPrivateAddress resource.

func (ShardingNetworkPrivateAddressArgs) ElementType added in v3.18.0

type ShardingNetworkPrivateAddressArray added in v3.18.0

type ShardingNetworkPrivateAddressArray []ShardingNetworkPrivateAddressInput

func (ShardingNetworkPrivateAddressArray) ElementType added in v3.18.0

func (ShardingNetworkPrivateAddressArray) ToShardingNetworkPrivateAddressArrayOutput added in v3.18.0

func (i ShardingNetworkPrivateAddressArray) ToShardingNetworkPrivateAddressArrayOutput() ShardingNetworkPrivateAddressArrayOutput

func (ShardingNetworkPrivateAddressArray) ToShardingNetworkPrivateAddressArrayOutputWithContext added in v3.18.0

func (i ShardingNetworkPrivateAddressArray) ToShardingNetworkPrivateAddressArrayOutputWithContext(ctx context.Context) ShardingNetworkPrivateAddressArrayOutput

type ShardingNetworkPrivateAddressArrayInput added in v3.18.0

type ShardingNetworkPrivateAddressArrayInput interface {
	pulumi.Input

	ToShardingNetworkPrivateAddressArrayOutput() ShardingNetworkPrivateAddressArrayOutput
	ToShardingNetworkPrivateAddressArrayOutputWithContext(context.Context) ShardingNetworkPrivateAddressArrayOutput
}

ShardingNetworkPrivateAddressArrayInput is an input type that accepts ShardingNetworkPrivateAddressArray and ShardingNetworkPrivateAddressArrayOutput values. You can construct a concrete instance of `ShardingNetworkPrivateAddressArrayInput` via:

ShardingNetworkPrivateAddressArray{ ShardingNetworkPrivateAddressArgs{...} }

type ShardingNetworkPrivateAddressArrayOutput added in v3.18.0

type ShardingNetworkPrivateAddressArrayOutput struct{ *pulumi.OutputState }

func (ShardingNetworkPrivateAddressArrayOutput) ElementType added in v3.18.0

func (ShardingNetworkPrivateAddressArrayOutput) Index added in v3.18.0

func (ShardingNetworkPrivateAddressArrayOutput) ToShardingNetworkPrivateAddressArrayOutput added in v3.18.0

func (o ShardingNetworkPrivateAddressArrayOutput) ToShardingNetworkPrivateAddressArrayOutput() ShardingNetworkPrivateAddressArrayOutput

func (ShardingNetworkPrivateAddressArrayOutput) ToShardingNetworkPrivateAddressArrayOutputWithContext added in v3.18.0

func (o ShardingNetworkPrivateAddressArrayOutput) ToShardingNetworkPrivateAddressArrayOutputWithContext(ctx context.Context) ShardingNetworkPrivateAddressArrayOutput

type ShardingNetworkPrivateAddressInput added in v3.18.0

type ShardingNetworkPrivateAddressInput interface {
	pulumi.Input

	ToShardingNetworkPrivateAddressOutput() ShardingNetworkPrivateAddressOutput
	ToShardingNetworkPrivateAddressOutputWithContext(ctx context.Context) ShardingNetworkPrivateAddressOutput
}

type ShardingNetworkPrivateAddressMap added in v3.18.0

type ShardingNetworkPrivateAddressMap map[string]ShardingNetworkPrivateAddressInput

func (ShardingNetworkPrivateAddressMap) ElementType added in v3.18.0

func (ShardingNetworkPrivateAddressMap) ToShardingNetworkPrivateAddressMapOutput added in v3.18.0

func (i ShardingNetworkPrivateAddressMap) ToShardingNetworkPrivateAddressMapOutput() ShardingNetworkPrivateAddressMapOutput

func (ShardingNetworkPrivateAddressMap) ToShardingNetworkPrivateAddressMapOutputWithContext added in v3.18.0

func (i ShardingNetworkPrivateAddressMap) ToShardingNetworkPrivateAddressMapOutputWithContext(ctx context.Context) ShardingNetworkPrivateAddressMapOutput

type ShardingNetworkPrivateAddressMapInput added in v3.18.0

type ShardingNetworkPrivateAddressMapInput interface {
	pulumi.Input

	ToShardingNetworkPrivateAddressMapOutput() ShardingNetworkPrivateAddressMapOutput
	ToShardingNetworkPrivateAddressMapOutputWithContext(context.Context) ShardingNetworkPrivateAddressMapOutput
}

ShardingNetworkPrivateAddressMapInput is an input type that accepts ShardingNetworkPrivateAddressMap and ShardingNetworkPrivateAddressMapOutput values. You can construct a concrete instance of `ShardingNetworkPrivateAddressMapInput` via:

ShardingNetworkPrivateAddressMap{ "key": ShardingNetworkPrivateAddressArgs{...} }

type ShardingNetworkPrivateAddressMapOutput added in v3.18.0

type ShardingNetworkPrivateAddressMapOutput struct{ *pulumi.OutputState }

func (ShardingNetworkPrivateAddressMapOutput) ElementType added in v3.18.0

func (ShardingNetworkPrivateAddressMapOutput) MapIndex added in v3.18.0

func (ShardingNetworkPrivateAddressMapOutput) ToShardingNetworkPrivateAddressMapOutput added in v3.18.0

func (o ShardingNetworkPrivateAddressMapOutput) ToShardingNetworkPrivateAddressMapOutput() ShardingNetworkPrivateAddressMapOutput

func (ShardingNetworkPrivateAddressMapOutput) ToShardingNetworkPrivateAddressMapOutputWithContext added in v3.18.0

func (o ShardingNetworkPrivateAddressMapOutput) ToShardingNetworkPrivateAddressMapOutputWithContext(ctx context.Context) ShardingNetworkPrivateAddressMapOutput

type ShardingNetworkPrivateAddressNetworkAddress added in v3.18.0

type ShardingNetworkPrivateAddressNetworkAddress struct {
	// The remaining duration of the classic network address. Unit: `seconds`.
	ExpiredTime *string `pulumi:"expiredTime"`
	// The IP address of the instance.
	IpAddress *string `pulumi:"ipAddress"`
	// The endpoint of the instance.
	NetworkAddress *string `pulumi:"networkAddress"`
	// The network type.
	NetworkType *string `pulumi:"networkType"`
	// The ID of the Shard node or the ConfigServer node.
	NodeId *string `pulumi:"nodeId"`
	// The type of the node.
	NodeType *string `pulumi:"nodeType"`
	// The port number.
	Port *string `pulumi:"port"`
	// The role of the node.
	Role *string `pulumi:"role"`
	// The ID of the VPC.
	VpcId *string `pulumi:"vpcId"`
	// The vSwitch ID of the VPC.
	VswitchId *string `pulumi:"vswitchId"`
}

type ShardingNetworkPrivateAddressNetworkAddressArgs added in v3.18.0

type ShardingNetworkPrivateAddressNetworkAddressArgs struct {
	// The remaining duration of the classic network address. Unit: `seconds`.
	ExpiredTime pulumi.StringPtrInput `pulumi:"expiredTime"`
	// The IP address of the instance.
	IpAddress pulumi.StringPtrInput `pulumi:"ipAddress"`
	// The endpoint of the instance.
	NetworkAddress pulumi.StringPtrInput `pulumi:"networkAddress"`
	// The network type.
	NetworkType pulumi.StringPtrInput `pulumi:"networkType"`
	// The ID of the Shard node or the ConfigServer node.
	NodeId pulumi.StringPtrInput `pulumi:"nodeId"`
	// The type of the node.
	NodeType pulumi.StringPtrInput `pulumi:"nodeType"`
	// The port number.
	Port pulumi.StringPtrInput `pulumi:"port"`
	// The role of the node.
	Role pulumi.StringPtrInput `pulumi:"role"`
	// The ID of the VPC.
	VpcId pulumi.StringPtrInput `pulumi:"vpcId"`
	// The vSwitch ID of the VPC.
	VswitchId pulumi.StringPtrInput `pulumi:"vswitchId"`
}

func (ShardingNetworkPrivateAddressNetworkAddressArgs) ElementType added in v3.18.0

func (ShardingNetworkPrivateAddressNetworkAddressArgs) ToShardingNetworkPrivateAddressNetworkAddressOutput added in v3.18.0

func (i ShardingNetworkPrivateAddressNetworkAddressArgs) ToShardingNetworkPrivateAddressNetworkAddressOutput() ShardingNetworkPrivateAddressNetworkAddressOutput

func (ShardingNetworkPrivateAddressNetworkAddressArgs) ToShardingNetworkPrivateAddressNetworkAddressOutputWithContext added in v3.18.0

func (i ShardingNetworkPrivateAddressNetworkAddressArgs) ToShardingNetworkPrivateAddressNetworkAddressOutputWithContext(ctx context.Context) ShardingNetworkPrivateAddressNetworkAddressOutput

type ShardingNetworkPrivateAddressNetworkAddressArray added in v3.18.0

type ShardingNetworkPrivateAddressNetworkAddressArray []ShardingNetworkPrivateAddressNetworkAddressInput

func (ShardingNetworkPrivateAddressNetworkAddressArray) ElementType added in v3.18.0

func (ShardingNetworkPrivateAddressNetworkAddressArray) ToShardingNetworkPrivateAddressNetworkAddressArrayOutput added in v3.18.0

func (i ShardingNetworkPrivateAddressNetworkAddressArray) ToShardingNetworkPrivateAddressNetworkAddressArrayOutput() ShardingNetworkPrivateAddressNetworkAddressArrayOutput

func (ShardingNetworkPrivateAddressNetworkAddressArray) ToShardingNetworkPrivateAddressNetworkAddressArrayOutputWithContext added in v3.18.0

func (i ShardingNetworkPrivateAddressNetworkAddressArray) ToShardingNetworkPrivateAddressNetworkAddressArrayOutputWithContext(ctx context.Context) ShardingNetworkPrivateAddressNetworkAddressArrayOutput

type ShardingNetworkPrivateAddressNetworkAddressArrayInput added in v3.18.0

type ShardingNetworkPrivateAddressNetworkAddressArrayInput interface {
	pulumi.Input

	ToShardingNetworkPrivateAddressNetworkAddressArrayOutput() ShardingNetworkPrivateAddressNetworkAddressArrayOutput
	ToShardingNetworkPrivateAddressNetworkAddressArrayOutputWithContext(context.Context) ShardingNetworkPrivateAddressNetworkAddressArrayOutput
}

ShardingNetworkPrivateAddressNetworkAddressArrayInput is an input type that accepts ShardingNetworkPrivateAddressNetworkAddressArray and ShardingNetworkPrivateAddressNetworkAddressArrayOutput values. You can construct a concrete instance of `ShardingNetworkPrivateAddressNetworkAddressArrayInput` via:

ShardingNetworkPrivateAddressNetworkAddressArray{ ShardingNetworkPrivateAddressNetworkAddressArgs{...} }

type ShardingNetworkPrivateAddressNetworkAddressArrayOutput added in v3.18.0

type ShardingNetworkPrivateAddressNetworkAddressArrayOutput struct{ *pulumi.OutputState }

func (ShardingNetworkPrivateAddressNetworkAddressArrayOutput) ElementType added in v3.18.0

func (ShardingNetworkPrivateAddressNetworkAddressArrayOutput) Index added in v3.18.0

func (ShardingNetworkPrivateAddressNetworkAddressArrayOutput) ToShardingNetworkPrivateAddressNetworkAddressArrayOutput added in v3.18.0

func (ShardingNetworkPrivateAddressNetworkAddressArrayOutput) ToShardingNetworkPrivateAddressNetworkAddressArrayOutputWithContext added in v3.18.0

func (o ShardingNetworkPrivateAddressNetworkAddressArrayOutput) ToShardingNetworkPrivateAddressNetworkAddressArrayOutputWithContext(ctx context.Context) ShardingNetworkPrivateAddressNetworkAddressArrayOutput

type ShardingNetworkPrivateAddressNetworkAddressInput added in v3.18.0

type ShardingNetworkPrivateAddressNetworkAddressInput interface {
	pulumi.Input

	ToShardingNetworkPrivateAddressNetworkAddressOutput() ShardingNetworkPrivateAddressNetworkAddressOutput
	ToShardingNetworkPrivateAddressNetworkAddressOutputWithContext(context.Context) ShardingNetworkPrivateAddressNetworkAddressOutput
}

ShardingNetworkPrivateAddressNetworkAddressInput is an input type that accepts ShardingNetworkPrivateAddressNetworkAddressArgs and ShardingNetworkPrivateAddressNetworkAddressOutput values. You can construct a concrete instance of `ShardingNetworkPrivateAddressNetworkAddressInput` via:

ShardingNetworkPrivateAddressNetworkAddressArgs{...}

type ShardingNetworkPrivateAddressNetworkAddressOutput added in v3.18.0

type ShardingNetworkPrivateAddressNetworkAddressOutput struct{ *pulumi.OutputState }

func (ShardingNetworkPrivateAddressNetworkAddressOutput) ElementType added in v3.18.0

func (ShardingNetworkPrivateAddressNetworkAddressOutput) ExpiredTime added in v3.18.0

The remaining duration of the classic network address. Unit: `seconds`.

func (ShardingNetworkPrivateAddressNetworkAddressOutput) IpAddress added in v3.18.0

The IP address of the instance.

func (ShardingNetworkPrivateAddressNetworkAddressOutput) NetworkAddress added in v3.18.0

The endpoint of the instance.

func (ShardingNetworkPrivateAddressNetworkAddressOutput) NetworkType added in v3.18.0

The network type.

func (ShardingNetworkPrivateAddressNetworkAddressOutput) NodeId added in v3.18.0

The ID of the Shard node or the ConfigServer node.

func (ShardingNetworkPrivateAddressNetworkAddressOutput) NodeType added in v3.18.0

The type of the node.

func (ShardingNetworkPrivateAddressNetworkAddressOutput) Port added in v3.18.0

The port number.

func (ShardingNetworkPrivateAddressNetworkAddressOutput) Role added in v3.18.0

The role of the node.

func (ShardingNetworkPrivateAddressNetworkAddressOutput) ToShardingNetworkPrivateAddressNetworkAddressOutput added in v3.18.0

func (o ShardingNetworkPrivateAddressNetworkAddressOutput) ToShardingNetworkPrivateAddressNetworkAddressOutput() ShardingNetworkPrivateAddressNetworkAddressOutput

func (ShardingNetworkPrivateAddressNetworkAddressOutput) ToShardingNetworkPrivateAddressNetworkAddressOutputWithContext added in v3.18.0

func (o ShardingNetworkPrivateAddressNetworkAddressOutput) ToShardingNetworkPrivateAddressNetworkAddressOutputWithContext(ctx context.Context) ShardingNetworkPrivateAddressNetworkAddressOutput

func (ShardingNetworkPrivateAddressNetworkAddressOutput) VpcId added in v3.18.0

The ID of the VPC.

func (ShardingNetworkPrivateAddressNetworkAddressOutput) VswitchId added in v3.18.0

The vSwitch ID of the VPC.

type ShardingNetworkPrivateAddressOutput added in v3.18.0

type ShardingNetworkPrivateAddressOutput struct{ *pulumi.OutputState }

func (ShardingNetworkPrivateAddressOutput) AccountName added in v3.27.0

The name of the account. - The name must be 4 to 16 characters in length and can contain lowercase letters, digits, and underscores (_). It must start with a lowercase letter. - You need to set the account name and password only when you apply for an endpoint for a shard or Configserver node for the first time. In this case, the account name and password are used for all shard and Configserver nodes. - The permissions of this account are fixed to read-only.

func (ShardingNetworkPrivateAddressOutput) AccountPassword added in v3.27.0

Account password. - The password must contain at least three of the following character types: uppercase letters, lowercase letters, digits, and special characters. Special characters include `!#$%^&*()_+-=`. - The password must be 8 to 32 characters in length.

func (ShardingNetworkPrivateAddressOutput) DbInstanceId added in v3.27.0

The db instance id.

func (ShardingNetworkPrivateAddressOutput) ElementType added in v3.18.0

func (ShardingNetworkPrivateAddressOutput) NetworkAddresses added in v3.27.0

The endpoint of the instance.

func (ShardingNetworkPrivateAddressOutput) NodeId added in v3.27.0

The ID of the Shard node or the ConfigServer node.

func (ShardingNetworkPrivateAddressOutput) ToShardingNetworkPrivateAddressOutput added in v3.18.0

func (o ShardingNetworkPrivateAddressOutput) ToShardingNetworkPrivateAddressOutput() ShardingNetworkPrivateAddressOutput

func (ShardingNetworkPrivateAddressOutput) ToShardingNetworkPrivateAddressOutputWithContext added in v3.18.0

func (o ShardingNetworkPrivateAddressOutput) ToShardingNetworkPrivateAddressOutputWithContext(ctx context.Context) ShardingNetworkPrivateAddressOutput

func (ShardingNetworkPrivateAddressOutput) ZoneId added in v3.27.0

The zone ID of the instance.

type ShardingNetworkPrivateAddressState added in v3.18.0

type ShardingNetworkPrivateAddressState struct {
	// The name of the account.
	// - The name must be 4 to 16 characters in length and can contain lowercase letters, digits, and underscores (_). It must start with a lowercase letter.
	// - You need to set the account name and password only when you apply for an endpoint for a shard or Configserver node for the first time. In this case, the account name and password are used for all shard and Configserver nodes.
	// - The permissions of this account are fixed to read-only.
	AccountName pulumi.StringPtrInput
	// Account password.
	// - The password must contain at least three of the following character types: uppercase letters, lowercase letters, digits, and special characters. Special characters include `!#$%^&*()_+-=`.
	// - The password must be 8 to 32 characters in length.
	AccountPassword pulumi.StringPtrInput
	// The db instance id.
	DbInstanceId pulumi.StringPtrInput
	// The endpoint of the instance.
	NetworkAddresses ShardingNetworkPrivateAddressNetworkAddressArrayInput
	// The ID of the Shard node or the ConfigServer node.
	NodeId pulumi.StringPtrInput
	// The zone ID of the instance.
	ZoneId pulumi.StringPtrInput
}

func (ShardingNetworkPrivateAddressState) ElementType added in v3.18.0

type ShardingNetworkPublicAddress added in v3.13.0

type ShardingNetworkPublicAddress struct {
	pulumi.CustomResourceState

	// The ID of the instance.
	DbInstanceId pulumi.StringOutput `pulumi:"dbInstanceId"`
	// The endpoint of the instance.
	NetworkAddresses ShardingNetworkPublicAddressNetworkAddressArrayOutput `pulumi:"networkAddresses"`
	// The ID of the `mongos`, `shard`, or `Configserver` node in the sharded cluster instance.
	NodeId pulumi.StringOutput `pulumi:"nodeId"`
}

Provides a MongoDB Sharding Network Public Address resource.

For information about MongoDB Sharding Network Public Address and how to use it, see [What is Sharding Network Public Address](https://www.alibabacloud.com/help/doc-detail/67602.html).

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

> **NOTE:** This operation supports sharded cluster instances only.

## Example Usage

Basic Usage

```go package main

import (

"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/mongodb"
"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/vpc"
"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
		}
		_default, err := mongodb.GetZones(ctx, nil, nil)
		if err != nil {
			return err
		}
		index := len(_default.Zones) - 1
		zoneId := _default.Zones[index].Id
		defaultNetwork, err := vpc.NewNetwork(ctx, "default", &vpc.NetworkArgs{
			VpcName:   pulumi.String(name),
			CidrBlock: pulumi.String("172.17.3.0/24"),
		})
		if err != nil {
			return err
		}
		defaultSwitch, err := vpc.NewSwitch(ctx, "default", &vpc.SwitchArgs{
			VswitchName: pulumi.String(name),
			CidrBlock:   pulumi.String("172.17.3.0/24"),
			VpcId:       defaultNetwork.ID(),
			ZoneId:      pulumi.String(zoneId),
		})
		if err != nil {
			return err
		}
		defaultShardingInstance, err := mongodb.NewShardingInstance(ctx, "default", &mongodb.ShardingInstanceArgs{
			ZoneId:        pulumi.String(zoneId),
			VswitchId:     defaultSwitch.ID(),
			EngineVersion: pulumi.String("4.2"),
			Name:          pulumi.String(name),
			ShardLists: mongodb.ShardingInstanceShardListArray{
				&mongodb.ShardingInstanceShardListArgs{
					NodeClass:   pulumi.String("dds.shard.mid"),
					NodeStorage: pulumi.Int(10),
				},
				&mongodb.ShardingInstanceShardListArgs{
					NodeClass:        pulumi.String("dds.shard.standard"),
					NodeStorage:      pulumi.Int(20),
					ReadonlyReplicas: pulumi.Int(1),
				},
			},
			MongoLists: mongodb.ShardingInstanceMongoListArray{
				&mongodb.ShardingInstanceMongoListArgs{
					NodeClass: pulumi.String("dds.mongos.mid"),
				},
				&mongodb.ShardingInstanceMongoListArgs{
					NodeClass: pulumi.String("dds.mongos.mid"),
				},
			},
		})
		if err != nil {
			return err
		}
		_, err = mongodb.NewShardingNetworkPublicAddress(ctx, "example", &mongodb.ShardingNetworkPublicAddressArgs{
			DbInstanceId: defaultShardingInstance.ID(),
			NodeId: defaultShardingInstance.MongoLists.ApplyT(func(mongoLists []mongodb.ShardingInstanceMongoList) (*string, error) {
				return &mongoLists[0].NodeId, nil
			}).(pulumi.StringPtrOutput),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

MongoDB Sharding Network Public Address can be imported using the id, e.g.

```sh $ pulumi import alicloud:mongodb/shardingNetworkPublicAddress:ShardingNetworkPublicAddress example <db_instance_id>:<node_id> ```

func GetShardingNetworkPublicAddress added in v3.13.0

func GetShardingNetworkPublicAddress(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *ShardingNetworkPublicAddressState, opts ...pulumi.ResourceOption) (*ShardingNetworkPublicAddress, error)

GetShardingNetworkPublicAddress gets an existing ShardingNetworkPublicAddress 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 NewShardingNetworkPublicAddress added in v3.13.0

func NewShardingNetworkPublicAddress(ctx *pulumi.Context,
	name string, args *ShardingNetworkPublicAddressArgs, opts ...pulumi.ResourceOption) (*ShardingNetworkPublicAddress, error)

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

func (*ShardingNetworkPublicAddress) ElementType added in v3.13.0

func (*ShardingNetworkPublicAddress) ElementType() reflect.Type

func (*ShardingNetworkPublicAddress) ToShardingNetworkPublicAddressOutput added in v3.13.0

func (i *ShardingNetworkPublicAddress) ToShardingNetworkPublicAddressOutput() ShardingNetworkPublicAddressOutput

func (*ShardingNetworkPublicAddress) ToShardingNetworkPublicAddressOutputWithContext added in v3.13.0

func (i *ShardingNetworkPublicAddress) ToShardingNetworkPublicAddressOutputWithContext(ctx context.Context) ShardingNetworkPublicAddressOutput

type ShardingNetworkPublicAddressArgs added in v3.13.0

type ShardingNetworkPublicAddressArgs struct {
	// The ID of the instance.
	DbInstanceId pulumi.StringInput
	// The ID of the `mongos`, `shard`, or `Configserver` node in the sharded cluster instance.
	NodeId pulumi.StringInput
}

The set of arguments for constructing a ShardingNetworkPublicAddress resource.

func (ShardingNetworkPublicAddressArgs) ElementType added in v3.13.0

type ShardingNetworkPublicAddressArray added in v3.13.0

type ShardingNetworkPublicAddressArray []ShardingNetworkPublicAddressInput

func (ShardingNetworkPublicAddressArray) ElementType added in v3.13.0

func (ShardingNetworkPublicAddressArray) ToShardingNetworkPublicAddressArrayOutput added in v3.13.0

func (i ShardingNetworkPublicAddressArray) ToShardingNetworkPublicAddressArrayOutput() ShardingNetworkPublicAddressArrayOutput

func (ShardingNetworkPublicAddressArray) ToShardingNetworkPublicAddressArrayOutputWithContext added in v3.13.0

func (i ShardingNetworkPublicAddressArray) ToShardingNetworkPublicAddressArrayOutputWithContext(ctx context.Context) ShardingNetworkPublicAddressArrayOutput

type ShardingNetworkPublicAddressArrayInput added in v3.13.0

type ShardingNetworkPublicAddressArrayInput interface {
	pulumi.Input

	ToShardingNetworkPublicAddressArrayOutput() ShardingNetworkPublicAddressArrayOutput
	ToShardingNetworkPublicAddressArrayOutputWithContext(context.Context) ShardingNetworkPublicAddressArrayOutput
}

ShardingNetworkPublicAddressArrayInput is an input type that accepts ShardingNetworkPublicAddressArray and ShardingNetworkPublicAddressArrayOutput values. You can construct a concrete instance of `ShardingNetworkPublicAddressArrayInput` via:

ShardingNetworkPublicAddressArray{ ShardingNetworkPublicAddressArgs{...} }

type ShardingNetworkPublicAddressArrayOutput added in v3.13.0

type ShardingNetworkPublicAddressArrayOutput struct{ *pulumi.OutputState }

func (ShardingNetworkPublicAddressArrayOutput) ElementType added in v3.13.0

func (ShardingNetworkPublicAddressArrayOutput) Index added in v3.13.0

func (ShardingNetworkPublicAddressArrayOutput) ToShardingNetworkPublicAddressArrayOutput added in v3.13.0

func (o ShardingNetworkPublicAddressArrayOutput) ToShardingNetworkPublicAddressArrayOutput() ShardingNetworkPublicAddressArrayOutput

func (ShardingNetworkPublicAddressArrayOutput) ToShardingNetworkPublicAddressArrayOutputWithContext added in v3.13.0

func (o ShardingNetworkPublicAddressArrayOutput) ToShardingNetworkPublicAddressArrayOutputWithContext(ctx context.Context) ShardingNetworkPublicAddressArrayOutput

type ShardingNetworkPublicAddressInput added in v3.13.0

type ShardingNetworkPublicAddressInput interface {
	pulumi.Input

	ToShardingNetworkPublicAddressOutput() ShardingNetworkPublicAddressOutput
	ToShardingNetworkPublicAddressOutputWithContext(ctx context.Context) ShardingNetworkPublicAddressOutput
}

type ShardingNetworkPublicAddressMap added in v3.13.0

type ShardingNetworkPublicAddressMap map[string]ShardingNetworkPublicAddressInput

func (ShardingNetworkPublicAddressMap) ElementType added in v3.13.0

func (ShardingNetworkPublicAddressMap) ToShardingNetworkPublicAddressMapOutput added in v3.13.0

func (i ShardingNetworkPublicAddressMap) ToShardingNetworkPublicAddressMapOutput() ShardingNetworkPublicAddressMapOutput

func (ShardingNetworkPublicAddressMap) ToShardingNetworkPublicAddressMapOutputWithContext added in v3.13.0

func (i ShardingNetworkPublicAddressMap) ToShardingNetworkPublicAddressMapOutputWithContext(ctx context.Context) ShardingNetworkPublicAddressMapOutput

type ShardingNetworkPublicAddressMapInput added in v3.13.0

type ShardingNetworkPublicAddressMapInput interface {
	pulumi.Input

	ToShardingNetworkPublicAddressMapOutput() ShardingNetworkPublicAddressMapOutput
	ToShardingNetworkPublicAddressMapOutputWithContext(context.Context) ShardingNetworkPublicAddressMapOutput
}

ShardingNetworkPublicAddressMapInput is an input type that accepts ShardingNetworkPublicAddressMap and ShardingNetworkPublicAddressMapOutput values. You can construct a concrete instance of `ShardingNetworkPublicAddressMapInput` via:

ShardingNetworkPublicAddressMap{ "key": ShardingNetworkPublicAddressArgs{...} }

type ShardingNetworkPublicAddressMapOutput added in v3.13.0

type ShardingNetworkPublicAddressMapOutput struct{ *pulumi.OutputState }

func (ShardingNetworkPublicAddressMapOutput) ElementType added in v3.13.0

func (ShardingNetworkPublicAddressMapOutput) MapIndex added in v3.13.0

func (ShardingNetworkPublicAddressMapOutput) ToShardingNetworkPublicAddressMapOutput added in v3.13.0

func (o ShardingNetworkPublicAddressMapOutput) ToShardingNetworkPublicAddressMapOutput() ShardingNetworkPublicAddressMapOutput

func (ShardingNetworkPublicAddressMapOutput) ToShardingNetworkPublicAddressMapOutputWithContext added in v3.13.0

func (o ShardingNetworkPublicAddressMapOutput) ToShardingNetworkPublicAddressMapOutputWithContext(ctx context.Context) ShardingNetworkPublicAddressMapOutput

type ShardingNetworkPublicAddressNetworkAddress added in v3.13.0

type ShardingNetworkPublicAddressNetworkAddress struct {
	// The remaining duration of the classic network address. Unit: `seconds`.
	ExpiredTime *string `pulumi:"expiredTime"`
	// The IP address of the instance.
	IpAddress *string `pulumi:"ipAddress"`
	// The endpoint of the instance.
	NetworkAddress *string `pulumi:"networkAddress"`
	// The network type.
	NetworkType *string `pulumi:"networkType"`
	// The ID of the `mongos`, `shard`, or `Configserver` node in the sharded cluster instance.
	NodeId *string `pulumi:"nodeId"`
	// The type of the node.
	NodeType *string `pulumi:"nodeType"`
	// The port number.
	Port *string `pulumi:"port"`
	// The role of the node.
	Role *string `pulumi:"role"`
	// The ID of the VPC.
	VpcId *string `pulumi:"vpcId"`
	// The vSwitch ID of the VPC.
	VswitchId *string `pulumi:"vswitchId"`
}

type ShardingNetworkPublicAddressNetworkAddressArgs added in v3.13.0

type ShardingNetworkPublicAddressNetworkAddressArgs struct {
	// The remaining duration of the classic network address. Unit: `seconds`.
	ExpiredTime pulumi.StringPtrInput `pulumi:"expiredTime"`
	// The IP address of the instance.
	IpAddress pulumi.StringPtrInput `pulumi:"ipAddress"`
	// The endpoint of the instance.
	NetworkAddress pulumi.StringPtrInput `pulumi:"networkAddress"`
	// The network type.
	NetworkType pulumi.StringPtrInput `pulumi:"networkType"`
	// The ID of the `mongos`, `shard`, or `Configserver` node in the sharded cluster instance.
	NodeId pulumi.StringPtrInput `pulumi:"nodeId"`
	// The type of the node.
	NodeType pulumi.StringPtrInput `pulumi:"nodeType"`
	// The port number.
	Port pulumi.StringPtrInput `pulumi:"port"`
	// The role of the node.
	Role pulumi.StringPtrInput `pulumi:"role"`
	// The ID of the VPC.
	VpcId pulumi.StringPtrInput `pulumi:"vpcId"`
	// The vSwitch ID of the VPC.
	VswitchId pulumi.StringPtrInput `pulumi:"vswitchId"`
}

func (ShardingNetworkPublicAddressNetworkAddressArgs) ElementType added in v3.13.0

func (ShardingNetworkPublicAddressNetworkAddressArgs) ToShardingNetworkPublicAddressNetworkAddressOutput added in v3.13.0

func (i ShardingNetworkPublicAddressNetworkAddressArgs) ToShardingNetworkPublicAddressNetworkAddressOutput() ShardingNetworkPublicAddressNetworkAddressOutput

func (ShardingNetworkPublicAddressNetworkAddressArgs) ToShardingNetworkPublicAddressNetworkAddressOutputWithContext added in v3.13.0

func (i ShardingNetworkPublicAddressNetworkAddressArgs) ToShardingNetworkPublicAddressNetworkAddressOutputWithContext(ctx context.Context) ShardingNetworkPublicAddressNetworkAddressOutput

type ShardingNetworkPublicAddressNetworkAddressArray added in v3.13.0

type ShardingNetworkPublicAddressNetworkAddressArray []ShardingNetworkPublicAddressNetworkAddressInput

func (ShardingNetworkPublicAddressNetworkAddressArray) ElementType added in v3.13.0

func (ShardingNetworkPublicAddressNetworkAddressArray) ToShardingNetworkPublicAddressNetworkAddressArrayOutput added in v3.13.0

func (i ShardingNetworkPublicAddressNetworkAddressArray) ToShardingNetworkPublicAddressNetworkAddressArrayOutput() ShardingNetworkPublicAddressNetworkAddressArrayOutput

func (ShardingNetworkPublicAddressNetworkAddressArray) ToShardingNetworkPublicAddressNetworkAddressArrayOutputWithContext added in v3.13.0

func (i ShardingNetworkPublicAddressNetworkAddressArray) ToShardingNetworkPublicAddressNetworkAddressArrayOutputWithContext(ctx context.Context) ShardingNetworkPublicAddressNetworkAddressArrayOutput

type ShardingNetworkPublicAddressNetworkAddressArrayInput added in v3.13.0

type ShardingNetworkPublicAddressNetworkAddressArrayInput interface {
	pulumi.Input

	ToShardingNetworkPublicAddressNetworkAddressArrayOutput() ShardingNetworkPublicAddressNetworkAddressArrayOutput
	ToShardingNetworkPublicAddressNetworkAddressArrayOutputWithContext(context.Context) ShardingNetworkPublicAddressNetworkAddressArrayOutput
}

ShardingNetworkPublicAddressNetworkAddressArrayInput is an input type that accepts ShardingNetworkPublicAddressNetworkAddressArray and ShardingNetworkPublicAddressNetworkAddressArrayOutput values. You can construct a concrete instance of `ShardingNetworkPublicAddressNetworkAddressArrayInput` via:

ShardingNetworkPublicAddressNetworkAddressArray{ ShardingNetworkPublicAddressNetworkAddressArgs{...} }

type ShardingNetworkPublicAddressNetworkAddressArrayOutput added in v3.13.0

type ShardingNetworkPublicAddressNetworkAddressArrayOutput struct{ *pulumi.OutputState }

func (ShardingNetworkPublicAddressNetworkAddressArrayOutput) ElementType added in v3.13.0

func (ShardingNetworkPublicAddressNetworkAddressArrayOutput) Index added in v3.13.0

func (ShardingNetworkPublicAddressNetworkAddressArrayOutput) ToShardingNetworkPublicAddressNetworkAddressArrayOutput added in v3.13.0

func (ShardingNetworkPublicAddressNetworkAddressArrayOutput) ToShardingNetworkPublicAddressNetworkAddressArrayOutputWithContext added in v3.13.0

func (o ShardingNetworkPublicAddressNetworkAddressArrayOutput) ToShardingNetworkPublicAddressNetworkAddressArrayOutputWithContext(ctx context.Context) ShardingNetworkPublicAddressNetworkAddressArrayOutput

type ShardingNetworkPublicAddressNetworkAddressInput added in v3.13.0

type ShardingNetworkPublicAddressNetworkAddressInput interface {
	pulumi.Input

	ToShardingNetworkPublicAddressNetworkAddressOutput() ShardingNetworkPublicAddressNetworkAddressOutput
	ToShardingNetworkPublicAddressNetworkAddressOutputWithContext(context.Context) ShardingNetworkPublicAddressNetworkAddressOutput
}

ShardingNetworkPublicAddressNetworkAddressInput is an input type that accepts ShardingNetworkPublicAddressNetworkAddressArgs and ShardingNetworkPublicAddressNetworkAddressOutput values. You can construct a concrete instance of `ShardingNetworkPublicAddressNetworkAddressInput` via:

ShardingNetworkPublicAddressNetworkAddressArgs{...}

type ShardingNetworkPublicAddressNetworkAddressOutput added in v3.13.0

type ShardingNetworkPublicAddressNetworkAddressOutput struct{ *pulumi.OutputState }

func (ShardingNetworkPublicAddressNetworkAddressOutput) ElementType added in v3.13.0

func (ShardingNetworkPublicAddressNetworkAddressOutput) ExpiredTime added in v3.13.0

The remaining duration of the classic network address. Unit: `seconds`.

func (ShardingNetworkPublicAddressNetworkAddressOutput) IpAddress added in v3.13.0

The IP address of the instance.

func (ShardingNetworkPublicAddressNetworkAddressOutput) NetworkAddress added in v3.13.0

The endpoint of the instance.

func (ShardingNetworkPublicAddressNetworkAddressOutput) NetworkType added in v3.13.0

The network type.

func (ShardingNetworkPublicAddressNetworkAddressOutput) NodeId added in v3.13.0

The ID of the `mongos`, `shard`, or `Configserver` node in the sharded cluster instance.

func (ShardingNetworkPublicAddressNetworkAddressOutput) NodeType added in v3.13.0

The type of the node.

func (ShardingNetworkPublicAddressNetworkAddressOutput) Port added in v3.13.0

The port number.

func (ShardingNetworkPublicAddressNetworkAddressOutput) Role added in v3.13.0

The role of the node.

func (ShardingNetworkPublicAddressNetworkAddressOutput) ToShardingNetworkPublicAddressNetworkAddressOutput added in v3.13.0

func (o ShardingNetworkPublicAddressNetworkAddressOutput) ToShardingNetworkPublicAddressNetworkAddressOutput() ShardingNetworkPublicAddressNetworkAddressOutput

func (ShardingNetworkPublicAddressNetworkAddressOutput) ToShardingNetworkPublicAddressNetworkAddressOutputWithContext added in v3.13.0

func (o ShardingNetworkPublicAddressNetworkAddressOutput) ToShardingNetworkPublicAddressNetworkAddressOutputWithContext(ctx context.Context) ShardingNetworkPublicAddressNetworkAddressOutput

func (ShardingNetworkPublicAddressNetworkAddressOutput) VpcId added in v3.13.0

The ID of the VPC.

func (ShardingNetworkPublicAddressNetworkAddressOutput) VswitchId added in v3.13.0

The vSwitch ID of the VPC.

type ShardingNetworkPublicAddressOutput added in v3.13.0

type ShardingNetworkPublicAddressOutput struct{ *pulumi.OutputState }

func (ShardingNetworkPublicAddressOutput) DbInstanceId added in v3.27.0

The ID of the instance.

func (ShardingNetworkPublicAddressOutput) ElementType added in v3.13.0

func (ShardingNetworkPublicAddressOutput) NetworkAddresses added in v3.27.0

The endpoint of the instance.

func (ShardingNetworkPublicAddressOutput) NodeId added in v3.27.0

The ID of the `mongos`, `shard`, or `Configserver` node in the sharded cluster instance.

func (ShardingNetworkPublicAddressOutput) ToShardingNetworkPublicAddressOutput added in v3.13.0

func (o ShardingNetworkPublicAddressOutput) ToShardingNetworkPublicAddressOutput() ShardingNetworkPublicAddressOutput

func (ShardingNetworkPublicAddressOutput) ToShardingNetworkPublicAddressOutputWithContext added in v3.13.0

func (o ShardingNetworkPublicAddressOutput) ToShardingNetworkPublicAddressOutputWithContext(ctx context.Context) ShardingNetworkPublicAddressOutput

type ShardingNetworkPublicAddressState added in v3.13.0

type ShardingNetworkPublicAddressState struct {
	// The ID of the instance.
	DbInstanceId pulumi.StringPtrInput
	// The endpoint of the instance.
	NetworkAddresses ShardingNetworkPublicAddressNetworkAddressArrayInput
	// The ID of the `mongos`, `shard`, or `Configserver` node in the sharded cluster instance.
	NodeId pulumi.StringPtrInput
}

func (ShardingNetworkPublicAddressState) ElementType added in v3.13.0

Jump to

Keyboard shortcuts

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