mongodb

package
v0.0.1 Latest Latest
Warning

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

Go to latest
Published: Dec 21, 2022 License: Apache-2.0 Imports: 11 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func PkgVersion added in v0.0.1

func PkgVersion() (semver.Version, error)

PkgVersion uses reflection to determine the version of the current package. If a version cannot be determined, v1 will be assumed. The second return value is always nil.

Types

type Account

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 in v1.148.0+.

## 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

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

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

func (*Account) ElementType() reflect.Type

func (*Account) ToAccountOutput

func (i *Account) ToAccountOutput() AccountOutput

func (*Account) ToAccountOutputWithContext

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

type AccountArgs

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

func (AccountArgs) ElementType() reflect.Type

type AccountArray

type AccountArray []AccountInput

func (AccountArray) ElementType

func (AccountArray) ElementType() reflect.Type

func (AccountArray) ToAccountArrayOutput

func (i AccountArray) ToAccountArrayOutput() AccountArrayOutput

func (AccountArray) ToAccountArrayOutputWithContext

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

type AccountArrayInput

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

type AccountArrayOutput struct{ *pulumi.OutputState }

func (AccountArrayOutput) ElementType

func (AccountArrayOutput) ElementType() reflect.Type

func (AccountArrayOutput) Index

func (AccountArrayOutput) ToAccountArrayOutput

func (o AccountArrayOutput) ToAccountArrayOutput() AccountArrayOutput

func (AccountArrayOutput) ToAccountArrayOutputWithContext

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

type AccountInput

type AccountInput interface {
	pulumi.Input

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

type AccountMap

type AccountMap map[string]AccountInput

func (AccountMap) ElementType

func (AccountMap) ElementType() reflect.Type

func (AccountMap) ToAccountMapOutput

func (i AccountMap) ToAccountMapOutput() AccountMapOutput

func (AccountMap) ToAccountMapOutputWithContext

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

type AccountMapInput

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

type AccountMapOutput struct{ *pulumi.OutputState }

func (AccountMapOutput) ElementType

func (AccountMapOutput) ElementType() reflect.Type

func (AccountMapOutput) MapIndex

func (AccountMapOutput) ToAccountMapOutput

func (o AccountMapOutput) ToAccountMapOutput() AccountMapOutput

func (AccountMapOutput) ToAccountMapOutputWithContext

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

type AccountOutput

type AccountOutput struct{ *pulumi.OutputState }

func (AccountOutput) AccountDescription

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

func (o AccountOutput) AccountName() pulumi.StringOutput

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

func (AccountOutput) AccountPassword

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

func (AccountOutput) ElementType() reflect.Type

func (AccountOutput) InstanceId

func (o AccountOutput) InstanceId() pulumi.StringOutput

The ID of the instance.

func (AccountOutput) Status

func (o AccountOutput) Status() pulumi.StringOutput

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

func (AccountOutput) ToAccountOutput

func (o AccountOutput) ToAccountOutput() AccountOutput

func (AccountOutput) ToAccountOutputWithContext

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

type AccountState

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

func (AccountState) ElementType() reflect.Type

type AuditPolicy

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 in v1.148.0+.

## 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

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

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

func (*AuditPolicy) ElementType() reflect.Type

func (*AuditPolicy) ToAuditPolicyOutput

func (i *AuditPolicy) ToAuditPolicyOutput() AuditPolicyOutput

func (*AuditPolicy) ToAuditPolicyOutputWithContext

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

type AuditPolicyArgs

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

func (AuditPolicyArgs) ElementType() reflect.Type

type AuditPolicyArray

type AuditPolicyArray []AuditPolicyInput

func (AuditPolicyArray) ElementType

func (AuditPolicyArray) ElementType() reflect.Type

func (AuditPolicyArray) ToAuditPolicyArrayOutput

func (i AuditPolicyArray) ToAuditPolicyArrayOutput() AuditPolicyArrayOutput

func (AuditPolicyArray) ToAuditPolicyArrayOutputWithContext

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

type AuditPolicyArrayInput

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

type AuditPolicyArrayOutput struct{ *pulumi.OutputState }

func (AuditPolicyArrayOutput) ElementType

func (AuditPolicyArrayOutput) ElementType() reflect.Type

func (AuditPolicyArrayOutput) Index

func (AuditPolicyArrayOutput) ToAuditPolicyArrayOutput

func (o AuditPolicyArrayOutput) ToAuditPolicyArrayOutput() AuditPolicyArrayOutput

func (AuditPolicyArrayOutput) ToAuditPolicyArrayOutputWithContext

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

type AuditPolicyInput

type AuditPolicyInput interface {
	pulumi.Input

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

type AuditPolicyMap

type AuditPolicyMap map[string]AuditPolicyInput

func (AuditPolicyMap) ElementType

func (AuditPolicyMap) ElementType() reflect.Type

func (AuditPolicyMap) ToAuditPolicyMapOutput

func (i AuditPolicyMap) ToAuditPolicyMapOutput() AuditPolicyMapOutput

func (AuditPolicyMap) ToAuditPolicyMapOutputWithContext

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

type AuditPolicyMapInput

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

type AuditPolicyMapOutput struct{ *pulumi.OutputState }

func (AuditPolicyMapOutput) ElementType

func (AuditPolicyMapOutput) ElementType() reflect.Type

func (AuditPolicyMapOutput) MapIndex

func (AuditPolicyMapOutput) ToAuditPolicyMapOutput

func (o AuditPolicyMapOutput) ToAuditPolicyMapOutput() AuditPolicyMapOutput

func (AuditPolicyMapOutput) ToAuditPolicyMapOutputWithContext

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

type AuditPolicyOutput

type AuditPolicyOutput struct{ *pulumi.OutputState }

func (AuditPolicyOutput) AuditStatus

func (o AuditPolicyOutput) AuditStatus() pulumi.StringOutput

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

func (AuditPolicyOutput) DbInstanceId

func (o AuditPolicyOutput) DbInstanceId() pulumi.StringOutput

The ID of the instance.

func (AuditPolicyOutput) ElementType

func (AuditPolicyOutput) ElementType() reflect.Type

func (AuditPolicyOutput) StoragePeriod

func (o AuditPolicyOutput) StoragePeriod() pulumi.IntPtrOutput

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

func (AuditPolicyOutput) ToAuditPolicyOutput

func (o AuditPolicyOutput) ToAuditPolicyOutput() AuditPolicyOutput

func (AuditPolicyOutput) ToAuditPolicyOutputWithContext

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

type AuditPolicyState

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

func (AuditPolicyState) ElementType() reflect.Type

type GetAccountsAccount

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

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

func (GetAccountsAccountArgs) ElementType() reflect.Type

func (GetAccountsAccountArgs) ToGetAccountsAccountOutput

func (i GetAccountsAccountArgs) ToGetAccountsAccountOutput() GetAccountsAccountOutput

func (GetAccountsAccountArgs) ToGetAccountsAccountOutputWithContext

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

type GetAccountsAccountArray

type GetAccountsAccountArray []GetAccountsAccountInput

func (GetAccountsAccountArray) ElementType

func (GetAccountsAccountArray) ElementType() reflect.Type

func (GetAccountsAccountArray) ToGetAccountsAccountArrayOutput

func (i GetAccountsAccountArray) ToGetAccountsAccountArrayOutput() GetAccountsAccountArrayOutput

func (GetAccountsAccountArray) ToGetAccountsAccountArrayOutputWithContext

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

type GetAccountsAccountArrayInput

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

type GetAccountsAccountArrayOutput struct{ *pulumi.OutputState }

func (GetAccountsAccountArrayOutput) ElementType

func (GetAccountsAccountArrayOutput) Index

func (GetAccountsAccountArrayOutput) ToGetAccountsAccountArrayOutput

func (o GetAccountsAccountArrayOutput) ToGetAccountsAccountArrayOutput() GetAccountsAccountArrayOutput

func (GetAccountsAccountArrayOutput) ToGetAccountsAccountArrayOutputWithContext

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

type GetAccountsAccountInput

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

type GetAccountsAccountOutput struct{ *pulumi.OutputState }

func (GetAccountsAccountOutput) AccountDescription

func (o GetAccountsAccountOutput) AccountDescription() pulumi.StringOutput

The description of the account.

func (GetAccountsAccountOutput) AccountName

The name of the account.

func (GetAccountsAccountOutput) CharacterType

func (o GetAccountsAccountOutput) CharacterType() pulumi.StringOutput

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

func (GetAccountsAccountOutput) ElementType

func (GetAccountsAccountOutput) ElementType() reflect.Type

func (GetAccountsAccountOutput) Id

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

func (GetAccountsAccountOutput) InstanceId

The id of the instance to which the account belongs.

func (GetAccountsAccountOutput) Status

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

func (GetAccountsAccountOutput) ToGetAccountsAccountOutput

func (o GetAccountsAccountOutput) ToGetAccountsAccountOutput() GetAccountsAccountOutput

func (GetAccountsAccountOutput) ToGetAccountsAccountOutputWithContext

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

type GetAccountsArgs

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"`
	OutputFile *string `pulumi:"outputFile"`
}

A collection of arguments for invoking getAccounts.

type GetAccountsOutputArgs

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"`
	OutputFile pulumi.StringPtrInput `pulumi:"outputFile"`
}

A collection of arguments for invoking getAccounts.

func (GetAccountsOutputArgs) ElementType

func (GetAccountsOutputArgs) ElementType() reflect.Type

type GetAccountsResult

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

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/go/alicloud/mongodb"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
"github.com/rhysmdnz/pulumi-alicloud/sdk/go/alicloud/mongodb"

)

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

type GetAccountsResultOutput struct{ *pulumi.OutputState }

A collection of values returned by getAccounts.

func (GetAccountsResultOutput) AccountName

func (GetAccountsResultOutput) Accounts

func (GetAccountsResultOutput) ElementType

func (GetAccountsResultOutput) ElementType() reflect.Type

func (GetAccountsResultOutput) Id

The provider-assigned unique ID for this managed resource.

func (GetAccountsResultOutput) InstanceId

func (GetAccountsResultOutput) OutputFile

func (GetAccountsResultOutput) ToGetAccountsResultOutput

func (o GetAccountsResultOutput) ToGetAccountsResultOutput() GetAccountsResultOutput

func (GetAccountsResultOutput) ToGetAccountsResultOutputWithContext

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

type GetAuditPoliciesArgs

type GetAuditPoliciesArgs struct {
	// The ID of the instance.
	DbInstanceId string  `pulumi:"dbInstanceId"`
	OutputFile   *string `pulumi:"outputFile"`
}

A collection of arguments for invoking getAuditPolicies.

type GetAuditPoliciesOutputArgs

type GetAuditPoliciesOutputArgs struct {
	// The ID of the instance.
	DbInstanceId pulumi.StringInput    `pulumi:"dbInstanceId"`
	OutputFile   pulumi.StringPtrInput `pulumi:"outputFile"`
}

A collection of arguments for invoking getAuditPolicies.

func (GetAuditPoliciesOutputArgs) ElementType

func (GetAuditPoliciesOutputArgs) ElementType() reflect.Type

type GetAuditPoliciesPolicy

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

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

func (GetAuditPoliciesPolicyArgs) ElementType() reflect.Type

func (GetAuditPoliciesPolicyArgs) ToGetAuditPoliciesPolicyOutput

func (i GetAuditPoliciesPolicyArgs) ToGetAuditPoliciesPolicyOutput() GetAuditPoliciesPolicyOutput

func (GetAuditPoliciesPolicyArgs) ToGetAuditPoliciesPolicyOutputWithContext

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

type GetAuditPoliciesPolicyArray

type GetAuditPoliciesPolicyArray []GetAuditPoliciesPolicyInput

func (GetAuditPoliciesPolicyArray) ElementType

func (GetAuditPoliciesPolicyArray) ToGetAuditPoliciesPolicyArrayOutput

func (i GetAuditPoliciesPolicyArray) ToGetAuditPoliciesPolicyArrayOutput() GetAuditPoliciesPolicyArrayOutput

func (GetAuditPoliciesPolicyArray) ToGetAuditPoliciesPolicyArrayOutputWithContext

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

type GetAuditPoliciesPolicyArrayInput

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

type GetAuditPoliciesPolicyArrayOutput struct{ *pulumi.OutputState }

func (GetAuditPoliciesPolicyArrayOutput) ElementType

func (GetAuditPoliciesPolicyArrayOutput) Index

func (GetAuditPoliciesPolicyArrayOutput) ToGetAuditPoliciesPolicyArrayOutput

func (o GetAuditPoliciesPolicyArrayOutput) ToGetAuditPoliciesPolicyArrayOutput() GetAuditPoliciesPolicyArrayOutput

func (GetAuditPoliciesPolicyArrayOutput) ToGetAuditPoliciesPolicyArrayOutputWithContext

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

type GetAuditPoliciesPolicyInput

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

type GetAuditPoliciesPolicyOutput struct{ *pulumi.OutputState }

func (GetAuditPoliciesPolicyOutput) AuditStatus

The status of the log audit feature.

func (GetAuditPoliciesPolicyOutput) DbInstanceId

The ID of the instance.

func (GetAuditPoliciesPolicyOutput) ElementType

func (GetAuditPoliciesPolicyOutput) Id

The ID of the Audit Policy.

func (GetAuditPoliciesPolicyOutput) ToGetAuditPoliciesPolicyOutput

func (o GetAuditPoliciesPolicyOutput) ToGetAuditPoliciesPolicyOutput() GetAuditPoliciesPolicyOutput

func (GetAuditPoliciesPolicyOutput) ToGetAuditPoliciesPolicyOutputWithContext

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

type GetAuditPoliciesResult

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

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/go/alicloud/mongodb"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
"github.com/rhysmdnz/pulumi-alicloud/sdk/go/alicloud/mongodb"

)

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

type GetAuditPoliciesResultOutput struct{ *pulumi.OutputState }

A collection of values returned by getAuditPolicies.

func (GetAuditPoliciesResultOutput) DbInstanceId

func (GetAuditPoliciesResultOutput) ElementType

func (GetAuditPoliciesResultOutput) Id

The provider-assigned unique ID for this managed resource.

func (GetAuditPoliciesResultOutput) OutputFile

func (GetAuditPoliciesResultOutput) Policies

func (GetAuditPoliciesResultOutput) ToGetAuditPoliciesResultOutput

func (o GetAuditPoliciesResultOutput) ToGetAuditPoliciesResultOutput() GetAuditPoliciesResultOutput

func (GetAuditPoliciesResultOutput) ToGetAuditPoliciesResultOutputWithContext

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"`
	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

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"`
	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

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/go/alicloud/mongodb"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
"github.com/rhysmdnz/pulumi-alicloud/sdk/go/alicloud/mongodb"

)

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

```

type GetInstancesResultOutput

type GetInstancesResultOutput struct{ *pulumi.OutputState }

A collection of values returned by getInstances.

func (GetInstancesResultOutput) AvailabilityZone

func (o GetInstancesResultOutput) AvailabilityZone() pulumi.StringPtrOutput

Instance availability zone.

func (GetInstancesResultOutput) ElementType

func (GetInstancesResultOutput) ElementType() reflect.Type

func (GetInstancesResultOutput) Id

The provider-assigned unique ID for this managed resource.

func (GetInstancesResultOutput) Ids

The ids list of MongoDB instances

func (GetInstancesResultOutput) InstanceClass

Sizing of the MongoDB instance.

func (GetInstancesResultOutput) InstanceType

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

func (GetInstancesResultOutput) Instances

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

func (GetInstancesResultOutput) NameRegex

func (GetInstancesResultOutput) Names

The names list of MongoDB instances

func (GetInstancesResultOutput) OutputFile

func (GetInstancesResultOutput) Tags

func (GetInstancesResultOutput) ToGetInstancesResultOutput

func (o GetInstancesResultOutput) ToGetInstancesResultOutput() GetInstancesResultOutput

func (GetInstancesResultOutput) ToGetInstancesResultOutputWithContext

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

type GetServerlessInstancesArgs

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.
	NetworkType *string `pulumi:"networkType"`
	OutputFile  *string `pulumi:"outputFile"`
	// The ID of the resource group.
	ResourceGroupId *string `pulumi:"resourceGroupId"`
	// The status of the instance.
	Status *string `pulumi:"status"`
	// The tag of 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

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

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

func (GetServerlessInstancesInstanceArgs) ToGetServerlessInstancesInstanceOutput

func (i GetServerlessInstancesInstanceArgs) ToGetServerlessInstancesInstanceOutput() GetServerlessInstancesInstanceOutput

func (GetServerlessInstancesInstanceArgs) ToGetServerlessInstancesInstanceOutputWithContext

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

type GetServerlessInstancesInstanceArray

type GetServerlessInstancesInstanceArray []GetServerlessInstancesInstanceInput

func (GetServerlessInstancesInstanceArray) ElementType

func (GetServerlessInstancesInstanceArray) ToGetServerlessInstancesInstanceArrayOutput

func (i GetServerlessInstancesInstanceArray) ToGetServerlessInstancesInstanceArrayOutput() GetServerlessInstancesInstanceArrayOutput

func (GetServerlessInstancesInstanceArray) ToGetServerlessInstancesInstanceArrayOutputWithContext

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

type GetServerlessInstancesInstanceArrayInput

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

type GetServerlessInstancesInstanceArrayOutput struct{ *pulumi.OutputState }

func (GetServerlessInstancesInstanceArrayOutput) ElementType

func (GetServerlessInstancesInstanceArrayOutput) Index

func (GetServerlessInstancesInstanceArrayOutput) ToGetServerlessInstancesInstanceArrayOutput

func (o GetServerlessInstancesInstanceArrayOutput) ToGetServerlessInstancesInstanceArrayOutput() GetServerlessInstancesInstanceArrayOutput

func (GetServerlessInstancesInstanceArrayOutput) ToGetServerlessInstancesInstanceArrayOutputWithContext

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

type GetServerlessInstancesInstanceInput

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

type GetServerlessInstancesInstanceOutput struct{ *pulumi.OutputState }

func (GetServerlessInstancesInstanceOutput) CapacityUnit

The read/write throughput consumed by the instance.

func (GetServerlessInstancesInstanceOutput) DbInstanceClass

The db instance class.

func (GetServerlessInstancesInstanceOutput) DbInstanceDescription

func (o GetServerlessInstancesInstanceOutput) DbInstanceDescription() pulumi.StringOutput

The db instance description.

func (GetServerlessInstancesInstanceOutput) DbInstanceId

The db instance id.

func (GetServerlessInstancesInstanceOutput) DbInstanceReleaseProtection

func (o GetServerlessInstancesInstanceOutput) DbInstanceReleaseProtection() pulumi.BoolOutput

The db instance release protection.

func (GetServerlessInstancesInstanceOutput) DbInstanceStorage

The db instance storage.

func (GetServerlessInstancesInstanceOutput) ElementType

func (GetServerlessInstancesInstanceOutput) Engine

The database engine of the instance.

func (GetServerlessInstancesInstanceOutput) EngineVersion

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

func (GetServerlessInstancesInstanceOutput) ExpireTime

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

The ID of the Serverless Instance.

func (GetServerlessInstancesInstanceOutput) KindCode

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

func (GetServerlessInstancesInstanceOutput) LockMode

The locked status of the instance.

func (GetServerlessInstancesInstanceOutput) MaintainEndTime

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

func (GetServerlessInstancesInstanceOutput) MaintainStartTime

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

func (GetServerlessInstancesInstanceOutput) MaxConnections

Instance maximum connections.

func (GetServerlessInstancesInstanceOutput) MaxIops

The maximum IOPS of the instance.

func (GetServerlessInstancesInstanceOutput) NetworkType

The network type of the instance.

func (GetServerlessInstancesInstanceOutput) PaymentType

The Payment type of the instance.

func (GetServerlessInstancesInstanceOutput) ProtocolType

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

func (GetServerlessInstancesInstanceOutput) ResourceGroupId

The ID of the resource group.

func (GetServerlessInstancesInstanceOutput) SecurityIpGroups

The security ip list.

func (GetServerlessInstancesInstanceOutput) Status

The status of the instance.

func (GetServerlessInstancesInstanceOutput) StorageEngine

The storage engine used by the instance.

func (GetServerlessInstancesInstanceOutput) Tags

The tag of the resource.

func (GetServerlessInstancesInstanceOutput) ToGetServerlessInstancesInstanceOutput

func (o GetServerlessInstancesInstanceOutput) ToGetServerlessInstancesInstanceOutput() GetServerlessInstancesInstanceOutput

func (GetServerlessInstancesInstanceOutput) ToGetServerlessInstancesInstanceOutputWithContext

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

func (GetServerlessInstancesInstanceOutput) VpcAuthMode

Intranet secret free access mode.

func (GetServerlessInstancesInstanceOutput) VpcId

The ID of the VPC network.

func (GetServerlessInstancesInstanceOutput) VswitchId

The id of the vswitch.

func (GetServerlessInstancesInstanceOutput) ZoneId

The ID of the zone.

type GetServerlessInstancesInstanceSecurityIpGroup

type GetServerlessInstancesInstanceSecurityIpGroup struct {
	// The attribute of the IP whitelist. This parameter is empty by default.
	SecurityIpGroupAttribute string `pulumi:"securityIpGroupAttribute"`
	// The name of the IP whitelist.
	SecurityIpGroupName string `pulumi:"securityIpGroupName"`
	// The IP addresses in the whitelist.
	SecurityIpList string `pulumi:"securityIpList"`
}

type GetServerlessInstancesInstanceSecurityIpGroupArgs

type GetServerlessInstancesInstanceSecurityIpGroupArgs struct {
	// The attribute of the IP whitelist. This parameter is empty by default.
	SecurityIpGroupAttribute pulumi.StringInput `pulumi:"securityIpGroupAttribute"`
	// The name of the IP whitelist.
	SecurityIpGroupName pulumi.StringInput `pulumi:"securityIpGroupName"`
	// The IP addresses in the whitelist.
	SecurityIpList pulumi.StringInput `pulumi:"securityIpList"`
}

func (GetServerlessInstancesInstanceSecurityIpGroupArgs) ElementType

func (GetServerlessInstancesInstanceSecurityIpGroupArgs) ToGetServerlessInstancesInstanceSecurityIpGroupOutput

func (i GetServerlessInstancesInstanceSecurityIpGroupArgs) ToGetServerlessInstancesInstanceSecurityIpGroupOutput() GetServerlessInstancesInstanceSecurityIpGroupOutput

func (GetServerlessInstancesInstanceSecurityIpGroupArgs) ToGetServerlessInstancesInstanceSecurityIpGroupOutputWithContext

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

type GetServerlessInstancesInstanceSecurityIpGroupArray

type GetServerlessInstancesInstanceSecurityIpGroupArray []GetServerlessInstancesInstanceSecurityIpGroupInput

func (GetServerlessInstancesInstanceSecurityIpGroupArray) ElementType

func (GetServerlessInstancesInstanceSecurityIpGroupArray) ToGetServerlessInstancesInstanceSecurityIpGroupArrayOutput

func (i GetServerlessInstancesInstanceSecurityIpGroupArray) ToGetServerlessInstancesInstanceSecurityIpGroupArrayOutput() GetServerlessInstancesInstanceSecurityIpGroupArrayOutput

func (GetServerlessInstancesInstanceSecurityIpGroupArray) ToGetServerlessInstancesInstanceSecurityIpGroupArrayOutputWithContext

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

type GetServerlessInstancesInstanceSecurityIpGroupArrayInput

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

type GetServerlessInstancesInstanceSecurityIpGroupArrayOutput struct{ *pulumi.OutputState }

func (GetServerlessInstancesInstanceSecurityIpGroupArrayOutput) ElementType

func (GetServerlessInstancesInstanceSecurityIpGroupArrayOutput) Index

func (GetServerlessInstancesInstanceSecurityIpGroupArrayOutput) ToGetServerlessInstancesInstanceSecurityIpGroupArrayOutput

func (GetServerlessInstancesInstanceSecurityIpGroupArrayOutput) ToGetServerlessInstancesInstanceSecurityIpGroupArrayOutputWithContext

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

type GetServerlessInstancesInstanceSecurityIpGroupInput

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

type GetServerlessInstancesInstanceSecurityIpGroupOutput struct{ *pulumi.OutputState }

func (GetServerlessInstancesInstanceSecurityIpGroupOutput) ElementType

func (GetServerlessInstancesInstanceSecurityIpGroupOutput) SecurityIpGroupAttribute

The attribute of the IP whitelist. This parameter is empty by default.

func (GetServerlessInstancesInstanceSecurityIpGroupOutput) SecurityIpGroupName

The name of the IP whitelist.

func (GetServerlessInstancesInstanceSecurityIpGroupOutput) SecurityIpList

The IP addresses in the whitelist.

func (GetServerlessInstancesInstanceSecurityIpGroupOutput) ToGetServerlessInstancesInstanceSecurityIpGroupOutput

func (o GetServerlessInstancesInstanceSecurityIpGroupOutput) ToGetServerlessInstancesInstanceSecurityIpGroupOutput() GetServerlessInstancesInstanceSecurityIpGroupOutput

func (GetServerlessInstancesInstanceSecurityIpGroupOutput) ToGetServerlessInstancesInstanceSecurityIpGroupOutputWithContext

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

type GetServerlessInstancesOutputArgs

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.
	NetworkType pulumi.StringPtrInput `pulumi:"networkType"`
	OutputFile  pulumi.StringPtrInput `pulumi:"outputFile"`
	// The ID of the resource group.
	ResourceGroupId pulumi.StringPtrInput `pulumi:"resourceGroupId"`
	// The status of the instance.
	Status pulumi.StringPtrInput `pulumi:"status"`
	// The tag of 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

type GetServerlessInstancesResult

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

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/go/alicloud/mongodb"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
"github.com/rhysmdnz/pulumi-alicloud/sdk/go/alicloud/mongodb"

)

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

type GetServerlessInstancesResultOutput struct{ *pulumi.OutputState }

A collection of values returned by getServerlessInstances.

func (GetServerlessInstancesResultOutput) DbInstanceClass

func (GetServerlessInstancesResultOutput) DbInstanceDescription

func (o GetServerlessInstancesResultOutput) DbInstanceDescription() pulumi.StringPtrOutput

func (GetServerlessInstancesResultOutput) ElementType

func (GetServerlessInstancesResultOutput) EnableDetails

func (GetServerlessInstancesResultOutput) Id

The provider-assigned unique ID for this managed resource.

func (GetServerlessInstancesResultOutput) Ids

func (GetServerlessInstancesResultOutput) Instances

func (GetServerlessInstancesResultOutput) NetworkType

func (GetServerlessInstancesResultOutput) OutputFile

func (GetServerlessInstancesResultOutput) ResourceGroupId

func (GetServerlessInstancesResultOutput) Status

func (GetServerlessInstancesResultOutput) Tags

func (GetServerlessInstancesResultOutput) ToGetServerlessInstancesResultOutput

func (o GetServerlessInstancesResultOutput) ToGetServerlessInstancesResultOutput() GetServerlessInstancesResultOutput

func (GetServerlessInstancesResultOutput) ToGetServerlessInstancesResultOutputWithContext

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

func (GetServerlessInstancesResultOutput) VpcId

func (GetServerlessInstancesResultOutput) VswitchId

func (GetServerlessInstancesResultOutput) ZoneId

type GetShardingNetworkPrivateAddressesAddress

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

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

func (GetShardingNetworkPrivateAddressesAddressArgs) ToGetShardingNetworkPrivateAddressesAddressOutput

func (i GetShardingNetworkPrivateAddressesAddressArgs) ToGetShardingNetworkPrivateAddressesAddressOutput() GetShardingNetworkPrivateAddressesAddressOutput

func (GetShardingNetworkPrivateAddressesAddressArgs) ToGetShardingNetworkPrivateAddressesAddressOutputWithContext

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

type GetShardingNetworkPrivateAddressesAddressArray

type GetShardingNetworkPrivateAddressesAddressArray []GetShardingNetworkPrivateAddressesAddressInput

func (GetShardingNetworkPrivateAddressesAddressArray) ElementType

func (GetShardingNetworkPrivateAddressesAddressArray) ToGetShardingNetworkPrivateAddressesAddressArrayOutput

func (i GetShardingNetworkPrivateAddressesAddressArray) ToGetShardingNetworkPrivateAddressesAddressArrayOutput() GetShardingNetworkPrivateAddressesAddressArrayOutput

func (GetShardingNetworkPrivateAddressesAddressArray) ToGetShardingNetworkPrivateAddressesAddressArrayOutputWithContext

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

type GetShardingNetworkPrivateAddressesAddressArrayInput

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

type GetShardingNetworkPrivateAddressesAddressArrayOutput struct{ *pulumi.OutputState }

func (GetShardingNetworkPrivateAddressesAddressArrayOutput) ElementType

func (GetShardingNetworkPrivateAddressesAddressArrayOutput) Index

func (GetShardingNetworkPrivateAddressesAddressArrayOutput) ToGetShardingNetworkPrivateAddressesAddressArrayOutput

func (GetShardingNetworkPrivateAddressesAddressArrayOutput) ToGetShardingNetworkPrivateAddressesAddressArrayOutputWithContext

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

type GetShardingNetworkPrivateAddressesAddressInput

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

type GetShardingNetworkPrivateAddressesAddressOutput struct{ *pulumi.OutputState }

func (GetShardingNetworkPrivateAddressesAddressOutput) DbInstanceId

The db instance id.

func (GetShardingNetworkPrivateAddressesAddressOutput) ElementType

func (GetShardingNetworkPrivateAddressesAddressOutput) ExpiredTime

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

func (GetShardingNetworkPrivateAddressesAddressOutput) IpAddress

The IP address of the instance.

func (GetShardingNetworkPrivateAddressesAddressOutput) NetworkAddress

The endpoint of the instance.

func (GetShardingNetworkPrivateAddressesAddressOutput) NetworkType

The type of the network.

func (GetShardingNetworkPrivateAddressesAddressOutput) NodeId

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

func (GetShardingNetworkPrivateAddressesAddressOutput) NodeType

The type of the node.

func (GetShardingNetworkPrivateAddressesAddressOutput) Port

The port number.

func (GetShardingNetworkPrivateAddressesAddressOutput) Role

The role of the node.

func (GetShardingNetworkPrivateAddressesAddressOutput) ToGetShardingNetworkPrivateAddressesAddressOutput

func (o GetShardingNetworkPrivateAddressesAddressOutput) ToGetShardingNetworkPrivateAddressesAddressOutput() GetShardingNetworkPrivateAddressesAddressOutput

func (GetShardingNetworkPrivateAddressesAddressOutput) ToGetShardingNetworkPrivateAddressesAddressOutputWithContext

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

func (GetShardingNetworkPrivateAddressesAddressOutput) VpcId

The ID of the VPC.

func (GetShardingNetworkPrivateAddressesAddressOutput) VswitchId

The vSwitch ID of the VPC.

type GetShardingNetworkPrivateAddressesArgs

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"`
	OutputFile *string `pulumi:"outputFile"`
	// The role of the node.
	Role *string `pulumi:"role"`
}

A collection of arguments for invoking getShardingNetworkPrivateAddresses.

type GetShardingNetworkPrivateAddressesOutputArgs

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"`
	OutputFile pulumi.StringPtrInput `pulumi:"outputFile"`
	// The role of the node.
	Role pulumi.StringPtrInput `pulumi:"role"`
}

A collection of arguments for invoking getShardingNetworkPrivateAddresses.

func (GetShardingNetworkPrivateAddressesOutputArgs) ElementType

type GetShardingNetworkPrivateAddressesResult

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

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

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

type GetShardingNetworkPrivateAddressesResultOutput

type GetShardingNetworkPrivateAddressesResultOutput struct{ *pulumi.OutputState }

A collection of values returned by getShardingNetworkPrivateAddresses.

func (GetShardingNetworkPrivateAddressesResultOutput) Addresses

func (GetShardingNetworkPrivateAddressesResultOutput) DbInstanceId

func (GetShardingNetworkPrivateAddressesResultOutput) ElementType

func (GetShardingNetworkPrivateAddressesResultOutput) Id

The provider-assigned unique ID for this managed resource.

func (GetShardingNetworkPrivateAddressesResultOutput) NodeId

func (GetShardingNetworkPrivateAddressesResultOutput) OutputFile

func (GetShardingNetworkPrivateAddressesResultOutput) Role

func (GetShardingNetworkPrivateAddressesResultOutput) ToGetShardingNetworkPrivateAddressesResultOutput

func (o GetShardingNetworkPrivateAddressesResultOutput) ToGetShardingNetworkPrivateAddressesResultOutput() GetShardingNetworkPrivateAddressesResultOutput

func (GetShardingNetworkPrivateAddressesResultOutput) ToGetShardingNetworkPrivateAddressesResultOutputWithContext

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

type GetShardingNetworkPublicAddressesAddress

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

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

func (GetShardingNetworkPublicAddressesAddressArgs) ToGetShardingNetworkPublicAddressesAddressOutput

func (i GetShardingNetworkPublicAddressesAddressArgs) ToGetShardingNetworkPublicAddressesAddressOutput() GetShardingNetworkPublicAddressesAddressOutput

func (GetShardingNetworkPublicAddressesAddressArgs) ToGetShardingNetworkPublicAddressesAddressOutputWithContext

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

type GetShardingNetworkPublicAddressesAddressArray

type GetShardingNetworkPublicAddressesAddressArray []GetShardingNetworkPublicAddressesAddressInput

func (GetShardingNetworkPublicAddressesAddressArray) ElementType

func (GetShardingNetworkPublicAddressesAddressArray) ToGetShardingNetworkPublicAddressesAddressArrayOutput

func (i GetShardingNetworkPublicAddressesAddressArray) ToGetShardingNetworkPublicAddressesAddressArrayOutput() GetShardingNetworkPublicAddressesAddressArrayOutput

func (GetShardingNetworkPublicAddressesAddressArray) ToGetShardingNetworkPublicAddressesAddressArrayOutputWithContext

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

type GetShardingNetworkPublicAddressesAddressArrayInput

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

type GetShardingNetworkPublicAddressesAddressArrayOutput struct{ *pulumi.OutputState }

func (GetShardingNetworkPublicAddressesAddressArrayOutput) ElementType

func (GetShardingNetworkPublicAddressesAddressArrayOutput) Index

func (GetShardingNetworkPublicAddressesAddressArrayOutput) ToGetShardingNetworkPublicAddressesAddressArrayOutput

func (o GetShardingNetworkPublicAddressesAddressArrayOutput) ToGetShardingNetworkPublicAddressesAddressArrayOutput() GetShardingNetworkPublicAddressesAddressArrayOutput

func (GetShardingNetworkPublicAddressesAddressArrayOutput) ToGetShardingNetworkPublicAddressesAddressArrayOutputWithContext

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

type GetShardingNetworkPublicAddressesAddressInput

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

type GetShardingNetworkPublicAddressesAddressOutput struct{ *pulumi.OutputState }

func (GetShardingNetworkPublicAddressesAddressOutput) DbInstanceId

The db instance id.

func (GetShardingNetworkPublicAddressesAddressOutput) ElementType

func (GetShardingNetworkPublicAddressesAddressOutput) ExpiredTime

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

func (GetShardingNetworkPublicAddressesAddressOutput) IpAddress

The IP address of the instance.

func (GetShardingNetworkPublicAddressesAddressOutput) NetworkAddress

The endpoint of the instance.

func (GetShardingNetworkPublicAddressesAddressOutput) NetworkType

The network type.

func (GetShardingNetworkPublicAddressesAddressOutput) NodeId

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

func (GetShardingNetworkPublicAddressesAddressOutput) NodeType

The type of the node.

func (GetShardingNetworkPublicAddressesAddressOutput) Port

The port number.

func (GetShardingNetworkPublicAddressesAddressOutput) Role

The role of the node.

func (GetShardingNetworkPublicAddressesAddressOutput) ToGetShardingNetworkPublicAddressesAddressOutput

func (o GetShardingNetworkPublicAddressesAddressOutput) ToGetShardingNetworkPublicAddressesAddressOutput() GetShardingNetworkPublicAddressesAddressOutput

func (GetShardingNetworkPublicAddressesAddressOutput) ToGetShardingNetworkPublicAddressesAddressOutputWithContext

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

func (GetShardingNetworkPublicAddressesAddressOutput) VpcId

The ID of the VPC.

func (GetShardingNetworkPublicAddressesAddressOutput) VswitchId

The vSwitch ID of the VPC.

type GetShardingNetworkPublicAddressesArgs

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"`
	OutputFile *string `pulumi:"outputFile"`
	// The role of the node.
	Role *string `pulumi:"role"`
}

A collection of arguments for invoking getShardingNetworkPublicAddresses.

type GetShardingNetworkPublicAddressesOutputArgs

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"`
	OutputFile pulumi.StringPtrInput `pulumi:"outputFile"`
	// The role of the node.
	Role pulumi.StringPtrInput `pulumi:"role"`
}

A collection of arguments for invoking getShardingNetworkPublicAddresses.

func (GetShardingNetworkPublicAddressesOutputArgs) ElementType

type GetShardingNetworkPublicAddressesResult

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

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/go/alicloud/mongodb"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
"github.com/rhysmdnz/pulumi-alicloud/sdk/go/alicloud/mongodb"

)

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

type GetShardingNetworkPublicAddressesResultOutput struct{ *pulumi.OutputState }

A collection of values returned by getShardingNetworkPublicAddresses.

func (GetShardingNetworkPublicAddressesResultOutput) Addresses

func (GetShardingNetworkPublicAddressesResultOutput) DbInstanceId

func (GetShardingNetworkPublicAddressesResultOutput) ElementType

func (GetShardingNetworkPublicAddressesResultOutput) Id

The provider-assigned unique ID for this managed resource.

func (GetShardingNetworkPublicAddressesResultOutput) NodeId

func (GetShardingNetworkPublicAddressesResultOutput) OutputFile

func (GetShardingNetworkPublicAddressesResultOutput) Role

func (GetShardingNetworkPublicAddressesResultOutput) ToGetShardingNetworkPublicAddressesResultOutput

func (o GetShardingNetworkPublicAddressesResultOutput) ToGetShardingNetworkPublicAddressesResultOutput() GetShardingNetworkPublicAddressesResultOutput

func (GetShardingNetworkPublicAddressesResultOutput) ToGetShardingNetworkPublicAddressesResultOutputWithContext

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"`
	OutputFile *string `pulumi:"outputFile"`
}

A collection of arguments for invoking getZones.

type GetZonesOutputArgs

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"`
	OutputFile pulumi.StringPtrInput `pulumi:"outputFile"`
}

A collection of arguments for invoking getZones.

func (GetZonesOutputArgs) ElementType

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/go/alicloud/mongodb"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
"github.com/rhysmdnz/pulumi-alicloud/sdk/go/alicloud/mongodb"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		zonesIds, err := mongodb.GetZones(ctx, nil, nil)
		if err != nil {
			return err
		}
		_, err = mongodb.NewInstance(ctx, "mongodb", &mongodb.InstanceArgs{
			ZoneId: pulumi.String(zonesIds.Zones[0].Id),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

type GetZonesResultOutput

type GetZonesResultOutput struct{ *pulumi.OutputState }

A collection of values returned by getZones.

func (GetZonesResultOutput) ElementType

func (GetZonesResultOutput) ElementType() reflect.Type

func (GetZonesResultOutput) Id

The provider-assigned unique ID for this managed resource.

func (GetZonesResultOutput) Ids

A list of zone IDs.

func (GetZonesResultOutput) Multi

func (GetZonesResultOutput) OutputFile

func (GetZonesResultOutput) ToGetZonesResultOutput

func (o GetZonesResultOutput) ToGetZonesResultOutput() GetZonesResultOutput

func (GetZonesResultOutput) ToGetZonesResultOutputWithContext

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

func (GetZonesResultOutput) Zones

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, true of false. Default is 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"`
	// 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"`
	// 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"`
	// 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"`
	// 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"`
	// Valid values are `PrePaid`, `PostPaid`, System default to `PostPaid`. **NOTE:** It can be modified from `PostPaid` to `PrePaid` after version 1.63.0.
	InstanceChargeType pulumi.StringPtrOutput `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 a string of 2 to 256 characters.
	Name pulumi.StringOutput `pulumi:"name"`
	// The network type of the instance. Valid values:`Classic` or `VPC`. Default value: `Classic`.
	NetworkType pulumi.StringOutput `pulumi:"networkType"`
	// The type of configuration changes performed. Default value: DOWNGRADE. Valid values:
	// * UPGRADE: The specifications are upgraded.
	// * DOWNGRADE: The specifications are downgraded.
	//   Note: This parameter is only applicable to instances when `instanceChargeType` is PrePaid.
	OrderType pulumi.StringPtrOutput `pulumi:"orderType"`
	// The duration that you will buy DB instance (in month). It is valid when instanceChargeType is `PrePaid`. Valid values: [1~9], 12, 24, 36. System default to 1.
	Period pulumi.IntOutput `pulumi:"period"`
	// The name of the mongo replica set
	ReplicaSetName pulumi.StringOutput `pulumi:"replicaSetName"`
	// Replica set instance information. The details see Block replica_sets. **NOTE:** Available in v1.140+.
	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 log backup retention days. Available in 1.42.0+.
	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]).
	SecurityIpLists pulumi.StringArrayOutput `pulumi:"securityIpLists"`
	// Actions performed on SSL functions, Valid values: `Open`: turn on SSL encryption; `Close`: turn off SSL encryption; `Update`: update SSL certificate.
	SslAction pulumi.StringOutput `pulumi:"sslAction"`
	// Status of the SSL feature. `Open`: SSL is turned on; `Closed`: SSL is turned off.
	SslStatus pulumi.StringOutput `pulumi:"sslStatus"`
	// Storage engine: WiredTiger or RocksDB. System Default value: WiredTiger.
	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.
	TdeStatus pulumi.StringPtrOutput `pulumi:"tdeStatus"`
	// The ID of the VPC. > **NOTE:** This parameter 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"`
}

## Import

MongoDB 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, true of false. Default is 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
	// 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
	// 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
	// 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
	// Database version. Value options can refer to the latest docs [CreateDBInstance](https://www.alibabacloud.com/help/doc-detail/61763.htm) `EngineVersion`.
	EngineVersion pulumi.StringInput
	// Valid values are `PrePaid`, `PostPaid`, System default to `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 a string of 2 to 256 characters.
	Name pulumi.StringPtrInput
	// The network type of the instance. Valid values:`Classic` or `VPC`. Default value: `Classic`.
	NetworkType pulumi.StringPtrInput
	// The type of configuration changes performed. Default value: DOWNGRADE. Valid values:
	// * UPGRADE: The specifications are upgraded.
	// * DOWNGRADE: The specifications are downgraded.
	//   Note: This parameter is only applicable to instances when `instanceChargeType` is PrePaid.
	OrderType pulumi.StringPtrInput
	// The duration that you will buy DB instance (in month). It is valid when instanceChargeType is `PrePaid`. Valid values: [1~9], 12, 24, 36. System default to 1.
	Period 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 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
	// Actions performed on SSL functions, Valid values: `Open`: turn on SSL encryption; `Close`: turn off SSL encryption; `Update`: update SSL certificate.
	SslAction pulumi.StringPtrInput
	// Storage engine: WiredTiger or RocksDB. System Default value: WiredTiger.
	StorageEngine pulumi.StringPtrInput
	// A mapping of tags to assign to the resource.
	Tags pulumi.MapInput
	// The TDE(Transparent Data Encryption) status.
	TdeStatus pulumi.StringPtrInput
	// The ID of the VPC. > **NOTE:** This parameter 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

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

func (o InstanceOutput) AutoRenew() pulumi.BoolPtrOutput

Auto renew for prepaid, true of false. Default is 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) BackupPeriods

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) BackupTime

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) DbInstanceClass

func (o InstanceOutput) DbInstanceClass() pulumi.StringOutput

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

func (InstanceOutput) DbInstanceStorage

func (o InstanceOutput) DbInstanceStorage() pulumi.IntOutput

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

func (InstanceOutput) ElementType

func (InstanceOutput) ElementType() reflect.Type

func (InstanceOutput) EngineVersion

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) InstanceChargeType

func (o InstanceOutput) InstanceChargeType() pulumi.StringPtrOutput

Valid values are `PrePaid`, `PostPaid`, System default to `PostPaid`. **NOTE:** It can be modified from `PostPaid` to `PrePaid` after version 1.63.0.

func (InstanceOutput) KmsEncryptedPassword

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

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

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

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

The name of DB instance. It a string of 2 to 256 characters.

func (InstanceOutput) NetworkType

func (o InstanceOutput) NetworkType() pulumi.StringOutput

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

func (InstanceOutput) OrderType

func (o InstanceOutput) OrderType() pulumi.StringPtrOutput

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

  • UPGRADE: The specifications are upgraded.
  • DOWNGRADE: The specifications are downgraded. Note: This parameter is only applicable to instances when `instanceChargeType` is PrePaid.

func (InstanceOutput) Period

func (o InstanceOutput) Period() pulumi.IntOutput

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

func (InstanceOutput) ReplicaSetName

func (o InstanceOutput) ReplicaSetName() pulumi.StringOutput

The name of the mongo replica set

func (InstanceOutput) ReplicaSets

Replica set instance information. The details see Block replica_sets. **NOTE:** Available in v1.140+.

func (InstanceOutput) ReplicationFactor

func (o InstanceOutput) ReplicationFactor() pulumi.IntOutput

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

func (InstanceOutput) ResourceGroupId

func (o InstanceOutput) ResourceGroupId() pulumi.StringOutput

The ID of the Resource Group.

func (InstanceOutput) RetentionPeriod

func (o InstanceOutput) RetentionPeriod() pulumi.IntOutput

Instance log backup retention days. Available in 1.42.0+.

func (InstanceOutput) SecurityGroupId

func (o InstanceOutput) SecurityGroupId() pulumi.StringOutput

The Security Group ID of ECS.

func (InstanceOutput) SecurityIpLists

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) SslAction

func (o InstanceOutput) SslAction() pulumi.StringOutput

Actions performed on SSL functions, Valid values: `Open`: turn on SSL encryption; `Close`: turn off SSL encryption; `Update`: update SSL certificate.

func (InstanceOutput) SslStatus

func (o InstanceOutput) SslStatus() pulumi.StringOutput

Status of the SSL feature. `Open`: SSL is turned on; `Closed`: SSL is turned off.

func (InstanceOutput) StorageEngine

func (o InstanceOutput) StorageEngine() pulumi.StringOutput

Storage engine: WiredTiger or RocksDB. System Default value: WiredTiger.

func (InstanceOutput) Tags

func (o InstanceOutput) Tags() pulumi.MapOutput

A mapping of tags to assign to the resource.

func (InstanceOutput) TdeStatus

func (o InstanceOutput) TdeStatus() pulumi.StringPtrOutput

The TDE(Transparent Data Encryption) status.

func (InstanceOutput) ToInstanceOutput

func (o InstanceOutput) ToInstanceOutput() InstanceOutput

func (InstanceOutput) ToInstanceOutputWithContext

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

func (InstanceOutput) VpcId

The ID of the VPC. > **NOTE:** This parameter is valid only when NetworkType is set to VPC.

func (InstanceOutput) VswitchId

func (o InstanceOutput) VswitchId() pulumi.StringOutput

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

func (InstanceOutput) ZoneId

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 InstanceReplicaSet

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` or `VPC`. Default value: `Classic`.
	NetworkType *string `pulumi:"networkType"`
	// The role of the node. Valid values: `Primary`,`Secondary`.
	ReplicaSetRole *string `pulumi:"replicaSetRole"`
	// VPC instance ID.
	VpcCloudInstanceId *string `pulumi:"vpcCloudInstanceId"`
	// The ID of the VPC. > **NOTE:** This parameter 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

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` or `VPC`. Default value: `Classic`.
	NetworkType pulumi.StringPtrInput `pulumi:"networkType"`
	// The role of the node. Valid values: `Primary`,`Secondary`.
	ReplicaSetRole pulumi.StringPtrInput `pulumi:"replicaSetRole"`
	// VPC instance ID.
	VpcCloudInstanceId pulumi.StringPtrInput `pulumi:"vpcCloudInstanceId"`
	// The ID of the VPC. > **NOTE:** This parameter 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

func (InstanceReplicaSetArgs) ElementType() reflect.Type

func (InstanceReplicaSetArgs) ToInstanceReplicaSetOutput

func (i InstanceReplicaSetArgs) ToInstanceReplicaSetOutput() InstanceReplicaSetOutput

func (InstanceReplicaSetArgs) ToInstanceReplicaSetOutputWithContext

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

type InstanceReplicaSetArray

type InstanceReplicaSetArray []InstanceReplicaSetInput

func (InstanceReplicaSetArray) ElementType

func (InstanceReplicaSetArray) ElementType() reflect.Type

func (InstanceReplicaSetArray) ToInstanceReplicaSetArrayOutput

func (i InstanceReplicaSetArray) ToInstanceReplicaSetArrayOutput() InstanceReplicaSetArrayOutput

func (InstanceReplicaSetArray) ToInstanceReplicaSetArrayOutputWithContext

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

type InstanceReplicaSetArrayInput

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

type InstanceReplicaSetArrayOutput struct{ *pulumi.OutputState }

func (InstanceReplicaSetArrayOutput) ElementType

func (InstanceReplicaSetArrayOutput) Index

func (InstanceReplicaSetArrayOutput) ToInstanceReplicaSetArrayOutput

func (o InstanceReplicaSetArrayOutput) ToInstanceReplicaSetArrayOutput() InstanceReplicaSetArrayOutput

func (InstanceReplicaSetArrayOutput) ToInstanceReplicaSetArrayOutputWithContext

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

type InstanceReplicaSetInput

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

type InstanceReplicaSetOutput struct{ *pulumi.OutputState }

func (InstanceReplicaSetOutput) ConnectionDomain

func (o InstanceReplicaSetOutput) ConnectionDomain() pulumi.StringPtrOutput

The connection address of the node.

func (InstanceReplicaSetOutput) ConnectionPort

func (o InstanceReplicaSetOutput) ConnectionPort() pulumi.StringPtrOutput

The connection port of the node.

func (InstanceReplicaSetOutput) ElementType

func (InstanceReplicaSetOutput) ElementType() reflect.Type

func (InstanceReplicaSetOutput) NetworkType

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

func (InstanceReplicaSetOutput) ReplicaSetRole

func (o InstanceReplicaSetOutput) ReplicaSetRole() pulumi.StringPtrOutput

The role of the node. Valid values: `Primary`,`Secondary`.

func (InstanceReplicaSetOutput) ToInstanceReplicaSetOutput

func (o InstanceReplicaSetOutput) ToInstanceReplicaSetOutput() InstanceReplicaSetOutput

func (InstanceReplicaSetOutput) ToInstanceReplicaSetOutputWithContext

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

func (InstanceReplicaSetOutput) VpcCloudInstanceId

func (o InstanceReplicaSetOutput) VpcCloudInstanceId() pulumi.StringPtrOutput

VPC instance ID.

func (InstanceReplicaSetOutput) VpcId

The ID of the VPC. > **NOTE:** This parameter is valid only when NetworkType is set to VPC.

func (InstanceReplicaSetOutput) VswitchId

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, true of false. Default is 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
	// 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
	// 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
	// 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
	// Database version. Value options can refer to the latest docs [CreateDBInstance](https://www.alibabacloud.com/help/doc-detail/61763.htm) `EngineVersion`.
	EngineVersion pulumi.StringPtrInput
	// Valid values are `PrePaid`, `PostPaid`, System default to `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 a string of 2 to 256 characters.
	Name pulumi.StringPtrInput
	// The network type of the instance. Valid values:`Classic` or `VPC`. Default value: `Classic`.
	NetworkType pulumi.StringPtrInput
	// The type of configuration changes performed. Default value: DOWNGRADE. Valid values:
	// * UPGRADE: The specifications are upgraded.
	// * DOWNGRADE: The specifications are downgraded.
	//   Note: This parameter is only applicable to instances when `instanceChargeType` is PrePaid.
	OrderType pulumi.StringPtrInput
	// The duration that you will buy DB instance (in month). It is valid when instanceChargeType is `PrePaid`. Valid values: [1~9], 12, 24, 36. System default to 1.
	Period pulumi.IntPtrInput
	// The name of the mongo replica set
	ReplicaSetName pulumi.StringPtrInput
	// Replica set instance information. The details see Block replica_sets. **NOTE:** Available in v1.140+.
	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 log backup retention days. Available in 1.42.0+.
	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]).
	SecurityIpLists pulumi.StringArrayInput
	// Actions performed on SSL functions, Valid values: `Open`: turn on SSL encryption; `Close`: turn off SSL encryption; `Update`: update SSL certificate.
	SslAction pulumi.StringPtrInput
	// Status of the SSL feature. `Open`: SSL is turned on; `Closed`: SSL is turned off.
	SslStatus pulumi.StringPtrInput
	// Storage engine: WiredTiger or RocksDB. System Default value: WiredTiger.
	StorageEngine pulumi.StringPtrInput
	// A mapping of tags to assign to the resource.
	Tags pulumi.MapInput
	// The TDE(Transparent Data Encryption) status.
	TdeStatus pulumi.StringPtrInput
	// The ID of the VPC. > **NOTE:** This parameter 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

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:** Available in v1.148.0+.

## Example Usage

Basic Usage

```go package main

import (

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

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		defaultZones, err := mongodb.GetZones(ctx, nil, nil)
		if err != nil {
			return err
		}
		defaultNetworks, err := vpc.GetNetworks(ctx, &vpc.GetNetworksArgs{
			NameRegex: pulumi.StringRef("default-NODELETING"),
		}, nil)
		if err != nil {
			return err
		}
		defaultSwitches, err := vpc.GetSwitches(ctx, &vpc.GetSwitchesArgs{
			VpcId:  pulumi.StringRef(defaultNetworks.Ids[0]),
			ZoneId: pulumi.StringRef(defaultZones.Zones[0].Id),
		}, nil)
		if err != nil {
			return err
		}
		defaultResourceGroups, 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(defaultResourceGroups.Groups[0].Id),
			EngineVersion:         pulumi.String("4.2"),
			Period:                pulumi.Int(1),
			PeriodPriceType:       pulumi.String("Month"),
			VpcId:                 pulumi.String(defaultNetworks.Ids[0]),
			ZoneId:                pulumi.String(defaultZones.Zones[0].Id),
			VswitchId:             pulumi.String(defaultSwitches.Ids[0]),
			Tags: pulumi.AnyMap{
				"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

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

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

func (*ServerlessInstance) ElementType() reflect.Type

func (*ServerlessInstance) ToServerlessInstanceOutput

func (i *ServerlessInstance) ToServerlessInstanceOutput() ServerlessInstanceOutput

func (*ServerlessInstance) ToServerlessInstanceOutputWithContext

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

type ServerlessInstanceArgs

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

func (ServerlessInstanceArgs) ElementType() reflect.Type

type ServerlessInstanceArray

type ServerlessInstanceArray []ServerlessInstanceInput

func (ServerlessInstanceArray) ElementType

func (ServerlessInstanceArray) ElementType() reflect.Type

func (ServerlessInstanceArray) ToServerlessInstanceArrayOutput

func (i ServerlessInstanceArray) ToServerlessInstanceArrayOutput() ServerlessInstanceArrayOutput

func (ServerlessInstanceArray) ToServerlessInstanceArrayOutputWithContext

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

type ServerlessInstanceArrayInput

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

type ServerlessInstanceArrayOutput struct{ *pulumi.OutputState }

func (ServerlessInstanceArrayOutput) ElementType

func (ServerlessInstanceArrayOutput) Index

func (ServerlessInstanceArrayOutput) ToServerlessInstanceArrayOutput

func (o ServerlessInstanceArrayOutput) ToServerlessInstanceArrayOutput() ServerlessInstanceArrayOutput

func (ServerlessInstanceArrayOutput) ToServerlessInstanceArrayOutputWithContext

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

type ServerlessInstanceInput

type ServerlessInstanceInput interface {
	pulumi.Input

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

type ServerlessInstanceMap

type ServerlessInstanceMap map[string]ServerlessInstanceInput

func (ServerlessInstanceMap) ElementType

func (ServerlessInstanceMap) ElementType() reflect.Type

func (ServerlessInstanceMap) ToServerlessInstanceMapOutput

func (i ServerlessInstanceMap) ToServerlessInstanceMapOutput() ServerlessInstanceMapOutput

func (ServerlessInstanceMap) ToServerlessInstanceMapOutputWithContext

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

type ServerlessInstanceMapInput

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

type ServerlessInstanceMapOutput struct{ *pulumi.OutputState }

func (ServerlessInstanceMapOutput) ElementType

func (ServerlessInstanceMapOutput) MapIndex

func (ServerlessInstanceMapOutput) ToServerlessInstanceMapOutput

func (o ServerlessInstanceMapOutput) ToServerlessInstanceMapOutput() ServerlessInstanceMapOutput

func (ServerlessInstanceMapOutput) ToServerlessInstanceMapOutputWithContext

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

type ServerlessInstanceOutput

type ServerlessInstanceOutput struct{ *pulumi.OutputState }

func (ServerlessInstanceOutput) AccountPassword

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

Set whether the instance is automatically renewed.

func (ServerlessInstanceOutput) CapacityUnit

func (o ServerlessInstanceOutput) CapacityUnit() pulumi.IntOutput

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

func (ServerlessInstanceOutput) DbInstanceDescription

func (o ServerlessInstanceOutput) DbInstanceDescription() pulumi.StringPtrOutput

The db instance description.

func (ServerlessInstanceOutput) DbInstanceStorage

func (o ServerlessInstanceOutput) DbInstanceStorage() pulumi.IntOutput

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

func (ServerlessInstanceOutput) ElementType

func (ServerlessInstanceOutput) ElementType() reflect.Type

func (ServerlessInstanceOutput) Engine

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

func (ServerlessInstanceOutput) EngineVersion

func (o ServerlessInstanceOutput) EngineVersion() pulumi.StringOutput

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

func (ServerlessInstanceOutput) MaintainEndTime

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

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

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

func (ServerlessInstanceOutput) PeriodPriceType

func (o ServerlessInstanceOutput) PeriodPriceType() pulumi.StringPtrOutput

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

func (ServerlessInstanceOutput) ResourceGroupId

func (o ServerlessInstanceOutput) ResourceGroupId() pulumi.StringOutput

The ID of the resource group.

func (ServerlessInstanceOutput) SecurityIpGroups

An array that consists of the information of IP whitelists.

func (ServerlessInstanceOutput) Status

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

func (ServerlessInstanceOutput) StorageEngine

func (o ServerlessInstanceOutput) StorageEngine() pulumi.StringOutput

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

func (ServerlessInstanceOutput) Tags

A mapping of tags to assign to the resource.

func (ServerlessInstanceOutput) ToServerlessInstanceOutput

func (o ServerlessInstanceOutput) ToServerlessInstanceOutput() ServerlessInstanceOutput

func (ServerlessInstanceOutput) ToServerlessInstanceOutputWithContext

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

func (ServerlessInstanceOutput) VpcId

The ID of the VPC network.

func (ServerlessInstanceOutput) VswitchId

The of the vswitch.

func (ServerlessInstanceOutput) ZoneId

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

type ServerlessInstanceSecurityIpGroup

type ServerlessInstanceSecurityIpGroup struct {
	// The attribute of the IP whitelist. This parameter is empty by default.
	SecurityIpGroupAttribute *string `pulumi:"securityIpGroupAttribute"`
	// The name of the IP whitelist.
	SecurityIpGroupName *string `pulumi:"securityIpGroupName"`
	// The IP addresses in the whitelist.
	SecurityIpList *string `pulumi:"securityIpList"`
}

type ServerlessInstanceSecurityIpGroupArgs

type ServerlessInstanceSecurityIpGroupArgs struct {
	// The attribute of the IP whitelist. This parameter is empty by default.
	SecurityIpGroupAttribute pulumi.StringPtrInput `pulumi:"securityIpGroupAttribute"`
	// The name of the IP whitelist.
	SecurityIpGroupName pulumi.StringPtrInput `pulumi:"securityIpGroupName"`
	// The IP addresses in the whitelist.
	SecurityIpList pulumi.StringPtrInput `pulumi:"securityIpList"`
}

func (ServerlessInstanceSecurityIpGroupArgs) ElementType

func (ServerlessInstanceSecurityIpGroupArgs) ToServerlessInstanceSecurityIpGroupOutput

func (i ServerlessInstanceSecurityIpGroupArgs) ToServerlessInstanceSecurityIpGroupOutput() ServerlessInstanceSecurityIpGroupOutput

func (ServerlessInstanceSecurityIpGroupArgs) ToServerlessInstanceSecurityIpGroupOutputWithContext

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

type ServerlessInstanceSecurityIpGroupArray

type ServerlessInstanceSecurityIpGroupArray []ServerlessInstanceSecurityIpGroupInput

func (ServerlessInstanceSecurityIpGroupArray) ElementType

func (ServerlessInstanceSecurityIpGroupArray) ToServerlessInstanceSecurityIpGroupArrayOutput

func (i ServerlessInstanceSecurityIpGroupArray) ToServerlessInstanceSecurityIpGroupArrayOutput() ServerlessInstanceSecurityIpGroupArrayOutput

func (ServerlessInstanceSecurityIpGroupArray) ToServerlessInstanceSecurityIpGroupArrayOutputWithContext

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

type ServerlessInstanceSecurityIpGroupArrayInput

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

type ServerlessInstanceSecurityIpGroupArrayOutput struct{ *pulumi.OutputState }

func (ServerlessInstanceSecurityIpGroupArrayOutput) ElementType

func (ServerlessInstanceSecurityIpGroupArrayOutput) Index

func (ServerlessInstanceSecurityIpGroupArrayOutput) ToServerlessInstanceSecurityIpGroupArrayOutput

func (o ServerlessInstanceSecurityIpGroupArrayOutput) ToServerlessInstanceSecurityIpGroupArrayOutput() ServerlessInstanceSecurityIpGroupArrayOutput

func (ServerlessInstanceSecurityIpGroupArrayOutput) ToServerlessInstanceSecurityIpGroupArrayOutputWithContext

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

type ServerlessInstanceSecurityIpGroupInput

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

type ServerlessInstanceSecurityIpGroupOutput struct{ *pulumi.OutputState }

func (ServerlessInstanceSecurityIpGroupOutput) ElementType

func (ServerlessInstanceSecurityIpGroupOutput) SecurityIpGroupAttribute

func (o ServerlessInstanceSecurityIpGroupOutput) SecurityIpGroupAttribute() pulumi.StringPtrOutput

The attribute of the IP whitelist. This parameter is empty by default.

func (ServerlessInstanceSecurityIpGroupOutput) SecurityIpGroupName

The name of the IP whitelist.

func (ServerlessInstanceSecurityIpGroupOutput) SecurityIpList

The IP addresses in the whitelist.

func (ServerlessInstanceSecurityIpGroupOutput) ToServerlessInstanceSecurityIpGroupOutput

func (o ServerlessInstanceSecurityIpGroupOutput) ToServerlessInstanceSecurityIpGroupOutput() ServerlessInstanceSecurityIpGroupOutput

func (ServerlessInstanceSecurityIpGroupOutput) ToServerlessInstanceSecurityIpGroupOutputWithContext

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

type ServerlessInstanceState

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

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, true of false. Default is 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"`
	// 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 node information list of config server. The details see Block `configServerList`. **NOTE:** Available in v1.140+.
	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"`
	// Valid values are `PrePaid`, `PostPaid`,System default to `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-node count can be purchased is in range of [2, 32].
	MongoLists ShardingInstanceMongoListArrayOutput `pulumi:"mongoLists"`
	// The name of DB instance. It a string of 2 to 256 characters.
	Name pulumi.StringOutput `pulumi:"name"`
	// The network type of the instance. Valid values:`Classic` or `VPC`. Default value: `Classic`.
	NetworkType pulumi.StringOutput `pulumi:"networkType"`
	// The type of configuration changes performed. Default value: DOWNGRADE. Valid values:
	// * UPGRADE: The specifications are upgraded.
	// * DOWNGRADE: The specifications are downgraded.
	//   Note: This parameter is only applicable to instances when `instanceChargeType` is PrePaid.
	OrderType pulumi.StringPtrOutput `pulumi:"orderType"`
	// The duration that you will buy DB instance (in month). It is valid when instanceChargeType is `PrePaid`. Valid values: [1~9], 12, 24, 36. System default to 1.
	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"`
	// Instance log backup retention days. **NOTE:** Available in 1.42.0+.
	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-node count can be purchased is in range of [2, 32].
	ShardLists ShardingInstanceShardListArrayOutput `pulumi:"shardLists"`
	// Storage engine: WiredTiger or RocksDB. System Default value: WiredTiger.
	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.StringPtrOutput `pulumi:"tdeStatus"`
	// The ID of the VPC. > **NOTE:** This parameter 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.StringPtrOutput `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.StringPtrOutput `pulumi:"zoneId"`
}

## Import

MongoDB 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, true of false. Default is 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
	// 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
	// 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
	// Valid values are `PrePaid`, `PostPaid`,System default to `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-node count can be purchased is in range of [2, 32].
	MongoLists ShardingInstanceMongoListArrayInput
	// The name of DB instance. It a string of 2 to 256 characters.
	Name pulumi.StringPtrInput
	// The network type of the instance. Valid values:`Classic` or `VPC`. Default value: `Classic`.
	NetworkType pulumi.StringPtrInput
	// The type of configuration changes performed. Default value: DOWNGRADE. Valid values:
	// * UPGRADE: The specifications are upgraded.
	// * DOWNGRADE: The specifications are downgraded.
	//   Note: This parameter is only applicable to instances when `instanceChargeType` is PrePaid.
	OrderType pulumi.StringPtrInput
	// The duration that you will buy DB instance (in month). It is valid when instanceChargeType is `PrePaid`. Valid values: [1~9], 12, 24, 36. System default to 1.
	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-node count can be purchased is in range of [2, 32].
	ShardLists ShardingInstanceShardListArrayInput
	// Storage engine: WiredTiger or RocksDB. System Default value: WiredTiger.
	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:** This parameter 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

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"`
	// -(Required) Node specification. see [Instance specifications](https://www.alibabacloud.com/help/doc-detail/57141.htm).
	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"`
	// - Custom storage space; value range: [10, 1,000]
	// - 10-GB increments. Unit: GB.
	NodeStorage *int `pulumi:"nodeStorage"`
	// The connection port of the Config Server node.
	Port *int `pulumi:"port"`
}

type ShardingInstanceConfigServerListArgs

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"`
	// -(Required) Node specification. see [Instance specifications](https://www.alibabacloud.com/help/doc-detail/57141.htm).
	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"`
	// - Custom storage space; value range: [10, 1,000]
	// - 10-GB increments. Unit: GB.
	NodeStorage pulumi.IntPtrInput `pulumi:"nodeStorage"`
	// The connection port of the Config Server node.
	Port pulumi.IntPtrInput `pulumi:"port"`
}

func (ShardingInstanceConfigServerListArgs) ElementType

func (ShardingInstanceConfigServerListArgs) ToShardingInstanceConfigServerListOutput

func (i ShardingInstanceConfigServerListArgs) ToShardingInstanceConfigServerListOutput() ShardingInstanceConfigServerListOutput

func (ShardingInstanceConfigServerListArgs) ToShardingInstanceConfigServerListOutputWithContext

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

type ShardingInstanceConfigServerListArray

type ShardingInstanceConfigServerListArray []ShardingInstanceConfigServerListInput

func (ShardingInstanceConfigServerListArray) ElementType

func (ShardingInstanceConfigServerListArray) ToShardingInstanceConfigServerListArrayOutput

func (i ShardingInstanceConfigServerListArray) ToShardingInstanceConfigServerListArrayOutput() ShardingInstanceConfigServerListArrayOutput

func (ShardingInstanceConfigServerListArray) ToShardingInstanceConfigServerListArrayOutputWithContext

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

type ShardingInstanceConfigServerListArrayInput

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

type ShardingInstanceConfigServerListArrayOutput struct{ *pulumi.OutputState }

func (ShardingInstanceConfigServerListArrayOutput) ElementType

func (ShardingInstanceConfigServerListArrayOutput) Index

func (ShardingInstanceConfigServerListArrayOutput) ToShardingInstanceConfigServerListArrayOutput

func (o ShardingInstanceConfigServerListArrayOutput) ToShardingInstanceConfigServerListArrayOutput() ShardingInstanceConfigServerListArrayOutput

func (ShardingInstanceConfigServerListArrayOutput) ToShardingInstanceConfigServerListArrayOutputWithContext

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

type ShardingInstanceConfigServerListInput

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

type ShardingInstanceConfigServerListOutput struct{ *pulumi.OutputState }

func (ShardingInstanceConfigServerListOutput) ConnectString

The connection address of the Config Server node.

func (ShardingInstanceConfigServerListOutput) ElementType

func (ShardingInstanceConfigServerListOutput) MaxConnections

The max connections of the Config Server node.

func (ShardingInstanceConfigServerListOutput) MaxIops

The maximum IOPS of the Config Server node.

func (ShardingInstanceConfigServerListOutput) NodeClass

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

func (ShardingInstanceConfigServerListOutput) NodeDescription

The description of the Config Server node.

func (ShardingInstanceConfigServerListOutput) NodeId

The ID of the Config Server node.

func (ShardingInstanceConfigServerListOutput) NodeStorage

- Custom storage space; value range: [10, 1,000] - 10-GB increments. Unit: GB.

func (ShardingInstanceConfigServerListOutput) Port

The connection port of the Config Server node.

func (ShardingInstanceConfigServerListOutput) ToShardingInstanceConfigServerListOutput

func (o ShardingInstanceConfigServerListOutput) ToShardingInstanceConfigServerListOutput() ShardingInstanceConfigServerListOutput

func (ShardingInstanceConfigServerListOutput) ToShardingInstanceConfigServerListOutputWithContext

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"`
	// -(Required) Node specification. 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"`
	// -(Required) Node specification. 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

-(Required) Node specification. 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

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

Auto renew for prepaid, true of false. Default is false.

func (ShardingInstanceOutput) BackupPeriods

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

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 (ShardingInstanceOutput) ConfigServerLists

The node information list of config server. The details see Block `configServerList`. **NOTE:** Available in v1.140+.

func (ShardingInstanceOutput) ElementType

func (ShardingInstanceOutput) ElementType() reflect.Type

func (ShardingInstanceOutput) EngineVersion

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

func (o ShardingInstanceOutput) InstanceChargeType() pulumi.StringOutput

Valid values are `PrePaid`, `PostPaid`,System default to `PostPaid`. **NOTE:** It can be modified from `PostPaid` to `PrePaid` after version v1.141.0.

func (ShardingInstanceOutput) KmsEncryptedPassword

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

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

The mongo-node count can be purchased is in range of [2, 32].

func (ShardingInstanceOutput) Name

The name of DB instance. It a string of 2 to 256 characters.

func (ShardingInstanceOutput) NetworkType

func (o ShardingInstanceOutput) NetworkType() pulumi.StringOutput

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

func (ShardingInstanceOutput) OrderType

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

  • UPGRADE: The specifications are upgraded.
  • DOWNGRADE: The specifications are downgraded. Note: This parameter is only applicable to instances when `instanceChargeType` is PrePaid.

func (ShardingInstanceOutput) Period

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

func (ShardingInstanceOutput) ProtocolType

func (o ShardingInstanceOutput) ProtocolType() pulumi.StringOutput

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

func (ShardingInstanceOutput) ResourceGroupId

func (o ShardingInstanceOutput) ResourceGroupId() pulumi.StringOutput

The ID of the Resource Group.

func (ShardingInstanceOutput) RetentionPeriod

func (o ShardingInstanceOutput) RetentionPeriod() pulumi.IntOutput

Instance log backup retention days. **NOTE:** Available in 1.42.0+.

func (ShardingInstanceOutput) SecurityGroupId

func (o ShardingInstanceOutput) SecurityGroupId() pulumi.StringOutput

The Security Group ID of ECS.

func (ShardingInstanceOutput) SecurityIpLists

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

the shard-node count can be purchased is in range of [2, 32].

func (ShardingInstanceOutput) StorageEngine

func (o ShardingInstanceOutput) StorageEngine() pulumi.StringOutput

Storage engine: WiredTiger or RocksDB. System Default value: WiredTiger.

func (ShardingInstanceOutput) Tags

A mapping of tags to assign to the resource.

func (ShardingInstanceOutput) TdeStatus

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

The ID of the VPC. > **NOTE:** This parameter is valid only when NetworkType is set to VPC.

func (ShardingInstanceOutput) VswitchId

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

func (ShardingInstanceOutput) ZoneId

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 {
	// -(Required) Node specification. 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"`
	// - 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. Valid values: 0 to 5. Default value: 0.
	ReadonlyReplicas *int `pulumi:"readonlyReplicas"`
}

type ShardingInstanceShardListArgs

type ShardingInstanceShardListArgs struct {
	// -(Required) Node specification. 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"`
	// - 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. Valid values: 0 to 5. Default value: 0.
	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

-(Required) Node specification. 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

- Custom storage space; value range: [10, 1,000] - 10-GB increments. Unit: GB.

func (ShardingInstanceShardListOutput) ReadonlyReplicas

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

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, true of false. Default is 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
	// 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 node information list of config server. The details see Block `configServerList`. **NOTE:** Available in v1.140+.
	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
	// Valid values are `PrePaid`, `PostPaid`,System default to `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-node count can be purchased is in range of [2, 32].
	MongoLists ShardingInstanceMongoListArrayInput
	// The name of DB instance. It a string of 2 to 256 characters.
	Name pulumi.StringPtrInput
	// The network type of the instance. Valid values:`Classic` or `VPC`. Default value: `Classic`.
	NetworkType pulumi.StringPtrInput
	// The type of configuration changes performed. Default value: DOWNGRADE. Valid values:
	// * UPGRADE: The specifications are upgraded.
	// * DOWNGRADE: The specifications are downgraded.
	//   Note: This parameter is only applicable to instances when `instanceChargeType` is PrePaid.
	OrderType pulumi.StringPtrInput
	// The duration that you will buy DB instance (in month). It is valid when instanceChargeType is `PrePaid`. Valid values: [1~9], 12, 24, 36. System default to 1.
	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
	// Instance log backup retention days. **NOTE:** Available in 1.42.0+.
	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-node count can be purchased is in range of [2, 32].
	ShardLists ShardingInstanceShardListArrayInput
	// Storage engine: WiredTiger or RocksDB. System Default value: WiredTiger.
	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:** This parameter 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

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 in v1.157.0+.

## Example Usage

Basic Usage

```go package main

import (

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

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		defaultZones, err := mongodb.GetZones(ctx, nil, nil)
		if err != nil {
			return err
		}
		defaultNetworks, err := vpc.GetNetworks(ctx, &vpc.GetNetworksArgs{
			NameRegex: pulumi.StringRef("default-NODELETING"),
		}, nil)
		if err != nil {
			return err
		}
		defaultSwitches, err := vpc.GetSwitches(ctx, &vpc.GetSwitchesArgs{
			VpcId:  pulumi.StringRef(defaultNetworks.Ids[0]),
			ZoneId: pulumi.StringRef(defaultZones.Zones[0].Id),
		}, nil)
		if err != nil {
			return err
		}
		defaultShardingInstance, err := mongodb.NewShardingInstance(ctx, "defaultShardingInstance", &mongodb.ShardingInstanceArgs{
			ZoneId:        pulumi.String(defaultZones.Zones[0].Id),
			VswitchId:     pulumi.String(defaultSwitches.Ids[0]),
			EngineVersion: pulumi.String("3.4"),
			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.mid"),
					NodeStorage: pulumi.Int(10),
				},
			},
		})
		if err != nil {
			return err
		}
		_, err = mongodb.NewShardingNetworkPrivateAddress(ctx, "example", &mongodb.ShardingNetworkPrivateAddressArgs{
			DbInstanceId: defaultShardingInstance.ID(),
			NodeId: defaultShardingInstance.ShardLists.ApplyT(func(shardLists []mongodb.ShardingInstanceShardList) (string, error) {
				return shardLists[0].NodeId, nil
			}).(pulumi.StringOutput),
			ZoneId:          defaultShardingInstance.ZoneId,
			AccountName:     pulumi.String("example_value"),
			AccountPassword: pulumi.String("YourPassword+12345"),
		})
		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

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

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

func (*ShardingNetworkPrivateAddress) ToShardingNetworkPrivateAddressOutput

func (i *ShardingNetworkPrivateAddress) ToShardingNetworkPrivateAddressOutput() ShardingNetworkPrivateAddressOutput

func (*ShardingNetworkPrivateAddress) ToShardingNetworkPrivateAddressOutputWithContext

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

type ShardingNetworkPrivateAddressArgs

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

type ShardingNetworkPrivateAddressArray

type ShardingNetworkPrivateAddressArray []ShardingNetworkPrivateAddressInput

func (ShardingNetworkPrivateAddressArray) ElementType

func (ShardingNetworkPrivateAddressArray) ToShardingNetworkPrivateAddressArrayOutput

func (i ShardingNetworkPrivateAddressArray) ToShardingNetworkPrivateAddressArrayOutput() ShardingNetworkPrivateAddressArrayOutput

func (ShardingNetworkPrivateAddressArray) ToShardingNetworkPrivateAddressArrayOutputWithContext

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

type ShardingNetworkPrivateAddressArrayInput

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

type ShardingNetworkPrivateAddressArrayOutput struct{ *pulumi.OutputState }

func (ShardingNetworkPrivateAddressArrayOutput) ElementType

func (ShardingNetworkPrivateAddressArrayOutput) Index

func (ShardingNetworkPrivateAddressArrayOutput) ToShardingNetworkPrivateAddressArrayOutput

func (o ShardingNetworkPrivateAddressArrayOutput) ToShardingNetworkPrivateAddressArrayOutput() ShardingNetworkPrivateAddressArrayOutput

func (ShardingNetworkPrivateAddressArrayOutput) ToShardingNetworkPrivateAddressArrayOutputWithContext

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

type ShardingNetworkPrivateAddressInput

type ShardingNetworkPrivateAddressInput interface {
	pulumi.Input

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

type ShardingNetworkPrivateAddressMap

type ShardingNetworkPrivateAddressMap map[string]ShardingNetworkPrivateAddressInput

func (ShardingNetworkPrivateAddressMap) ElementType

func (ShardingNetworkPrivateAddressMap) ToShardingNetworkPrivateAddressMapOutput

func (i ShardingNetworkPrivateAddressMap) ToShardingNetworkPrivateAddressMapOutput() ShardingNetworkPrivateAddressMapOutput

func (ShardingNetworkPrivateAddressMap) ToShardingNetworkPrivateAddressMapOutputWithContext

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

type ShardingNetworkPrivateAddressMapInput

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

type ShardingNetworkPrivateAddressMapOutput struct{ *pulumi.OutputState }

func (ShardingNetworkPrivateAddressMapOutput) ElementType

func (ShardingNetworkPrivateAddressMapOutput) MapIndex

func (ShardingNetworkPrivateAddressMapOutput) ToShardingNetworkPrivateAddressMapOutput

func (o ShardingNetworkPrivateAddressMapOutput) ToShardingNetworkPrivateAddressMapOutput() ShardingNetworkPrivateAddressMapOutput

func (ShardingNetworkPrivateAddressMapOutput) ToShardingNetworkPrivateAddressMapOutputWithContext

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

type ShardingNetworkPrivateAddressNetworkAddress

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

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

func (ShardingNetworkPrivateAddressNetworkAddressArgs) ToShardingNetworkPrivateAddressNetworkAddressOutput

func (i ShardingNetworkPrivateAddressNetworkAddressArgs) ToShardingNetworkPrivateAddressNetworkAddressOutput() ShardingNetworkPrivateAddressNetworkAddressOutput

func (ShardingNetworkPrivateAddressNetworkAddressArgs) ToShardingNetworkPrivateAddressNetworkAddressOutputWithContext

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

type ShardingNetworkPrivateAddressNetworkAddressArray

type ShardingNetworkPrivateAddressNetworkAddressArray []ShardingNetworkPrivateAddressNetworkAddressInput

func (ShardingNetworkPrivateAddressNetworkAddressArray) ElementType

func (ShardingNetworkPrivateAddressNetworkAddressArray) ToShardingNetworkPrivateAddressNetworkAddressArrayOutput

func (i ShardingNetworkPrivateAddressNetworkAddressArray) ToShardingNetworkPrivateAddressNetworkAddressArrayOutput() ShardingNetworkPrivateAddressNetworkAddressArrayOutput

func (ShardingNetworkPrivateAddressNetworkAddressArray) ToShardingNetworkPrivateAddressNetworkAddressArrayOutputWithContext

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

type ShardingNetworkPrivateAddressNetworkAddressArrayInput

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

type ShardingNetworkPrivateAddressNetworkAddressArrayOutput struct{ *pulumi.OutputState }

func (ShardingNetworkPrivateAddressNetworkAddressArrayOutput) ElementType

func (ShardingNetworkPrivateAddressNetworkAddressArrayOutput) Index

func (ShardingNetworkPrivateAddressNetworkAddressArrayOutput) ToShardingNetworkPrivateAddressNetworkAddressArrayOutput

func (ShardingNetworkPrivateAddressNetworkAddressArrayOutput) ToShardingNetworkPrivateAddressNetworkAddressArrayOutputWithContext

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

type ShardingNetworkPrivateAddressNetworkAddressInput

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

type ShardingNetworkPrivateAddressNetworkAddressOutput struct{ *pulumi.OutputState }

func (ShardingNetworkPrivateAddressNetworkAddressOutput) ElementType

func (ShardingNetworkPrivateAddressNetworkAddressOutput) ExpiredTime

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

func (ShardingNetworkPrivateAddressNetworkAddressOutput) IpAddress

The IP address of the instance.

func (ShardingNetworkPrivateAddressNetworkAddressOutput) NetworkAddress

The endpoint of the instance.

func (ShardingNetworkPrivateAddressNetworkAddressOutput) NetworkType

The network type.

func (ShardingNetworkPrivateAddressNetworkAddressOutput) NodeId

The ID of the Shard node or the ConfigServer node.

func (ShardingNetworkPrivateAddressNetworkAddressOutput) NodeType

The type of the node.

func (ShardingNetworkPrivateAddressNetworkAddressOutput) Port

The port number.

func (ShardingNetworkPrivateAddressNetworkAddressOutput) Role

The role of the node.

func (ShardingNetworkPrivateAddressNetworkAddressOutput) ToShardingNetworkPrivateAddressNetworkAddressOutput

func (o ShardingNetworkPrivateAddressNetworkAddressOutput) ToShardingNetworkPrivateAddressNetworkAddressOutput() ShardingNetworkPrivateAddressNetworkAddressOutput

func (ShardingNetworkPrivateAddressNetworkAddressOutput) ToShardingNetworkPrivateAddressNetworkAddressOutputWithContext

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

func (ShardingNetworkPrivateAddressNetworkAddressOutput) VpcId

The ID of the VPC.

func (ShardingNetworkPrivateAddressNetworkAddressOutput) VswitchId

The vSwitch ID of the VPC.

type ShardingNetworkPrivateAddressOutput

type ShardingNetworkPrivateAddressOutput struct{ *pulumi.OutputState }

func (ShardingNetworkPrivateAddressOutput) AccountName

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

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

The db instance id.

func (ShardingNetworkPrivateAddressOutput) ElementType

func (ShardingNetworkPrivateAddressOutput) NetworkAddresses

The endpoint of the instance.

func (ShardingNetworkPrivateAddressOutput) NodeId

The ID of the Shard node or the ConfigServer node.

func (ShardingNetworkPrivateAddressOutput) ToShardingNetworkPrivateAddressOutput

func (o ShardingNetworkPrivateAddressOutput) ToShardingNetworkPrivateAddressOutput() ShardingNetworkPrivateAddressOutput

func (ShardingNetworkPrivateAddressOutput) ToShardingNetworkPrivateAddressOutputWithContext

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

func (ShardingNetworkPrivateAddressOutput) ZoneId

The zone ID of the instance.

type ShardingNetworkPrivateAddressState

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

type ShardingNetworkPublicAddress

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 in v1.149.0+.

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

## 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

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

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

func (*ShardingNetworkPublicAddress) ElementType() reflect.Type

func (*ShardingNetworkPublicAddress) ToShardingNetworkPublicAddressOutput

func (i *ShardingNetworkPublicAddress) ToShardingNetworkPublicAddressOutput() ShardingNetworkPublicAddressOutput

func (*ShardingNetworkPublicAddress) ToShardingNetworkPublicAddressOutputWithContext

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

type ShardingNetworkPublicAddressArgs

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

type ShardingNetworkPublicAddressArray

type ShardingNetworkPublicAddressArray []ShardingNetworkPublicAddressInput

func (ShardingNetworkPublicAddressArray) ElementType

func (ShardingNetworkPublicAddressArray) ToShardingNetworkPublicAddressArrayOutput

func (i ShardingNetworkPublicAddressArray) ToShardingNetworkPublicAddressArrayOutput() ShardingNetworkPublicAddressArrayOutput

func (ShardingNetworkPublicAddressArray) ToShardingNetworkPublicAddressArrayOutputWithContext

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

type ShardingNetworkPublicAddressArrayInput

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

type ShardingNetworkPublicAddressArrayOutput struct{ *pulumi.OutputState }

func (ShardingNetworkPublicAddressArrayOutput) ElementType

func (ShardingNetworkPublicAddressArrayOutput) Index

func (ShardingNetworkPublicAddressArrayOutput) ToShardingNetworkPublicAddressArrayOutput

func (o ShardingNetworkPublicAddressArrayOutput) ToShardingNetworkPublicAddressArrayOutput() ShardingNetworkPublicAddressArrayOutput

func (ShardingNetworkPublicAddressArrayOutput) ToShardingNetworkPublicAddressArrayOutputWithContext

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

type ShardingNetworkPublicAddressInput

type ShardingNetworkPublicAddressInput interface {
	pulumi.Input

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

type ShardingNetworkPublicAddressMap

type ShardingNetworkPublicAddressMap map[string]ShardingNetworkPublicAddressInput

func (ShardingNetworkPublicAddressMap) ElementType

func (ShardingNetworkPublicAddressMap) ToShardingNetworkPublicAddressMapOutput

func (i ShardingNetworkPublicAddressMap) ToShardingNetworkPublicAddressMapOutput() ShardingNetworkPublicAddressMapOutput

func (ShardingNetworkPublicAddressMap) ToShardingNetworkPublicAddressMapOutputWithContext

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

type ShardingNetworkPublicAddressMapInput

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

type ShardingNetworkPublicAddressMapOutput struct{ *pulumi.OutputState }

func (ShardingNetworkPublicAddressMapOutput) ElementType

func (ShardingNetworkPublicAddressMapOutput) MapIndex

func (ShardingNetworkPublicAddressMapOutput) ToShardingNetworkPublicAddressMapOutput

func (o ShardingNetworkPublicAddressMapOutput) ToShardingNetworkPublicAddressMapOutput() ShardingNetworkPublicAddressMapOutput

func (ShardingNetworkPublicAddressMapOutput) ToShardingNetworkPublicAddressMapOutputWithContext

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

type ShardingNetworkPublicAddressNetworkAddress

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

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

func (ShardingNetworkPublicAddressNetworkAddressArgs) ToShardingNetworkPublicAddressNetworkAddressOutput

func (i ShardingNetworkPublicAddressNetworkAddressArgs) ToShardingNetworkPublicAddressNetworkAddressOutput() ShardingNetworkPublicAddressNetworkAddressOutput

func (ShardingNetworkPublicAddressNetworkAddressArgs) ToShardingNetworkPublicAddressNetworkAddressOutputWithContext

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

type ShardingNetworkPublicAddressNetworkAddressArray

type ShardingNetworkPublicAddressNetworkAddressArray []ShardingNetworkPublicAddressNetworkAddressInput

func (ShardingNetworkPublicAddressNetworkAddressArray) ElementType

func (ShardingNetworkPublicAddressNetworkAddressArray) ToShardingNetworkPublicAddressNetworkAddressArrayOutput

func (i ShardingNetworkPublicAddressNetworkAddressArray) ToShardingNetworkPublicAddressNetworkAddressArrayOutput() ShardingNetworkPublicAddressNetworkAddressArrayOutput

func (ShardingNetworkPublicAddressNetworkAddressArray) ToShardingNetworkPublicAddressNetworkAddressArrayOutputWithContext

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

type ShardingNetworkPublicAddressNetworkAddressArrayInput

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

type ShardingNetworkPublicAddressNetworkAddressArrayOutput struct{ *pulumi.OutputState }

func (ShardingNetworkPublicAddressNetworkAddressArrayOutput) ElementType

func (ShardingNetworkPublicAddressNetworkAddressArrayOutput) Index

func (ShardingNetworkPublicAddressNetworkAddressArrayOutput) ToShardingNetworkPublicAddressNetworkAddressArrayOutput

func (ShardingNetworkPublicAddressNetworkAddressArrayOutput) ToShardingNetworkPublicAddressNetworkAddressArrayOutputWithContext

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

type ShardingNetworkPublicAddressNetworkAddressInput

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

type ShardingNetworkPublicAddressNetworkAddressOutput struct{ *pulumi.OutputState }

func (ShardingNetworkPublicAddressNetworkAddressOutput) ElementType

func (ShardingNetworkPublicAddressNetworkAddressOutput) ExpiredTime

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

func (ShardingNetworkPublicAddressNetworkAddressOutput) IpAddress

The IP address of the instance.

func (ShardingNetworkPublicAddressNetworkAddressOutput) NetworkAddress

The endpoint of the instance.

func (ShardingNetworkPublicAddressNetworkAddressOutput) NetworkType

The network type.

func (ShardingNetworkPublicAddressNetworkAddressOutput) NodeId

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

func (ShardingNetworkPublicAddressNetworkAddressOutput) NodeType

The type of the node.

func (ShardingNetworkPublicAddressNetworkAddressOutput) Port

The port number.

func (ShardingNetworkPublicAddressNetworkAddressOutput) Role

The role of the node.

func (ShardingNetworkPublicAddressNetworkAddressOutput) ToShardingNetworkPublicAddressNetworkAddressOutput

func (o ShardingNetworkPublicAddressNetworkAddressOutput) ToShardingNetworkPublicAddressNetworkAddressOutput() ShardingNetworkPublicAddressNetworkAddressOutput

func (ShardingNetworkPublicAddressNetworkAddressOutput) ToShardingNetworkPublicAddressNetworkAddressOutputWithContext

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

func (ShardingNetworkPublicAddressNetworkAddressOutput) VpcId

The ID of the VPC.

func (ShardingNetworkPublicAddressNetworkAddressOutput) VswitchId

The vSwitch ID of the VPC.

type ShardingNetworkPublicAddressOutput

type ShardingNetworkPublicAddressOutput struct{ *pulumi.OutputState }

func (ShardingNetworkPublicAddressOutput) DbInstanceId

The ID of the instance.

func (ShardingNetworkPublicAddressOutput) ElementType

func (ShardingNetworkPublicAddressOutput) NetworkAddresses

The endpoint of the instance.

func (ShardingNetworkPublicAddressOutput) NodeId

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

func (ShardingNetworkPublicAddressOutput) ToShardingNetworkPublicAddressOutput

func (o ShardingNetworkPublicAddressOutput) ToShardingNetworkPublicAddressOutput() ShardingNetworkPublicAddressOutput

func (ShardingNetworkPublicAddressOutput) ToShardingNetworkPublicAddressOutputWithContext

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

type ShardingNetworkPublicAddressState

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

Jump to

Keyboard shortcuts

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