dcs

package
v0.0.8 Latest Latest
Warning

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

Go to latest
Published: Jul 28, 2023 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.2

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 GetFlavorsArgs

type GetFlavorsArgs struct {
	// The mode of a cache engine. The valid values are as follows:
	CacheMode *string `pulumi:"cacheMode"`
	// The total memory of the cache, in GB.
	// + **Redis4.0, Redis5.0 and Redis6.0**: Stand-alone and active/standby type instance values:
	//   `0.125`, `0.25`, `0.5`, `1`, `2`, `4`, `8`, `16`, `32` and `64`.
	//   Cluster instance specifications support `4`,`8`,`16`,`24`, `32`, `48`, `64`, `96`, `128`, `192`,
	//   `256`, `384`, `512`, `768` and `1024`.
	// + **Redis3.0**: Stand-alone and active/standby type instance values: `2`, `4`, `8`, `16`, `32` and `64`.
	//   Proxy cluster instance specifications support `64`, `128`, `256`, `512`, and `1024`.
	// + **Memcached**: Stand-alone and active/standby type instance values: `2`, `4`, `8`, `16`, `32` and `64`.
	Capacity float64 `pulumi:"capacity"`
	// The CPU architecture of cache instance.
	// Valid values *x86_64* and *aarch64*.
	CpuArchitecture *string `pulumi:"cpuArchitecture"`
	// The engine of the cache instance. Valid values are *Redis* and *Memcached*.
	// Default value is *Redis*.
	Engine *string `pulumi:"engine"`
	// The version of a cache engine.
	// It is mandatory when the engine is *Redis*, the value can be `3.0`, `4.0`, `5.0`, or `6.0`.
	EngineVersion *string `pulumi:"engineVersion"`
	// The flavor name of the cache instance.
	Name *string `pulumi:"name"`
	// Specifies the region in which to obtain the DCS flavors.
	// If omitted, the provider-level region will be used.
	Region *string `pulumi:"region"`
}

A collection of arguments for invoking getFlavors.

type GetFlavorsFlavor

type GetFlavorsFlavor struct {
	// An array of available zones where the cache specification can be used.
	AvailableZones []string `pulumi:"availableZones"`
	// The mode of a cache engine. The valid values are as follows:
	CacheMode string `pulumi:"cacheMode"`
	// The total memory of the cache, in GB.
	// + **Redis4.0, Redis5.0 and Redis6.0**: Stand-alone and active/standby type instance values:
	//   `0.125`, `0.25`, `0.5`, `1`, `2`, `4`, `8`, `16`, `32` and `64`.
	//   Cluster instance specifications support `4`,`8`,`16`,`24`, `32`, `48`, `64`, `96`, `128`, `192`,
	//   `256`, `384`, `512`, `768` and `1024`.
	// + **Redis3.0**: Stand-alone and active/standby type instance values: `2`, `4`, `8`, `16`, `32` and `64`.
	//   Proxy cluster instance specifications support `64`, `128`, `256`, `512`, and `1024`.
	// + **Memcached**: Stand-alone and active/standby type instance values: `2`, `4`, `8`, `16`, `32` and `64`.
	Capacity float64 `pulumi:"capacity"`
	// The charging modes for the specification cache instance.
	ChargingModes []string `pulumi:"chargingModes"`
	// The CPU architecture of cache instance.
	// Valid values *x86_64* and *aarch64*.
	CpuArchitecture string `pulumi:"cpuArchitecture"`
	// The engine of the cache instance. Valid values are *Redis* and *Memcached*.
	// Default value is *Redis*.
	Engine string `pulumi:"engine"`
	// Supported versions of the specification.
	EngineVersions string `pulumi:"engineVersions"`
	// Number of IP addresses corresponding to the specifications.
	IpCount int `pulumi:"ipCount"`
	// The flavor name of the cache instance.
	Name string `pulumi:"name"`
}

type GetFlavorsFlavorArgs

type GetFlavorsFlavorArgs struct {
	// An array of available zones where the cache specification can be used.
	AvailableZones pulumi.StringArrayInput `pulumi:"availableZones"`
	// The mode of a cache engine. The valid values are as follows:
	CacheMode pulumi.StringInput `pulumi:"cacheMode"`
	// The total memory of the cache, in GB.
	// + **Redis4.0, Redis5.0 and Redis6.0**: Stand-alone and active/standby type instance values:
	//   `0.125`, `0.25`, `0.5`, `1`, `2`, `4`, `8`, `16`, `32` and `64`.
	//   Cluster instance specifications support `4`,`8`,`16`,`24`, `32`, `48`, `64`, `96`, `128`, `192`,
	//   `256`, `384`, `512`, `768` and `1024`.
	// + **Redis3.0**: Stand-alone and active/standby type instance values: `2`, `4`, `8`, `16`, `32` and `64`.
	//   Proxy cluster instance specifications support `64`, `128`, `256`, `512`, and `1024`.
	// + **Memcached**: Stand-alone and active/standby type instance values: `2`, `4`, `8`, `16`, `32` and `64`.
	Capacity pulumi.Float64Input `pulumi:"capacity"`
	// The charging modes for the specification cache instance.
	ChargingModes pulumi.StringArrayInput `pulumi:"chargingModes"`
	// The CPU architecture of cache instance.
	// Valid values *x86_64* and *aarch64*.
	CpuArchitecture pulumi.StringInput `pulumi:"cpuArchitecture"`
	// The engine of the cache instance. Valid values are *Redis* and *Memcached*.
	// Default value is *Redis*.
	Engine pulumi.StringInput `pulumi:"engine"`
	// Supported versions of the specification.
	EngineVersions pulumi.StringInput `pulumi:"engineVersions"`
	// Number of IP addresses corresponding to the specifications.
	IpCount pulumi.IntInput `pulumi:"ipCount"`
	// The flavor name of the cache instance.
	Name pulumi.StringInput `pulumi:"name"`
}

func (GetFlavorsFlavorArgs) ElementType

func (GetFlavorsFlavorArgs) ElementType() reflect.Type

func (GetFlavorsFlavorArgs) ToGetFlavorsFlavorOutput

func (i GetFlavorsFlavorArgs) ToGetFlavorsFlavorOutput() GetFlavorsFlavorOutput

func (GetFlavorsFlavorArgs) ToGetFlavorsFlavorOutputWithContext

func (i GetFlavorsFlavorArgs) ToGetFlavorsFlavorOutputWithContext(ctx context.Context) GetFlavorsFlavorOutput

type GetFlavorsFlavorArray

type GetFlavorsFlavorArray []GetFlavorsFlavorInput

func (GetFlavorsFlavorArray) ElementType

func (GetFlavorsFlavorArray) ElementType() reflect.Type

func (GetFlavorsFlavorArray) ToGetFlavorsFlavorArrayOutput

func (i GetFlavorsFlavorArray) ToGetFlavorsFlavorArrayOutput() GetFlavorsFlavorArrayOutput

func (GetFlavorsFlavorArray) ToGetFlavorsFlavorArrayOutputWithContext

func (i GetFlavorsFlavorArray) ToGetFlavorsFlavorArrayOutputWithContext(ctx context.Context) GetFlavorsFlavorArrayOutput

type GetFlavorsFlavorArrayInput

type GetFlavorsFlavorArrayInput interface {
	pulumi.Input

	ToGetFlavorsFlavorArrayOutput() GetFlavorsFlavorArrayOutput
	ToGetFlavorsFlavorArrayOutputWithContext(context.Context) GetFlavorsFlavorArrayOutput
}

GetFlavorsFlavorArrayInput is an input type that accepts GetFlavorsFlavorArray and GetFlavorsFlavorArrayOutput values. You can construct a concrete instance of `GetFlavorsFlavorArrayInput` via:

GetFlavorsFlavorArray{ GetFlavorsFlavorArgs{...} }

type GetFlavorsFlavorArrayOutput

type GetFlavorsFlavorArrayOutput struct{ *pulumi.OutputState }

func (GetFlavorsFlavorArrayOutput) ElementType

func (GetFlavorsFlavorArrayOutput) Index

func (GetFlavorsFlavorArrayOutput) ToGetFlavorsFlavorArrayOutput

func (o GetFlavorsFlavorArrayOutput) ToGetFlavorsFlavorArrayOutput() GetFlavorsFlavorArrayOutput

func (GetFlavorsFlavorArrayOutput) ToGetFlavorsFlavorArrayOutputWithContext

func (o GetFlavorsFlavorArrayOutput) ToGetFlavorsFlavorArrayOutputWithContext(ctx context.Context) GetFlavorsFlavorArrayOutput

type GetFlavorsFlavorInput

type GetFlavorsFlavorInput interface {
	pulumi.Input

	ToGetFlavorsFlavorOutput() GetFlavorsFlavorOutput
	ToGetFlavorsFlavorOutputWithContext(context.Context) GetFlavorsFlavorOutput
}

GetFlavorsFlavorInput is an input type that accepts GetFlavorsFlavorArgs and GetFlavorsFlavorOutput values. You can construct a concrete instance of `GetFlavorsFlavorInput` via:

GetFlavorsFlavorArgs{...}

type GetFlavorsFlavorOutput

type GetFlavorsFlavorOutput struct{ *pulumi.OutputState }

func (GetFlavorsFlavorOutput) AvailableZones

func (o GetFlavorsFlavorOutput) AvailableZones() pulumi.StringArrayOutput

An array of available zones where the cache specification can be used.

func (GetFlavorsFlavorOutput) CacheMode

The mode of a cache engine. The valid values are as follows:

func (GetFlavorsFlavorOutput) Capacity

The total memory of the cache, in GB.

  • **Redis4.0, Redis5.0 and Redis6.0**: Stand-alone and active/standby type instance values: `0.125`, `0.25`, `0.5`, `1`, `2`, `4`, `8`, `16`, `32` and `64`. Cluster instance specifications support `4`,`8`,`16`,`24`, `32`, `48`, `64`, `96`, `128`, `192`, `256`, `384`, `512`, `768` and `1024`.
  • **Redis3.0**: Stand-alone and active/standby type instance values: `2`, `4`, `8`, `16`, `32` and `64`. Proxy cluster instance specifications support `64`, `128`, `256`, `512`, and `1024`.
  • **Memcached**: Stand-alone and active/standby type instance values: `2`, `4`, `8`, `16`, `32` and `64`.

func (GetFlavorsFlavorOutput) ChargingModes

The charging modes for the specification cache instance.

func (GetFlavorsFlavorOutput) CpuArchitecture

func (o GetFlavorsFlavorOutput) CpuArchitecture() pulumi.StringOutput

The CPU architecture of cache instance. Valid values *x86_64* and *aarch64*.

func (GetFlavorsFlavorOutput) ElementType

func (GetFlavorsFlavorOutput) ElementType() reflect.Type

func (GetFlavorsFlavorOutput) Engine

The engine of the cache instance. Valid values are *Redis* and *Memcached*. Default value is *Redis*.

func (GetFlavorsFlavorOutput) EngineVersions

func (o GetFlavorsFlavorOutput) EngineVersions() pulumi.StringOutput

Supported versions of the specification.

func (GetFlavorsFlavorOutput) IpCount

Number of IP addresses corresponding to the specifications.

func (GetFlavorsFlavorOutput) Name

The flavor name of the cache instance.

func (GetFlavorsFlavorOutput) ToGetFlavorsFlavorOutput

func (o GetFlavorsFlavorOutput) ToGetFlavorsFlavorOutput() GetFlavorsFlavorOutput

func (GetFlavorsFlavorOutput) ToGetFlavorsFlavorOutputWithContext

func (o GetFlavorsFlavorOutput) ToGetFlavorsFlavorOutputWithContext(ctx context.Context) GetFlavorsFlavorOutput

type GetFlavorsOutputArgs

type GetFlavorsOutputArgs struct {
	// The mode of a cache engine. The valid values are as follows:
	CacheMode pulumi.StringPtrInput `pulumi:"cacheMode"`
	// The total memory of the cache, in GB.
	// + **Redis4.0, Redis5.0 and Redis6.0**: Stand-alone and active/standby type instance values:
	//   `0.125`, `0.25`, `0.5`, `1`, `2`, `4`, `8`, `16`, `32` and `64`.
	//   Cluster instance specifications support `4`,`8`,`16`,`24`, `32`, `48`, `64`, `96`, `128`, `192`,
	//   `256`, `384`, `512`, `768` and `1024`.
	// + **Redis3.0**: Stand-alone and active/standby type instance values: `2`, `4`, `8`, `16`, `32` and `64`.
	//   Proxy cluster instance specifications support `64`, `128`, `256`, `512`, and `1024`.
	// + **Memcached**: Stand-alone and active/standby type instance values: `2`, `4`, `8`, `16`, `32` and `64`.
	Capacity pulumi.Float64Input `pulumi:"capacity"`
	// The CPU architecture of cache instance.
	// Valid values *x86_64* and *aarch64*.
	CpuArchitecture pulumi.StringPtrInput `pulumi:"cpuArchitecture"`
	// The engine of the cache instance. Valid values are *Redis* and *Memcached*.
	// Default value is *Redis*.
	Engine pulumi.StringPtrInput `pulumi:"engine"`
	// The version of a cache engine.
	// It is mandatory when the engine is *Redis*, the value can be `3.0`, `4.0`, `5.0`, or `6.0`.
	EngineVersion pulumi.StringPtrInput `pulumi:"engineVersion"`
	// The flavor name of the cache instance.
	Name pulumi.StringPtrInput `pulumi:"name"`
	// Specifies the region in which to obtain the DCS flavors.
	// If omitted, the provider-level region will be used.
	Region pulumi.StringPtrInput `pulumi:"region"`
}

A collection of arguments for invoking getFlavors.

func (GetFlavorsOutputArgs) ElementType

func (GetFlavorsOutputArgs) ElementType() reflect.Type

type GetFlavorsResult

type GetFlavorsResult struct {
	// The mode of a cache instance.
	CacheMode *string `pulumi:"cacheMode"`
	// The total memory of the cache, in GB.
	Capacity float64 `pulumi:"capacity"`
	// The CPU architecture of cache instance. Value is *x86_64* or *aarch64*.
	CpuArchitecture *string `pulumi:"cpuArchitecture"`
	// The engine of the cache instance. Value is *redis* or *memcached*.
	Engine        *string `pulumi:"engine"`
	EngineVersion *string `pulumi:"engineVersion"`
	// A list of DCS flavors.
	Flavors []GetFlavorsFlavor `pulumi:"flavors"`
	// The provider-assigned unique ID for this managed resource.
	Id string `pulumi:"id"`
	// The flavor name of the cache instance.
	Name   *string `pulumi:"name"`
	Region string  `pulumi:"region"`
}

A collection of values returned by getFlavors.

func GetFlavors

func GetFlavors(ctx *pulumi.Context, args *GetFlavorsArgs, opts ...pulumi.InvokeOption) (*GetFlavorsResult, error)

Use this data source to get a list of available DCS flavors.

## Example Usage

```go package main

import (

"github.com/huaweicloud/pulumi-huaweicloud/sdk/go/huaweicloud/Dcs"
"github.com/pulumi/pulumi-huaweicloud/sdk/go/huaweicloud/Dcs"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := Dcs.GetFlavors(ctx, &dcs.GetFlavorsArgs{
			Capacity: 4,
		}, nil)
		if err != nil {
			return err
		}
		return nil
	})
}

```

type GetFlavorsResultOutput

type GetFlavorsResultOutput struct{ *pulumi.OutputState }

A collection of values returned by getFlavors.

func (GetFlavorsResultOutput) CacheMode

The mode of a cache instance.

func (GetFlavorsResultOutput) Capacity

The total memory of the cache, in GB.

func (GetFlavorsResultOutput) CpuArchitecture

func (o GetFlavorsResultOutput) CpuArchitecture() pulumi.StringPtrOutput

The CPU architecture of cache instance. Value is *x86_64* or *aarch64*.

func (GetFlavorsResultOutput) ElementType

func (GetFlavorsResultOutput) ElementType() reflect.Type

func (GetFlavorsResultOutput) Engine

The engine of the cache instance. Value is *redis* or *memcached*.

func (GetFlavorsResultOutput) EngineVersion

func (o GetFlavorsResultOutput) EngineVersion() pulumi.StringPtrOutput

func (GetFlavorsResultOutput) Flavors

A list of DCS flavors.

func (GetFlavorsResultOutput) Id

The provider-assigned unique ID for this managed resource.

func (GetFlavorsResultOutput) Name

The flavor name of the cache instance.

func (GetFlavorsResultOutput) Region

func (GetFlavorsResultOutput) ToGetFlavorsResultOutput

func (o GetFlavorsResultOutput) ToGetFlavorsResultOutput() GetFlavorsResultOutput

func (GetFlavorsResultOutput) ToGetFlavorsResultOutputWithContext

func (o GetFlavorsResultOutput) ToGetFlavorsResultOutputWithContext(ctx context.Context) GetFlavorsResultOutput

type GetMaintainwindowArgs

type GetMaintainwindowArgs struct {
	// Specifies the time at which a maintenance time window starts.
	Begin *string `pulumi:"begin"`
	// Specifies whether a maintenance time window is set to the default time segment.
	Default *bool `pulumi:"default"`
	// Specifies the time at which a maintenance time window ends.
	End *string `pulumi:"end"`
	// The region in which to obtain the dcs maintainwindows. If omitted, the provider-level
	// region will be used.
	Region *string `pulumi:"region"`
	// Specifies the sequential number of a maintenance time window.
	Seq *int `pulumi:"seq"`
}

A collection of arguments for invoking getMaintainwindow.

type GetMaintainwindowOutputArgs

type GetMaintainwindowOutputArgs struct {
	// Specifies the time at which a maintenance time window starts.
	Begin pulumi.StringPtrInput `pulumi:"begin"`
	// Specifies whether a maintenance time window is set to the default time segment.
	Default pulumi.BoolPtrInput `pulumi:"default"`
	// Specifies the time at which a maintenance time window ends.
	End pulumi.StringPtrInput `pulumi:"end"`
	// The region in which to obtain the dcs maintainwindows. If omitted, the provider-level
	// region will be used.
	Region pulumi.StringPtrInput `pulumi:"region"`
	// Specifies the sequential number of a maintenance time window.
	Seq pulumi.IntPtrInput `pulumi:"seq"`
}

A collection of arguments for invoking getMaintainwindow.

func (GetMaintainwindowOutputArgs) ElementType

type GetMaintainwindowResult

type GetMaintainwindowResult struct {
	Begin   string `pulumi:"begin"`
	Default bool   `pulumi:"default"`
	End     string `pulumi:"end"`
	// The provider-assigned unique ID for this managed resource.
	Id     string `pulumi:"id"`
	Region string `pulumi:"region"`
	Seq    int    `pulumi:"seq"`
}

A collection of values returned by getMaintainwindow.

func GetMaintainwindow

func GetMaintainwindow(ctx *pulumi.Context, args *GetMaintainwindowArgs, opts ...pulumi.InvokeOption) (*GetMaintainwindowResult, error)

Use this data source to get the ID of an available DCS maintainwindow.

## Example Usage

```go package main

import (

"github.com/huaweicloud/pulumi-huaweicloud/sdk/go/huaweicloud/Dcs"
"github.com/pulumi/pulumi-huaweicloud/sdk/go/huaweicloud/Dcs"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := Dcs.GetMaintainwindow(ctx, &dcs.GetMaintainwindowArgs{
			Seq: pulumi.IntRef(1),
		}, nil)
		if err != nil {
			return err
		}
		return nil
	})
}

```

type GetMaintainwindowResultOutput

type GetMaintainwindowResultOutput struct{ *pulumi.OutputState }

A collection of values returned by getMaintainwindow.

func (GetMaintainwindowResultOutput) Begin

func (GetMaintainwindowResultOutput) Default

func (GetMaintainwindowResultOutput) ElementType

func (GetMaintainwindowResultOutput) End

func (GetMaintainwindowResultOutput) Id

The provider-assigned unique ID for this managed resource.

func (GetMaintainwindowResultOutput) Region

func (GetMaintainwindowResultOutput) Seq

func (GetMaintainwindowResultOutput) ToGetMaintainwindowResultOutput

func (o GetMaintainwindowResultOutput) ToGetMaintainwindowResultOutput() GetMaintainwindowResultOutput

func (GetMaintainwindowResultOutput) ToGetMaintainwindowResultOutputWithContext

func (o GetMaintainwindowResultOutput) ToGetMaintainwindowResultOutputWithContext(ctx context.Context) GetMaintainwindowResultOutput

type Instance

type Instance struct {
	pulumi.CustomResourceState

	// Specifies the username used for accessing a DCS Memcached instance.
	// If the cache engine is *Redis*, you do not need to set this parameter.
	// The username starts with a letter, consists of 1 to 64 characters, and supports only letters, digits, and
	// hyphens (-). Changing this creates a new instance.
	AccessUser pulumi.StringOutput `pulumi:"accessUser"`
	// Deprecated: Deprecated
	AutoPay pulumi.StringPtrOutput `pulumi:"autoPay"`
	// Specifies whether auto renew is enabled.
	// Valid values are `true` and `false`, defaults to `false`.
	AutoRenew pulumi.StringPtrOutput `pulumi:"autoRenew"`
	// The code of the AZ where the cache node resides.
	// Master/Standby, Proxy Cluster, and Redis Cluster DCS instances support cross-AZ deployment.
	// You can specify an AZ for the standby node. When specifying AZs for nodes, use commas (,) to separate AZs.
	// Changing this creates a new instance.
	AvailabilityZones pulumi.StringArrayOutput `pulumi:"availabilityZones"`
	// Deprecated: Deprecated, please use `availability_zones` instead
	AvailableZones pulumi.StringArrayOutput `pulumi:"availableZones"`
	// Day in a week on which backup starts, the value ranges from 1 to 7.
	// Where: 1 indicates Monday; 7 indicates Sunday.
	//
	// Deprecated: Deprecated, please use `backup_policy` instead
	BackupAts pulumi.IntArrayOutput `pulumi:"backupAts"`
	// Specifies the backup configuration to be used with the instance.
	// The structure is described below.
	BackupPolicy InstanceBackupPolicyPtrOutput `pulumi:"backupPolicy"`
	// Backup type. Default value is `auto`. The valid values are as follows:
	// + `auto`: automatic backup.
	// + `manual`: manual backup.
	//
	// Deprecated: Deprecated, please use `backup_policy` instead
	BackupType pulumi.StringPtrOutput `pulumi:"backupType"`
	// Time at which backup starts.
	// Format: `hh24:00-hh24:00`, "00:00-01:00" indicates that backup starts at 00:00:00.
	//
	// Deprecated: Deprecated, please use `backup_policy` instead
	BeginAt pulumi.StringPtrOutput `pulumi:"beginAt"`
	// Specifies the cache capacity. Unit: GB.
	// + **Redis4.0, Redis5.0 and Redis6.0**: Stand-alone and active/standby type instance values: `0.125`, `0.25`,
	//   `0.5`, `1`, `2`, `4`, `8`, `16`, `32` and `64`.
	//   Cluster instance specifications support `4`,`8`,`16`, `24`, `32`, `48`, `64`, `96`, `128`, `192`, `256`,
	//   `384`, `512`, `768` and `1024`.
	// + **Redis3.0**: Stand-alone and active/standby type instance values: `2`, `4`, `8`, `16`, `32` and `64`.
	//   Proxy cluster instance specifications support `64`, `128`, `256`, `512`, and `1024`.
	// + **Memcached**: Stand-alone and active/standby type instance values: `2`, `4`, `8`, `16`, `32` and `64`.
	Capacity pulumi.Float64Output `pulumi:"capacity"`
	// Specifies the charging mode of the redis instance.
	// The valid values are as follows:
	// + `prePaid`: indicates the yearly/monthly billing mode.
	// + `postPaid`: indicates the pay-per-use billing mode.
	//   Default value is `postPaid`.
	//   Changing this creates a new instance.
	ChargingMode pulumi.StringOutput `pulumi:"chargingMode"`
	// Specifies the ID of the replica to delete. This parameter is mandatory when
	// you delete replicas of a master/standby DCS Redis 4.0 or 5.0 instance. Currently, only one replica can be deleted
	// at a time.
	DeletedNodes pulumi.StringPtrOutput `pulumi:"deletedNodes"`
	// Specifies the description of an instance.
	// It is a string that contains a maximum of 1024 characters.
	Description pulumi.StringOutput `pulumi:"description"`
	// Domain name of the instance. Usually, we use domain name and port to connect to the DCS instances.
	DomainName pulumi.StringOutput `pulumi:"domainName"`
	// Specifies a cache engine. Options: *Redis* and *Memcached*.
	// Changing this creates a new instance.
	Engine pulumi.StringOutput `pulumi:"engine"`
	// Specifies the version of a cache engine.
	// It is mandatory when the engine is *Redis*, the value can be 3.0, 4.0, 5.0 or 6.0.
	// Changing this creates a new instance.
	EngineVersion pulumi.StringPtrOutput `pulumi:"engineVersion"`
	// The enterprise project id of the dcs instance.
	// Changing this creates a new instance.
	EnterpriseProjectId pulumi.StringOutput `pulumi:"enterpriseProjectId"`
	// Deprecated: Deprecated, this is a non-public attribute.
	EnterpriseProjectName pulumi.StringOutput `pulumi:"enterpriseProjectName"`
	// The flavor of the cache instance, which including the total memory, available memory,
	// maximum number of connections allowed, maximum/assured bandwidth and reference performance.
	// It also includes the modes of Redis instances. You can query the *flavor* as follows:
	// + It can be obtained through this data source `Dcs.getFlavors`.
	// + Query some flavors
	//   in [DCS Instance Specifications](https://support.huaweicloud.com/intl/en-us/productdesc-dcs/dcs-pd-200713003.html)
	// + Log in to the DCS console, click *Buy DCS Instance*, and find the corresponding instance specification.
	Flavor pulumi.StringOutput `pulumi:"flavor"`
	// Deprecated: Deprecated, please us `engine_version` instead.
	InternalVersion pulumi.StringOutput `pulumi:"internalVersion"`
	// Deprecated: Deprecated, please us `private_ip` instead.
	Ip pulumi.StringOutput `pulumi:"ip"`
	// Time at which the maintenance time window starts.
	// The valid values are `22:00:00`, `02:00:00`, `06:00:00`, `10:00:00`, `14:00:00` and `18:00:00`.
	// Default value is `02:00:00`.
	// + The start time and end time of a maintenance time window must indicate the time segment of a supported maintenance
	//   time window.
	// + Parameters `maintainBegin` and `maintainEnd` must be set in pairs.
	// + If parameter maintainBegin is left blank, parameter maintainEnd is also blank.
	//   In this case, the system automatically allocates the default start time 02:00:00.
	MaintainBegin pulumi.StringPtrOutput `pulumi:"maintainBegin"`
	// Time at which the maintenance time window ends.
	// The valid values are `22:00:00`, `02:00:00`, `06:00:00`, `10:00:00`, `14:00:00` and `18:00:00`.
	// Default value is `06:00:00`.
	// + The start time and end time of a maintenance time window must indicate the time segment of a supported maintenance
	//   time window.
	// + The end time is four hours later than the start time.
	//   For example, if the start time is 22:00:00, the end time is 02:00:00.
	// + Parameters `maintainBegin` and `maintainEnd` must be set in pairs.
	// + If parameter maintainEnd is left blank, parameter maintainBegin is also blank.
	//   In this case, the system automatically allocates the default end time 06:00:00.
	MaintainEnd pulumi.StringPtrOutput `pulumi:"maintainEnd"`
	// Total memory size. Unit: MB.
	MaxMemory pulumi.IntOutput `pulumi:"maxMemory"`
	// Specifies the name of an instance.
	// The name must be 4 to 64 characters and start with a letter.
	// Only chinese, letters (case-insensitive), digits, underscores (_) ,and hyphens (-) are allowed.
	Name pulumi.StringOutput `pulumi:"name"`
	// The ID of the order that created the instance.
	OrderId pulumi.StringOutput `pulumi:"orderId"`
	// Specifies the password of a DCS instance.
	// The password of a DCS instance must meet the following complexity requirements:
	// + Must be a string of 8 to 32 bits in length.
	// + Must contain three combinations of the following four characters: Lower case letters, uppercase letter, digital,
	//   Special characters include (`~!@#$^&*()-_=+\\|{}:,<.>/?).
	// + The new password cannot be the same as the old password.
	Password pulumi.StringPtrOutput `pulumi:"password"`
	// Specifies the charging period of the instance.
	// If `periodUnit` is set to *month*, the value ranges from 1 to 9.
	// If `periodUnit` is set to *year*, the value ranges from 1 to 3.
	// This parameter is mandatory if `chargingMode` is set to *prePaid*.
	// Changing this creates a new instance.
	Period pulumi.IntPtrOutput `pulumi:"period"`
	// Interval at which backup is performed. Default value is `weekly`.
	// Currently, only weekly backup is supported.
	//
	// Deprecated: Please use `backup_policy` instead
	PeriodType pulumi.StringPtrOutput `pulumi:"periodType"`
	// Specifies the charging period unit of the instance.
	// Valid values are *month* and *year*. This parameter is mandatory if `chargingMode` is set to *prePaid*.
	// Changing this creates a new instance.
	PeriodUnit pulumi.StringPtrOutput `pulumi:"periodUnit"`
	// Port customization, which is supported only by Redis 4.0 and Redis 5.0 instances.
	// Redis instance defaults to 6379. Memcached instance does not use this argument.
	Port pulumi.IntOutput `pulumi:"port"`
	// The IP address of the DCS instance,
	// which can only be the currently available IP address the selected subnet.
	// You can specify an available IP for the Redis instance (except for the Redis Cluster type).
	// If omitted, the system will automatically allocate an available IP address to the Redis instance.
	// Changing this creates a new instance resource.
	PrivateIp pulumi.StringOutput `pulumi:"privateIp"`
	// Deprecated: Deprecated, please use `flavor` instead
	ProductId pulumi.StringOutput `pulumi:"productId"`
	// Specifies the region in which to create the DCS instance resource.
	// If omitted, the provider-level region will be used. Changing this creates a new DCS instance resource.
	Region pulumi.StringOutput `pulumi:"region"`
	// Critical command renaming, which is supported only by Redis 4.0 and
	// Redis 5.0 instances but not by Redis 3.0 instance.
	// The valid commands that can be renamed are: **command**, **keys**, **flushdb**, **flushall** and **hgetall**.
	RenameCommands pulumi.StringMapOutput `pulumi:"renameCommands"`
	// Specifies IP addresses to retain. Mandatory during cluster scale-in. If this
	// parameter is not set, the system randomly deletes unnecessary shards.
	ReservedIps pulumi.StringArrayOutput `pulumi:"reservedIps"`
	// Retention time. Unit: day, the value ranges from 1 to 7.
	// This parameter is required if the backupType is **auto**.
	//
	// Deprecated: Deprecated, please use `backup_policy` instead
	SaveDays pulumi.IntPtrOutput `pulumi:"saveDays"`
	// The ID of the security group which the instance belongs to.
	// This parameter is mandatory for Memcached and Redis 3.0 version.
	SecurityGroupId pulumi.StringPtrOutput `pulumi:"securityGroupId"`
	// The name of security group which the instance belongs to.
	SecurityGroupName pulumi.StringOutput `pulumi:"securityGroupName"`
	// Cache instance status. The valid values are as follows:
	// + `RUNNING`: The instance is running properly.
	//   Only instances in the Running state can provide in-memory cache service.
	// + `ERROR`: The instance is not running properly.
	// + `RESTARTING`: The instance is being restarted.
	// + `FROZEN`: The instance has been frozen due to low balance.
	//   You can unfreeze the instance by recharging your account in My Order.
	// + `EXTENDING`: The instance is being scaled up.
	// + `RESTORING`: The instance data is being restored.
	// + `FLUSHING`: The DCS instance is being cleared.
	Status pulumi.StringOutput `pulumi:"status"`
	// The ID of subnet which the instance belongs to.
	// Changing this creates a new instance resource.
	SubnetId pulumi.StringOutput `pulumi:"subnetId"`
	// The name of subnet which the instance belongs to.
	SubnetName pulumi.StringOutput `pulumi:"subnetName"`
	// The key/value pairs to associate with the dcs instance.
	Tags pulumi.StringMapOutput `pulumi:"tags"`
	// The Parameter Template ID.
	// Changing this creates a new instance resource.
	TemplateId pulumi.StringPtrOutput `pulumi:"templateId"`
	// Size of the used memory. Unit: MB.
	UsedMemory pulumi.IntOutput `pulumi:"usedMemory"`
	// Deprecated: Deprecated
	UserId pulumi.StringOutput `pulumi:"userId"`
	// Deprecated: Deprecated
	UserName pulumi.StringOutput `pulumi:"userName"`
	// The ID of VPC which the instance belongs to.
	// Changing this creates a new instance resource.
	VpcId pulumi.StringOutput `pulumi:"vpcId"`
	// The name of VPC which the instance belongs to.
	VpcName pulumi.StringOutput `pulumi:"vpcName"`
	// Enable or disable the IP address whitelists. Defaults to true.
	// If the whitelist is disabled, all IP addresses connected to the VPC can access the instance.
	WhitelistEnable pulumi.BoolPtrOutput `pulumi:"whitelistEnable"`
	// Specifies the IP addresses which can access the instance.
	// This parameter is valid for Redis 4.0 and 5.0 versions. The structure is described below.
	Whitelists InstanceWhitelistArrayOutput `pulumi:"whitelists"`
}

Manages a DCS instance within HuaweiCloud.

!> **WARNING:** DCS for Memcached is about to become unavailable and is no longer sold in some regions. You can use DCS for Redis 4.0, 5.0 or 6.0 instead. It is not possible to create Memcached instances through this resource. You can use this resource to manage Memcached instances that exist in HuaweiCloud.

## Example Usage ### Create a single mode Redis instance

```go package main

import (

"github.com/huaweicloud/pulumi-huaweicloud/sdk/go/huaweicloud/Dcs"
"github.com/pulumi/pulumi-huaweicloud/sdk/go/huaweicloud/Dcs"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		cfg := config.New(ctx, "")
		vpcId := cfg.RequireObject("vpcId")
		subnetId := cfg.RequireObject("subnetId")
		singleFlavors, err := Dcs.GetFlavors(ctx, &dcs.GetFlavorsArgs{
			CacheMode: pulumi.StringRef("single"),
			Capacity:  0.125,
		}, nil)
		if err != nil {
			return err
		}
		_, err = Dcs.NewInstance(ctx, "instance1", &Dcs.InstanceArgs{
			Engine:        pulumi.String("Redis"),
			EngineVersion: pulumi.String("5.0"),
			Capacity:      pulumi.Float64(singleFlavors.Capacity),
			Flavor:        pulumi.String(singleFlavors.Flavors[0].Name),
			AvailabilityZones: pulumi.StringArray{
				pulumi.String("cn-north-1a"),
			},
			Password: pulumi.String("YourPassword@123"),
			VpcId:    pulumi.Any(vpcId),
			SubnetId: pulumi.Any(subnetId),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

``` ### Create Master/Standby mode Redis instances with backup policy

```go package main

import (

"github.com/huaweicloud/pulumi-huaweicloud/sdk/go/huaweicloud/Dcs"
"github.com/pulumi/pulumi-huaweicloud/sdk/go/huaweicloud/Dcs"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi/config"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		cfg := config.New(ctx, "")
		vpcId := cfg.RequireObject("vpcId")
		subnetId := cfg.RequireObject("subnetId")
		_, err := Dcs.NewInstance(ctx, "instance2", &Dcs.InstanceArgs{
			Engine:        pulumi.String("Redis"),
			EngineVersion: pulumi.String("5.0"),
			Capacity:      pulumi.Float64(4),
			Flavor:        pulumi.String("redis.ha.xu1.large.r2.4"),
			AvailabilityZones: pulumi.StringArray{
				pulumi.String("cn-north-1a"),
				pulumi.String("cn-north-1b"),
			},
			Password:     pulumi.String("YourPassword@123"),
			VpcId:        pulumi.Any(vpcId),
			SubnetId:     pulumi.Any(subnetId),
			ChargingMode: pulumi.String("prePaid"),
			PeriodUnit:   pulumi.String("month"),
			AutoRenew:    pulumi.String("true"),
			Period:       pulumi.Int(1),
			BackupPolicy: &dcs.InstanceBackupPolicyArgs{
				BackupType: pulumi.String("auto"),
				SaveDays:   pulumi.Int(3),
				BackupAts: pulumi.IntArray{
					pulumi.Int(1),
					pulumi.Int(3),
					pulumi.Int(5),
					pulumi.Int(7),
				},
				BeginAt: pulumi.String("02:00-04:00"),
			},
			Whitelists: dcs.InstanceWhitelistArray{
				&dcs.InstanceWhitelistArgs{
					GroupName: pulumi.String("test-group1"),
					IpAddresses: pulumi.StringArray{
						pulumi.String("192.168.10.100"),
						pulumi.String("192.168.0.0/24"),
					},
				},
				&dcs.InstanceWhitelistArgs{
					GroupName: pulumi.String("test-group2"),
					IpAddresses: pulumi.StringArray{
						pulumi.String("172.16.10.100"),
						pulumi.String("172.16.0.0/24"),
					},
				},
			},
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

DCS instance can be imported using the `id`, e.g. bash

```sh

$ pulumi import huaweicloud:Dcs/instance:Instance instance_1 80e373f9-872e-4046-aae9-ccd9ddc55511

```

Note that the imported state may not be identical to your resource definition, due to some attributes missing from the API response, security or some other reason. The missing attributes include`password`, `auto_renew`, `period`, `period_unit`, `rename_commands`, `internal_version`, `save_days`, `backup_type`, `begin_at`, `period_type`, `backup_at`. It is generally recommended running `terraform plan` after importing an instance. You can then decide if changes should be applied to the instance, or the resource definition should be updated to align with the instance. Also you can ignore changes as below. resource "huaweicloud_dcs_instance" "instance_1" {

...

lifecycle {

ignore_changes = [

password, rename_commands,

]

} }

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 {
	// Specifies the username used for accessing a DCS Memcached instance.
	// If the cache engine is *Redis*, you do not need to set this parameter.
	// The username starts with a letter, consists of 1 to 64 characters, and supports only letters, digits, and
	// hyphens (-). Changing this creates a new instance.
	AccessUser pulumi.StringPtrInput
	// Deprecated: Deprecated
	AutoPay pulumi.StringPtrInput
	// Specifies whether auto renew is enabled.
	// Valid values are `true` and `false`, defaults to `false`.
	AutoRenew pulumi.StringPtrInput
	// The code of the AZ where the cache node resides.
	// Master/Standby, Proxy Cluster, and Redis Cluster DCS instances support cross-AZ deployment.
	// You can specify an AZ for the standby node. When specifying AZs for nodes, use commas (,) to separate AZs.
	// Changing this creates a new instance.
	AvailabilityZones pulumi.StringArrayInput
	// Deprecated: Deprecated, please use `availability_zones` instead
	AvailableZones pulumi.StringArrayInput
	// Day in a week on which backup starts, the value ranges from 1 to 7.
	// Where: 1 indicates Monday; 7 indicates Sunday.
	//
	// Deprecated: Deprecated, please use `backup_policy` instead
	BackupAts pulumi.IntArrayInput
	// Specifies the backup configuration to be used with the instance.
	// The structure is described below.
	BackupPolicy InstanceBackupPolicyPtrInput
	// Backup type. Default value is `auto`. The valid values are as follows:
	// + `auto`: automatic backup.
	// + `manual`: manual backup.
	//
	// Deprecated: Deprecated, please use `backup_policy` instead
	BackupType pulumi.StringPtrInput
	// Time at which backup starts.
	// Format: `hh24:00-hh24:00`, "00:00-01:00" indicates that backup starts at 00:00:00.
	//
	// Deprecated: Deprecated, please use `backup_policy` instead
	BeginAt pulumi.StringPtrInput
	// Specifies the cache capacity. Unit: GB.
	// + **Redis4.0, Redis5.0 and Redis6.0**: Stand-alone and active/standby type instance values: `0.125`, `0.25`,
	//   `0.5`, `1`, `2`, `4`, `8`, `16`, `32` and `64`.
	//   Cluster instance specifications support `4`,`8`,`16`, `24`, `32`, `48`, `64`, `96`, `128`, `192`, `256`,
	//   `384`, `512`, `768` and `1024`.
	// + **Redis3.0**: Stand-alone and active/standby type instance values: `2`, `4`, `8`, `16`, `32` and `64`.
	//   Proxy cluster instance specifications support `64`, `128`, `256`, `512`, and `1024`.
	// + **Memcached**: Stand-alone and active/standby type instance values: `2`, `4`, `8`, `16`, `32` and `64`.
	Capacity pulumi.Float64Input
	// Specifies the charging mode of the redis instance.
	// The valid values are as follows:
	// + `prePaid`: indicates the yearly/monthly billing mode.
	// + `postPaid`: indicates the pay-per-use billing mode.
	//   Default value is `postPaid`.
	//   Changing this creates a new instance.
	ChargingMode pulumi.StringPtrInput
	// Specifies the ID of the replica to delete. This parameter is mandatory when
	// you delete replicas of a master/standby DCS Redis 4.0 or 5.0 instance. Currently, only one replica can be deleted
	// at a time.
	DeletedNodes pulumi.StringPtrInput
	// Specifies the description of an instance.
	// It is a string that contains a maximum of 1024 characters.
	Description pulumi.StringPtrInput
	// Specifies a cache engine. Options: *Redis* and *Memcached*.
	// Changing this creates a new instance.
	Engine pulumi.StringInput
	// Specifies the version of a cache engine.
	// It is mandatory when the engine is *Redis*, the value can be 3.0, 4.0, 5.0 or 6.0.
	// Changing this creates a new instance.
	EngineVersion pulumi.StringPtrInput
	// The enterprise project id of the dcs instance.
	// Changing this creates a new instance.
	EnterpriseProjectId pulumi.StringPtrInput
	// Deprecated: Deprecated, this is a non-public attribute.
	EnterpriseProjectName pulumi.StringPtrInput
	// The flavor of the cache instance, which including the total memory, available memory,
	// maximum number of connections allowed, maximum/assured bandwidth and reference performance.
	// It also includes the modes of Redis instances. You can query the *flavor* as follows:
	// + It can be obtained through this data source `Dcs.getFlavors`.
	// + Query some flavors
	//   in [DCS Instance Specifications](https://support.huaweicloud.com/intl/en-us/productdesc-dcs/dcs-pd-200713003.html)
	// + Log in to the DCS console, click *Buy DCS Instance*, and find the corresponding instance specification.
	Flavor pulumi.StringPtrInput
	// Time at which the maintenance time window starts.
	// The valid values are `22:00:00`, `02:00:00`, `06:00:00`, `10:00:00`, `14:00:00` and `18:00:00`.
	// Default value is `02:00:00`.
	// + The start time and end time of a maintenance time window must indicate the time segment of a supported maintenance
	//   time window.
	// + Parameters `maintainBegin` and `maintainEnd` must be set in pairs.
	// + If parameter maintainBegin is left blank, parameter maintainEnd is also blank.
	//   In this case, the system automatically allocates the default start time 02:00:00.
	MaintainBegin pulumi.StringPtrInput
	// Time at which the maintenance time window ends.
	// The valid values are `22:00:00`, `02:00:00`, `06:00:00`, `10:00:00`, `14:00:00` and `18:00:00`.
	// Default value is `06:00:00`.
	// + The start time and end time of a maintenance time window must indicate the time segment of a supported maintenance
	//   time window.
	// + The end time is four hours later than the start time.
	//   For example, if the start time is 22:00:00, the end time is 02:00:00.
	// + Parameters `maintainBegin` and `maintainEnd` must be set in pairs.
	// + If parameter maintainEnd is left blank, parameter maintainBegin is also blank.
	//   In this case, the system automatically allocates the default end time 06:00:00.
	MaintainEnd pulumi.StringPtrInput
	// Specifies the name of an instance.
	// The name must be 4 to 64 characters and start with a letter.
	// Only chinese, letters (case-insensitive), digits, underscores (_) ,and hyphens (-) are allowed.
	Name pulumi.StringPtrInput
	// Specifies the password of a DCS instance.
	// The password of a DCS instance must meet the following complexity requirements:
	// + Must be a string of 8 to 32 bits in length.
	// + Must contain three combinations of the following four characters: Lower case letters, uppercase letter, digital,
	//   Special characters include (`~!@#$^&*()-_=+\\|{}:,<.>/?).
	// + The new password cannot be the same as the old password.
	Password pulumi.StringPtrInput
	// Specifies the charging period of the instance.
	// If `periodUnit` is set to *month*, the value ranges from 1 to 9.
	// If `periodUnit` is set to *year*, the value ranges from 1 to 3.
	// This parameter is mandatory if `chargingMode` is set to *prePaid*.
	// Changing this creates a new instance.
	Period pulumi.IntPtrInput
	// Interval at which backup is performed. Default value is `weekly`.
	// Currently, only weekly backup is supported.
	//
	// Deprecated: Please use `backup_policy` instead
	PeriodType pulumi.StringPtrInput
	// Specifies the charging period unit of the instance.
	// Valid values are *month* and *year*. This parameter is mandatory if `chargingMode` is set to *prePaid*.
	// Changing this creates a new instance.
	PeriodUnit pulumi.StringPtrInput
	// Port customization, which is supported only by Redis 4.0 and Redis 5.0 instances.
	// Redis instance defaults to 6379. Memcached instance does not use this argument.
	Port pulumi.IntPtrInput
	// The IP address of the DCS instance,
	// which can only be the currently available IP address the selected subnet.
	// You can specify an available IP for the Redis instance (except for the Redis Cluster type).
	// If omitted, the system will automatically allocate an available IP address to the Redis instance.
	// Changing this creates a new instance resource.
	PrivateIp pulumi.StringPtrInput
	// Deprecated: Deprecated, please use `flavor` instead
	ProductId pulumi.StringPtrInput
	// Specifies the region in which to create the DCS instance resource.
	// If omitted, the provider-level region will be used. Changing this creates a new DCS instance resource.
	Region pulumi.StringPtrInput
	// Critical command renaming, which is supported only by Redis 4.0 and
	// Redis 5.0 instances but not by Redis 3.0 instance.
	// The valid commands that can be renamed are: **command**, **keys**, **flushdb**, **flushall** and **hgetall**.
	RenameCommands pulumi.StringMapInput
	// Specifies IP addresses to retain. Mandatory during cluster scale-in. If this
	// parameter is not set, the system randomly deletes unnecessary shards.
	ReservedIps pulumi.StringArrayInput
	// Retention time. Unit: day, the value ranges from 1 to 7.
	// This parameter is required if the backupType is **auto**.
	//
	// Deprecated: Deprecated, please use `backup_policy` instead
	SaveDays pulumi.IntPtrInput
	// The ID of the security group which the instance belongs to.
	// This parameter is mandatory for Memcached and Redis 3.0 version.
	SecurityGroupId pulumi.StringPtrInput
	// The ID of subnet which the instance belongs to.
	// Changing this creates a new instance resource.
	SubnetId pulumi.StringInput
	// The key/value pairs to associate with the dcs instance.
	Tags pulumi.StringMapInput
	// The Parameter Template ID.
	// Changing this creates a new instance resource.
	TemplateId pulumi.StringPtrInput
	// The ID of VPC which the instance belongs to.
	// Changing this creates a new instance resource.
	VpcId pulumi.StringInput
	// Enable or disable the IP address whitelists. Defaults to true.
	// If the whitelist is disabled, all IP addresses connected to the VPC can access the instance.
	WhitelistEnable pulumi.BoolPtrInput
	// Specifies the IP addresses which can access the instance.
	// This parameter is valid for Redis 4.0 and 5.0 versions. The structure is described below.
	Whitelists InstanceWhitelistArrayInput
}

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 InstanceBackupPolicy

type InstanceBackupPolicy struct {
	// Day in a week on which backup starts, the value ranges from 1 to 7.
	// Where: 1 indicates Monday; 7 indicates Sunday.
	BackupAts []int `pulumi:"backupAts"`
	// Backup type. Default value is `auto`. The valid values are as follows:
	// + `auto`: automatic backup.
	// + `manual`: manual backup.
	BackupType *string `pulumi:"backupType"`
	// Time at which backup starts.
	// Format: `hh24:00-hh24:00`, "00:00-01:00" indicates that backup starts at 00:00:00.
	BeginAt string `pulumi:"beginAt"`
	// Interval at which backup is performed. Default value is `weekly`.
	// Currently, only weekly backup is supported.
	PeriodType *string `pulumi:"periodType"`
	// Retention time. Unit: day, the value ranges from 1 to 7.
	// This parameter is required if the backupType is **auto**.
	SaveDays *int `pulumi:"saveDays"`
}

type InstanceBackupPolicyArgs

type InstanceBackupPolicyArgs struct {
	// Day in a week on which backup starts, the value ranges from 1 to 7.
	// Where: 1 indicates Monday; 7 indicates Sunday.
	BackupAts pulumi.IntArrayInput `pulumi:"backupAts"`
	// Backup type. Default value is `auto`. The valid values are as follows:
	// + `auto`: automatic backup.
	// + `manual`: manual backup.
	BackupType pulumi.StringPtrInput `pulumi:"backupType"`
	// Time at which backup starts.
	// Format: `hh24:00-hh24:00`, "00:00-01:00" indicates that backup starts at 00:00:00.
	BeginAt pulumi.StringInput `pulumi:"beginAt"`
	// Interval at which backup is performed. Default value is `weekly`.
	// Currently, only weekly backup is supported.
	PeriodType pulumi.StringPtrInput `pulumi:"periodType"`
	// Retention time. Unit: day, the value ranges from 1 to 7.
	// This parameter is required if the backupType is **auto**.
	SaveDays pulumi.IntPtrInput `pulumi:"saveDays"`
}

func (InstanceBackupPolicyArgs) ElementType

func (InstanceBackupPolicyArgs) ElementType() reflect.Type

func (InstanceBackupPolicyArgs) ToInstanceBackupPolicyOutput

func (i InstanceBackupPolicyArgs) ToInstanceBackupPolicyOutput() InstanceBackupPolicyOutput

func (InstanceBackupPolicyArgs) ToInstanceBackupPolicyOutputWithContext

func (i InstanceBackupPolicyArgs) ToInstanceBackupPolicyOutputWithContext(ctx context.Context) InstanceBackupPolicyOutput

func (InstanceBackupPolicyArgs) ToInstanceBackupPolicyPtrOutput

func (i InstanceBackupPolicyArgs) ToInstanceBackupPolicyPtrOutput() InstanceBackupPolicyPtrOutput

func (InstanceBackupPolicyArgs) ToInstanceBackupPolicyPtrOutputWithContext

func (i InstanceBackupPolicyArgs) ToInstanceBackupPolicyPtrOutputWithContext(ctx context.Context) InstanceBackupPolicyPtrOutput

type InstanceBackupPolicyInput

type InstanceBackupPolicyInput interface {
	pulumi.Input

	ToInstanceBackupPolicyOutput() InstanceBackupPolicyOutput
	ToInstanceBackupPolicyOutputWithContext(context.Context) InstanceBackupPolicyOutput
}

InstanceBackupPolicyInput is an input type that accepts InstanceBackupPolicyArgs and InstanceBackupPolicyOutput values. You can construct a concrete instance of `InstanceBackupPolicyInput` via:

InstanceBackupPolicyArgs{...}

type InstanceBackupPolicyOutput

type InstanceBackupPolicyOutput struct{ *pulumi.OutputState }

func (InstanceBackupPolicyOutput) BackupAts

Day in a week on which backup starts, the value ranges from 1 to 7. Where: 1 indicates Monday; 7 indicates Sunday.

func (InstanceBackupPolicyOutput) BackupType

Backup type. Default value is `auto`. The valid values are as follows: + `auto`: automatic backup. + `manual`: manual backup.

func (InstanceBackupPolicyOutput) BeginAt

Time at which backup starts. Format: `hh24:00-hh24:00`, "00:00-01:00" indicates that backup starts at 00:00:00.

func (InstanceBackupPolicyOutput) ElementType

func (InstanceBackupPolicyOutput) ElementType() reflect.Type

func (InstanceBackupPolicyOutput) PeriodType

Interval at which backup is performed. Default value is `weekly`. Currently, only weekly backup is supported.

func (InstanceBackupPolicyOutput) SaveDays

Retention time. Unit: day, the value ranges from 1 to 7. This parameter is required if the backupType is **auto**.

func (InstanceBackupPolicyOutput) ToInstanceBackupPolicyOutput

func (o InstanceBackupPolicyOutput) ToInstanceBackupPolicyOutput() InstanceBackupPolicyOutput

func (InstanceBackupPolicyOutput) ToInstanceBackupPolicyOutputWithContext

func (o InstanceBackupPolicyOutput) ToInstanceBackupPolicyOutputWithContext(ctx context.Context) InstanceBackupPolicyOutput

func (InstanceBackupPolicyOutput) ToInstanceBackupPolicyPtrOutput

func (o InstanceBackupPolicyOutput) ToInstanceBackupPolicyPtrOutput() InstanceBackupPolicyPtrOutput

func (InstanceBackupPolicyOutput) ToInstanceBackupPolicyPtrOutputWithContext

func (o InstanceBackupPolicyOutput) ToInstanceBackupPolicyPtrOutputWithContext(ctx context.Context) InstanceBackupPolicyPtrOutput

type InstanceBackupPolicyPtrInput

type InstanceBackupPolicyPtrInput interface {
	pulumi.Input

	ToInstanceBackupPolicyPtrOutput() InstanceBackupPolicyPtrOutput
	ToInstanceBackupPolicyPtrOutputWithContext(context.Context) InstanceBackupPolicyPtrOutput
}

InstanceBackupPolicyPtrInput is an input type that accepts InstanceBackupPolicyArgs, InstanceBackupPolicyPtr and InstanceBackupPolicyPtrOutput values. You can construct a concrete instance of `InstanceBackupPolicyPtrInput` via:

        InstanceBackupPolicyArgs{...}

or:

        nil

type InstanceBackupPolicyPtrOutput

type InstanceBackupPolicyPtrOutput struct{ *pulumi.OutputState }

func (InstanceBackupPolicyPtrOutput) BackupAts

Day in a week on which backup starts, the value ranges from 1 to 7. Where: 1 indicates Monday; 7 indicates Sunday.

func (InstanceBackupPolicyPtrOutput) BackupType

Backup type. Default value is `auto`. The valid values are as follows: + `auto`: automatic backup. + `manual`: manual backup.

func (InstanceBackupPolicyPtrOutput) BeginAt

Time at which backup starts. Format: `hh24:00-hh24:00`, "00:00-01:00" indicates that backup starts at 00:00:00.

func (InstanceBackupPolicyPtrOutput) Elem

func (InstanceBackupPolicyPtrOutput) ElementType

func (InstanceBackupPolicyPtrOutput) PeriodType

Interval at which backup is performed. Default value is `weekly`. Currently, only weekly backup is supported.

func (InstanceBackupPolicyPtrOutput) SaveDays

Retention time. Unit: day, the value ranges from 1 to 7. This parameter is required if the backupType is **auto**.

func (InstanceBackupPolicyPtrOutput) ToInstanceBackupPolicyPtrOutput

func (o InstanceBackupPolicyPtrOutput) ToInstanceBackupPolicyPtrOutput() InstanceBackupPolicyPtrOutput

func (InstanceBackupPolicyPtrOutput) ToInstanceBackupPolicyPtrOutputWithContext

func (o InstanceBackupPolicyPtrOutput) ToInstanceBackupPolicyPtrOutputWithContext(ctx context.Context) InstanceBackupPolicyPtrOutput

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

func (o InstanceOutput) AccessUser() pulumi.StringOutput

Specifies the username used for accessing a DCS Memcached instance. If the cache engine is *Redis*, you do not need to set this parameter. The username starts with a letter, consists of 1 to 64 characters, and supports only letters, digits, and hyphens (-). Changing this creates a new instance.

func (InstanceOutput) AutoPay deprecated

Deprecated: Deprecated

func (InstanceOutput) AutoRenew

func (o InstanceOutput) AutoRenew() pulumi.StringPtrOutput

Specifies whether auto renew is enabled. Valid values are `true` and `false`, defaults to `false`.

func (InstanceOutput) AvailabilityZones

func (o InstanceOutput) AvailabilityZones() pulumi.StringArrayOutput

The code of the AZ where the cache node resides. Master/Standby, Proxy Cluster, and Redis Cluster DCS instances support cross-AZ deployment. You can specify an AZ for the standby node. When specifying AZs for nodes, use commas (,) to separate AZs. Changing this creates a new instance.

func (InstanceOutput) AvailableZones deprecated

func (o InstanceOutput) AvailableZones() pulumi.StringArrayOutput

Deprecated: Deprecated, please use `availability_zones` instead

func (InstanceOutput) BackupAts deprecated

func (o InstanceOutput) BackupAts() pulumi.IntArrayOutput

Day in a week on which backup starts, the value ranges from 1 to 7. Where: 1 indicates Monday; 7 indicates Sunday.

Deprecated: Deprecated, please use `backup_policy` instead

func (InstanceOutput) BackupPolicy

Specifies the backup configuration to be used with the instance. The structure is described below.

func (InstanceOutput) BackupType deprecated

func (o InstanceOutput) BackupType() pulumi.StringPtrOutput

Backup type. Default value is `auto`. The valid values are as follows: + `auto`: automatic backup. + `manual`: manual backup.

Deprecated: Deprecated, please use `backup_policy` instead

func (InstanceOutput) BeginAt deprecated

Time at which backup starts. Format: `hh24:00-hh24:00`, "00:00-01:00" indicates that backup starts at 00:00:00.

Deprecated: Deprecated, please use `backup_policy` instead

func (InstanceOutput) Capacity

func (o InstanceOutput) Capacity() pulumi.Float64Output

Specifies the cache capacity. Unit: GB.

  • **Redis4.0, Redis5.0 and Redis6.0**: Stand-alone and active/standby type instance values: `0.125`, `0.25`, `0.5`, `1`, `2`, `4`, `8`, `16`, `32` and `64`. Cluster instance specifications support `4`,`8`,`16`, `24`, `32`, `48`, `64`, `96`, `128`, `192`, `256`, `384`, `512`, `768` and `1024`.
  • **Redis3.0**: Stand-alone and active/standby type instance values: `2`, `4`, `8`, `16`, `32` and `64`. Proxy cluster instance specifications support `64`, `128`, `256`, `512`, and `1024`.
  • **Memcached**: Stand-alone and active/standby type instance values: `2`, `4`, `8`, `16`, `32` and `64`.

func (InstanceOutput) ChargingMode

func (o InstanceOutput) ChargingMode() pulumi.StringOutput

Specifies the charging mode of the redis instance. The valid values are as follows:

  • `prePaid`: indicates the yearly/monthly billing mode.
  • `postPaid`: indicates the pay-per-use billing mode. Default value is `postPaid`. Changing this creates a new instance.

func (InstanceOutput) DeletedNodes added in v0.0.8

func (o InstanceOutput) DeletedNodes() pulumi.StringPtrOutput

Specifies the ID of the replica to delete. This parameter is mandatory when you delete replicas of a master/standby DCS Redis 4.0 or 5.0 instance. Currently, only one replica can be deleted at a time.

func (InstanceOutput) Description

func (o InstanceOutput) Description() pulumi.StringOutput

Specifies the description of an instance. It is a string that contains a maximum of 1024 characters.

func (InstanceOutput) DomainName

func (o InstanceOutput) DomainName() pulumi.StringOutput

Domain name of the instance. Usually, we use domain name and port to connect to the DCS instances.

func (InstanceOutput) ElementType

func (InstanceOutput) ElementType() reflect.Type

func (InstanceOutput) Engine

func (o InstanceOutput) Engine() pulumi.StringOutput

Specifies a cache engine. Options: *Redis* and *Memcached*. Changing this creates a new instance.

func (InstanceOutput) EngineVersion

func (o InstanceOutput) EngineVersion() pulumi.StringPtrOutput

Specifies the version of a cache engine. It is mandatory when the engine is *Redis*, the value can be 3.0, 4.0, 5.0 or 6.0. Changing this creates a new instance.

func (InstanceOutput) EnterpriseProjectId

func (o InstanceOutput) EnterpriseProjectId() pulumi.StringOutput

The enterprise project id of the dcs instance. Changing this creates a new instance.

func (InstanceOutput) EnterpriseProjectName deprecated

func (o InstanceOutput) EnterpriseProjectName() pulumi.StringOutput

Deprecated: Deprecated, this is a non-public attribute.

func (InstanceOutput) Flavor

func (o InstanceOutput) Flavor() pulumi.StringOutput

The flavor of the cache instance, which including the total memory, available memory, maximum number of connections allowed, maximum/assured bandwidth and reference performance. It also includes the modes of Redis instances. You can query the *flavor* as follows:

func (InstanceOutput) InternalVersion deprecated

func (o InstanceOutput) InternalVersion() pulumi.StringOutput

Deprecated: Deprecated, please us `engine_version` instead.

func (InstanceOutput) Ip deprecated

Deprecated: Deprecated, please us `private_ip` instead.

func (InstanceOutput) MaintainBegin

func (o InstanceOutput) MaintainBegin() pulumi.StringPtrOutput

Time at which the maintenance time window starts. The valid values are `22:00:00`, `02:00:00`, `06:00:00`, `10:00:00`, `14:00:00` and `18:00:00`. Default value is `02:00:00`.

  • The start time and end time of a maintenance time window must indicate the time segment of a supported maintenance time window.
  • Parameters `maintainBegin` and `maintainEnd` must be set in pairs.
  • If parameter maintainBegin is left blank, parameter maintainEnd is also blank. In this case, the system automatically allocates the default start time 02:00:00.

func (InstanceOutput) MaintainEnd

func (o InstanceOutput) MaintainEnd() pulumi.StringPtrOutput

Time at which the maintenance time window ends. The valid values are `22:00:00`, `02:00:00`, `06:00:00`, `10:00:00`, `14:00:00` and `18:00:00`. Default value is `06:00:00`.

  • The start time and end time of a maintenance time window must indicate the time segment of a supported maintenance time window.
  • The end time is four hours later than the start time. For example, if the start time is 22:00:00, the end time is 02:00:00.
  • Parameters `maintainBegin` and `maintainEnd` must be set in pairs.
  • If parameter maintainEnd is left blank, parameter maintainBegin is also blank. In this case, the system automatically allocates the default end time 06:00:00.

func (InstanceOutput) MaxMemory

func (o InstanceOutput) MaxMemory() pulumi.IntOutput

Total memory size. Unit: MB.

func (InstanceOutput) Name

Specifies the name of an instance. The name must be 4 to 64 characters and start with a letter. Only chinese, letters (case-insensitive), digits, underscores (_) ,and hyphens (-) are allowed.

func (InstanceOutput) OrderId

func (o InstanceOutput) OrderId() pulumi.StringOutput

The ID of the order that created the instance.

func (InstanceOutput) Password

func (o InstanceOutput) Password() pulumi.StringPtrOutput

Specifies the password of a DCS instance. The password of a DCS instance must meet the following complexity requirements:

  • Must be a string of 8 to 32 bits in length.
  • Must contain three combinations of the following four characters: Lower case letters, uppercase letter, digital, Special characters include (`~!@#$^&*()-_=+\\|{}:,<.>/?).
  • The new password cannot be the same as the old password.

func (InstanceOutput) Period

func (o InstanceOutput) Period() pulumi.IntPtrOutput

Specifies the charging period of the instance. If `periodUnit` is set to *month*, the value ranges from 1 to 9. If `periodUnit` is set to *year*, the value ranges from 1 to 3. This parameter is mandatory if `chargingMode` is set to *prePaid*. Changing this creates a new instance.

func (InstanceOutput) PeriodType deprecated

func (o InstanceOutput) PeriodType() pulumi.StringPtrOutput

Interval at which backup is performed. Default value is `weekly`. Currently, only weekly backup is supported.

Deprecated: Please use `backup_policy` instead

func (InstanceOutput) PeriodUnit

func (o InstanceOutput) PeriodUnit() pulumi.StringPtrOutput

Specifies the charging period unit of the instance. Valid values are *month* and *year*. This parameter is mandatory if `chargingMode` is set to *prePaid*. Changing this creates a new instance.

func (InstanceOutput) Port

func (o InstanceOutput) Port() pulumi.IntOutput

Port customization, which is supported only by Redis 4.0 and Redis 5.0 instances. Redis instance defaults to 6379. Memcached instance does not use this argument.

func (InstanceOutput) PrivateIp

func (o InstanceOutput) PrivateIp() pulumi.StringOutput

The IP address of the DCS instance, which can only be the currently available IP address the selected subnet. You can specify an available IP for the Redis instance (except for the Redis Cluster type). If omitted, the system will automatically allocate an available IP address to the Redis instance. Changing this creates a new instance resource.

func (InstanceOutput) ProductId deprecated

func (o InstanceOutput) ProductId() pulumi.StringOutput

Deprecated: Deprecated, please use `flavor` instead

func (InstanceOutput) Region

func (o InstanceOutput) Region() pulumi.StringOutput

Specifies the region in which to create the DCS instance resource. If omitted, the provider-level region will be used. Changing this creates a new DCS instance resource.

func (InstanceOutput) RenameCommands

func (o InstanceOutput) RenameCommands() pulumi.StringMapOutput

Critical command renaming, which is supported only by Redis 4.0 and Redis 5.0 instances but not by Redis 3.0 instance. The valid commands that can be renamed are: **command**, **keys**, **flushdb**, **flushall** and **hgetall**.

func (InstanceOutput) ReservedIps added in v0.0.8

func (o InstanceOutput) ReservedIps() pulumi.StringArrayOutput

Specifies IP addresses to retain. Mandatory during cluster scale-in. If this parameter is not set, the system randomly deletes unnecessary shards.

func (InstanceOutput) SaveDays deprecated

func (o InstanceOutput) SaveDays() pulumi.IntPtrOutput

Retention time. Unit: day, the value ranges from 1 to 7. This parameter is required if the backupType is **auto**.

Deprecated: Deprecated, please use `backup_policy` instead

func (InstanceOutput) SecurityGroupId

func (o InstanceOutput) SecurityGroupId() pulumi.StringPtrOutput

The ID of the security group which the instance belongs to. This parameter is mandatory for Memcached and Redis 3.0 version.

func (InstanceOutput) SecurityGroupName

func (o InstanceOutput) SecurityGroupName() pulumi.StringOutput

The name of security group which the instance belongs to.

func (InstanceOutput) Status

func (o InstanceOutput) Status() pulumi.StringOutput

Cache instance status. The valid values are as follows:

  • `RUNNING`: The instance is running properly. Only instances in the Running state can provide in-memory cache service.
  • `ERROR`: The instance is not running properly.
  • `RESTARTING`: The instance is being restarted.
  • `FROZEN`: The instance has been frozen due to low balance. You can unfreeze the instance by recharging your account in My Order.
  • `EXTENDING`: The instance is being scaled up.
  • `RESTORING`: The instance data is being restored.
  • `FLUSHING`: The DCS instance is being cleared.

func (InstanceOutput) SubnetId

func (o InstanceOutput) SubnetId() pulumi.StringOutput

The ID of subnet which the instance belongs to. Changing this creates a new instance resource.

func (InstanceOutput) SubnetName

func (o InstanceOutput) SubnetName() pulumi.StringOutput

The name of subnet which the instance belongs to.

func (InstanceOutput) Tags

The key/value pairs to associate with the dcs instance.

func (InstanceOutput) TemplateId added in v0.0.8

func (o InstanceOutput) TemplateId() pulumi.StringPtrOutput

The Parameter Template ID. Changing this creates a new instance resource.

func (InstanceOutput) ToInstanceOutput

func (o InstanceOutput) ToInstanceOutput() InstanceOutput

func (InstanceOutput) ToInstanceOutputWithContext

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

func (InstanceOutput) UsedMemory

func (o InstanceOutput) UsedMemory() pulumi.IntOutput

Size of the used memory. Unit: MB.

func (InstanceOutput) UserId deprecated

func (o InstanceOutput) UserId() pulumi.StringOutput

Deprecated: Deprecated

func (InstanceOutput) UserName deprecated

func (o InstanceOutput) UserName() pulumi.StringOutput

Deprecated: Deprecated

func (InstanceOutput) VpcId

The ID of VPC which the instance belongs to. Changing this creates a new instance resource.

func (InstanceOutput) VpcName

func (o InstanceOutput) VpcName() pulumi.StringOutput

The name of VPC which the instance belongs to.

func (InstanceOutput) WhitelistEnable

func (o InstanceOutput) WhitelistEnable() pulumi.BoolPtrOutput

Enable or disable the IP address whitelists. Defaults to true. If the whitelist is disabled, all IP addresses connected to the VPC can access the instance.

func (InstanceOutput) Whitelists

Specifies the IP addresses which can access the instance. This parameter is valid for Redis 4.0 and 5.0 versions. The structure is described below.

type InstanceState

type InstanceState struct {
	// Specifies the username used for accessing a DCS Memcached instance.
	// If the cache engine is *Redis*, you do not need to set this parameter.
	// The username starts with a letter, consists of 1 to 64 characters, and supports only letters, digits, and
	// hyphens (-). Changing this creates a new instance.
	AccessUser pulumi.StringPtrInput
	// Deprecated: Deprecated
	AutoPay pulumi.StringPtrInput
	// Specifies whether auto renew is enabled.
	// Valid values are `true` and `false`, defaults to `false`.
	AutoRenew pulumi.StringPtrInput
	// The code of the AZ where the cache node resides.
	// Master/Standby, Proxy Cluster, and Redis Cluster DCS instances support cross-AZ deployment.
	// You can specify an AZ for the standby node. When specifying AZs for nodes, use commas (,) to separate AZs.
	// Changing this creates a new instance.
	AvailabilityZones pulumi.StringArrayInput
	// Deprecated: Deprecated, please use `availability_zones` instead
	AvailableZones pulumi.StringArrayInput
	// Day in a week on which backup starts, the value ranges from 1 to 7.
	// Where: 1 indicates Monday; 7 indicates Sunday.
	//
	// Deprecated: Deprecated, please use `backup_policy` instead
	BackupAts pulumi.IntArrayInput
	// Specifies the backup configuration to be used with the instance.
	// The structure is described below.
	BackupPolicy InstanceBackupPolicyPtrInput
	// Backup type. Default value is `auto`. The valid values are as follows:
	// + `auto`: automatic backup.
	// + `manual`: manual backup.
	//
	// Deprecated: Deprecated, please use `backup_policy` instead
	BackupType pulumi.StringPtrInput
	// Time at which backup starts.
	// Format: `hh24:00-hh24:00`, "00:00-01:00" indicates that backup starts at 00:00:00.
	//
	// Deprecated: Deprecated, please use `backup_policy` instead
	BeginAt pulumi.StringPtrInput
	// Specifies the cache capacity. Unit: GB.
	// + **Redis4.0, Redis5.0 and Redis6.0**: Stand-alone and active/standby type instance values: `0.125`, `0.25`,
	//   `0.5`, `1`, `2`, `4`, `8`, `16`, `32` and `64`.
	//   Cluster instance specifications support `4`,`8`,`16`, `24`, `32`, `48`, `64`, `96`, `128`, `192`, `256`,
	//   `384`, `512`, `768` and `1024`.
	// + **Redis3.0**: Stand-alone and active/standby type instance values: `2`, `4`, `8`, `16`, `32` and `64`.
	//   Proxy cluster instance specifications support `64`, `128`, `256`, `512`, and `1024`.
	// + **Memcached**: Stand-alone and active/standby type instance values: `2`, `4`, `8`, `16`, `32` and `64`.
	Capacity pulumi.Float64PtrInput
	// Specifies the charging mode of the redis instance.
	// The valid values are as follows:
	// + `prePaid`: indicates the yearly/monthly billing mode.
	// + `postPaid`: indicates the pay-per-use billing mode.
	//   Default value is `postPaid`.
	//   Changing this creates a new instance.
	ChargingMode pulumi.StringPtrInput
	// Specifies the ID of the replica to delete. This parameter is mandatory when
	// you delete replicas of a master/standby DCS Redis 4.0 or 5.0 instance. Currently, only one replica can be deleted
	// at a time.
	DeletedNodes pulumi.StringPtrInput
	// Specifies the description of an instance.
	// It is a string that contains a maximum of 1024 characters.
	Description pulumi.StringPtrInput
	// Domain name of the instance. Usually, we use domain name and port to connect to the DCS instances.
	DomainName pulumi.StringPtrInput
	// Specifies a cache engine. Options: *Redis* and *Memcached*.
	// Changing this creates a new instance.
	Engine pulumi.StringPtrInput
	// Specifies the version of a cache engine.
	// It is mandatory when the engine is *Redis*, the value can be 3.0, 4.0, 5.0 or 6.0.
	// Changing this creates a new instance.
	EngineVersion pulumi.StringPtrInput
	// The enterprise project id of the dcs instance.
	// Changing this creates a new instance.
	EnterpriseProjectId pulumi.StringPtrInput
	// Deprecated: Deprecated, this is a non-public attribute.
	EnterpriseProjectName pulumi.StringPtrInput
	// The flavor of the cache instance, which including the total memory, available memory,
	// maximum number of connections allowed, maximum/assured bandwidth and reference performance.
	// It also includes the modes of Redis instances. You can query the *flavor* as follows:
	// + It can be obtained through this data source `Dcs.getFlavors`.
	// + Query some flavors
	//   in [DCS Instance Specifications](https://support.huaweicloud.com/intl/en-us/productdesc-dcs/dcs-pd-200713003.html)
	// + Log in to the DCS console, click *Buy DCS Instance*, and find the corresponding instance specification.
	Flavor pulumi.StringPtrInput
	// Deprecated: Deprecated, please us `engine_version` instead.
	InternalVersion pulumi.StringPtrInput
	// Deprecated: Deprecated, please us `private_ip` instead.
	Ip pulumi.StringPtrInput
	// Time at which the maintenance time window starts.
	// The valid values are `22:00:00`, `02:00:00`, `06:00:00`, `10:00:00`, `14:00:00` and `18:00:00`.
	// Default value is `02:00:00`.
	// + The start time and end time of a maintenance time window must indicate the time segment of a supported maintenance
	//   time window.
	// + Parameters `maintainBegin` and `maintainEnd` must be set in pairs.
	// + If parameter maintainBegin is left blank, parameter maintainEnd is also blank.
	//   In this case, the system automatically allocates the default start time 02:00:00.
	MaintainBegin pulumi.StringPtrInput
	// Time at which the maintenance time window ends.
	// The valid values are `22:00:00`, `02:00:00`, `06:00:00`, `10:00:00`, `14:00:00` and `18:00:00`.
	// Default value is `06:00:00`.
	// + The start time and end time of a maintenance time window must indicate the time segment of a supported maintenance
	//   time window.
	// + The end time is four hours later than the start time.
	//   For example, if the start time is 22:00:00, the end time is 02:00:00.
	// + Parameters `maintainBegin` and `maintainEnd` must be set in pairs.
	// + If parameter maintainEnd is left blank, parameter maintainBegin is also blank.
	//   In this case, the system automatically allocates the default end time 06:00:00.
	MaintainEnd pulumi.StringPtrInput
	// Total memory size. Unit: MB.
	MaxMemory pulumi.IntPtrInput
	// Specifies the name of an instance.
	// The name must be 4 to 64 characters and start with a letter.
	// Only chinese, letters (case-insensitive), digits, underscores (_) ,and hyphens (-) are allowed.
	Name pulumi.StringPtrInput
	// The ID of the order that created the instance.
	OrderId pulumi.StringPtrInput
	// Specifies the password of a DCS instance.
	// The password of a DCS instance must meet the following complexity requirements:
	// + Must be a string of 8 to 32 bits in length.
	// + Must contain three combinations of the following four characters: Lower case letters, uppercase letter, digital,
	//   Special characters include (`~!@#$^&*()-_=+\\|{}:,<.>/?).
	// + The new password cannot be the same as the old password.
	Password pulumi.StringPtrInput
	// Specifies the charging period of the instance.
	// If `periodUnit` is set to *month*, the value ranges from 1 to 9.
	// If `periodUnit` is set to *year*, the value ranges from 1 to 3.
	// This parameter is mandatory if `chargingMode` is set to *prePaid*.
	// Changing this creates a new instance.
	Period pulumi.IntPtrInput
	// Interval at which backup is performed. Default value is `weekly`.
	// Currently, only weekly backup is supported.
	//
	// Deprecated: Please use `backup_policy` instead
	PeriodType pulumi.StringPtrInput
	// Specifies the charging period unit of the instance.
	// Valid values are *month* and *year*. This parameter is mandatory if `chargingMode` is set to *prePaid*.
	// Changing this creates a new instance.
	PeriodUnit pulumi.StringPtrInput
	// Port customization, which is supported only by Redis 4.0 and Redis 5.0 instances.
	// Redis instance defaults to 6379. Memcached instance does not use this argument.
	Port pulumi.IntPtrInput
	// The IP address of the DCS instance,
	// which can only be the currently available IP address the selected subnet.
	// You can specify an available IP for the Redis instance (except for the Redis Cluster type).
	// If omitted, the system will automatically allocate an available IP address to the Redis instance.
	// Changing this creates a new instance resource.
	PrivateIp pulumi.StringPtrInput
	// Deprecated: Deprecated, please use `flavor` instead
	ProductId pulumi.StringPtrInput
	// Specifies the region in which to create the DCS instance resource.
	// If omitted, the provider-level region will be used. Changing this creates a new DCS instance resource.
	Region pulumi.StringPtrInput
	// Critical command renaming, which is supported only by Redis 4.0 and
	// Redis 5.0 instances but not by Redis 3.0 instance.
	// The valid commands that can be renamed are: **command**, **keys**, **flushdb**, **flushall** and **hgetall**.
	RenameCommands pulumi.StringMapInput
	// Specifies IP addresses to retain. Mandatory during cluster scale-in. If this
	// parameter is not set, the system randomly deletes unnecessary shards.
	ReservedIps pulumi.StringArrayInput
	// Retention time. Unit: day, the value ranges from 1 to 7.
	// This parameter is required if the backupType is **auto**.
	//
	// Deprecated: Deprecated, please use `backup_policy` instead
	SaveDays pulumi.IntPtrInput
	// The ID of the security group which the instance belongs to.
	// This parameter is mandatory for Memcached and Redis 3.0 version.
	SecurityGroupId pulumi.StringPtrInput
	// The name of security group which the instance belongs to.
	SecurityGroupName pulumi.StringPtrInput
	// Cache instance status. The valid values are as follows:
	// + `RUNNING`: The instance is running properly.
	//   Only instances in the Running state can provide in-memory cache service.
	// + `ERROR`: The instance is not running properly.
	// + `RESTARTING`: The instance is being restarted.
	// + `FROZEN`: The instance has been frozen due to low balance.
	//   You can unfreeze the instance by recharging your account in My Order.
	// + `EXTENDING`: The instance is being scaled up.
	// + `RESTORING`: The instance data is being restored.
	// + `FLUSHING`: The DCS instance is being cleared.
	Status pulumi.StringPtrInput
	// The ID of subnet which the instance belongs to.
	// Changing this creates a new instance resource.
	SubnetId pulumi.StringPtrInput
	// The name of subnet which the instance belongs to.
	SubnetName pulumi.StringPtrInput
	// The key/value pairs to associate with the dcs instance.
	Tags pulumi.StringMapInput
	// The Parameter Template ID.
	// Changing this creates a new instance resource.
	TemplateId pulumi.StringPtrInput
	// Size of the used memory. Unit: MB.
	UsedMemory pulumi.IntPtrInput
	// Deprecated: Deprecated
	UserId pulumi.StringPtrInput
	// Deprecated: Deprecated
	UserName pulumi.StringPtrInput
	// The ID of VPC which the instance belongs to.
	// Changing this creates a new instance resource.
	VpcId pulumi.StringPtrInput
	// The name of VPC which the instance belongs to.
	VpcName pulumi.StringPtrInput
	// Enable or disable the IP address whitelists. Defaults to true.
	// If the whitelist is disabled, all IP addresses connected to the VPC can access the instance.
	WhitelistEnable pulumi.BoolPtrInput
	// Specifies the IP addresses which can access the instance.
	// This parameter is valid for Redis 4.0 and 5.0 versions. The structure is described below.
	Whitelists InstanceWhitelistArrayInput
}

func (InstanceState) ElementType

func (InstanceState) ElementType() reflect.Type

type InstanceWhitelist

type InstanceWhitelist struct {
	// Specifies the name of IP address group.
	GroupName string `pulumi:"groupName"`
	// Specifies the list of IP address or CIDR which can be whitelisted for an instance.
	// The maximum is 20.
	IpAddresses []string `pulumi:"ipAddresses"`
}

type InstanceWhitelistArgs

type InstanceWhitelistArgs struct {
	// Specifies the name of IP address group.
	GroupName pulumi.StringInput `pulumi:"groupName"`
	// Specifies the list of IP address or CIDR which can be whitelisted for an instance.
	// The maximum is 20.
	IpAddresses pulumi.StringArrayInput `pulumi:"ipAddresses"`
}

func (InstanceWhitelistArgs) ElementType

func (InstanceWhitelistArgs) ElementType() reflect.Type

func (InstanceWhitelistArgs) ToInstanceWhitelistOutput

func (i InstanceWhitelistArgs) ToInstanceWhitelistOutput() InstanceWhitelistOutput

func (InstanceWhitelistArgs) ToInstanceWhitelistOutputWithContext

func (i InstanceWhitelistArgs) ToInstanceWhitelistOutputWithContext(ctx context.Context) InstanceWhitelistOutput

type InstanceWhitelistArray

type InstanceWhitelistArray []InstanceWhitelistInput

func (InstanceWhitelistArray) ElementType

func (InstanceWhitelistArray) ElementType() reflect.Type

func (InstanceWhitelistArray) ToInstanceWhitelistArrayOutput

func (i InstanceWhitelistArray) ToInstanceWhitelistArrayOutput() InstanceWhitelistArrayOutput

func (InstanceWhitelistArray) ToInstanceWhitelistArrayOutputWithContext

func (i InstanceWhitelistArray) ToInstanceWhitelistArrayOutputWithContext(ctx context.Context) InstanceWhitelistArrayOutput

type InstanceWhitelistArrayInput

type InstanceWhitelistArrayInput interface {
	pulumi.Input

	ToInstanceWhitelistArrayOutput() InstanceWhitelistArrayOutput
	ToInstanceWhitelistArrayOutputWithContext(context.Context) InstanceWhitelistArrayOutput
}

InstanceWhitelistArrayInput is an input type that accepts InstanceWhitelistArray and InstanceWhitelistArrayOutput values. You can construct a concrete instance of `InstanceWhitelistArrayInput` via:

InstanceWhitelistArray{ InstanceWhitelistArgs{...} }

type InstanceWhitelistArrayOutput

type InstanceWhitelistArrayOutput struct{ *pulumi.OutputState }

func (InstanceWhitelistArrayOutput) ElementType

func (InstanceWhitelistArrayOutput) Index

func (InstanceWhitelistArrayOutput) ToInstanceWhitelistArrayOutput

func (o InstanceWhitelistArrayOutput) ToInstanceWhitelistArrayOutput() InstanceWhitelistArrayOutput

func (InstanceWhitelistArrayOutput) ToInstanceWhitelistArrayOutputWithContext

func (o InstanceWhitelistArrayOutput) ToInstanceWhitelistArrayOutputWithContext(ctx context.Context) InstanceWhitelistArrayOutput

type InstanceWhitelistInput

type InstanceWhitelistInput interface {
	pulumi.Input

	ToInstanceWhitelistOutput() InstanceWhitelistOutput
	ToInstanceWhitelistOutputWithContext(context.Context) InstanceWhitelistOutput
}

InstanceWhitelistInput is an input type that accepts InstanceWhitelistArgs and InstanceWhitelistOutput values. You can construct a concrete instance of `InstanceWhitelistInput` via:

InstanceWhitelistArgs{...}

type InstanceWhitelistOutput

type InstanceWhitelistOutput struct{ *pulumi.OutputState }

func (InstanceWhitelistOutput) ElementType

func (InstanceWhitelistOutput) ElementType() reflect.Type

func (InstanceWhitelistOutput) GroupName

Specifies the name of IP address group.

func (InstanceWhitelistOutput) IpAddresses

Specifies the list of IP address or CIDR which can be whitelisted for an instance. The maximum is 20.

func (InstanceWhitelistOutput) ToInstanceWhitelistOutput

func (o InstanceWhitelistOutput) ToInstanceWhitelistOutput() InstanceWhitelistOutput

func (InstanceWhitelistOutput) ToInstanceWhitelistOutputWithContext

func (o InstanceWhitelistOutput) ToInstanceWhitelistOutputWithContext(ctx context.Context) InstanceWhitelistOutput

Jump to

Keyboard shortcuts

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