gpdb

package
v2.22.0 Latest Latest
Warning

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

Go to latest
Published: Oct 19, 2020 License: Apache-2.0 Imports: 4 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type Connection

type Connection struct {
	pulumi.CustomResourceState

	// Prefix of an Internet connection string. It must be checked for uniqueness. It may consist of lowercase letters, numbers, and underlines, and must start with a letter and have no more than 30 characters. Default to <instance_id> + '-tf'.
	ConnectionPrefix pulumi.StringOutput `pulumi:"connectionPrefix"`
	// Connection instance string.
	ConnectionString pulumi.StringOutput `pulumi:"connectionString"`
	// The Id of instance that can run database.
	InstanceId pulumi.StringOutput `pulumi:"instanceId"`
	// The ip address of connection string.
	IpAddress pulumi.StringOutput `pulumi:"ipAddress"`
	// Internet connection port. Valid value: [3200-3999]. Default to 3306.
	Port pulumi.StringPtrOutput `pulumi:"port"`
}

Provides a connection resource to allocate an Internet connection string for instance.

> **NOTE:** Available in 1.48.0+

> **NOTE:** Each instance will allocate a intranet connection string automatically and its prefix is instance ID.

To avoid unnecessary conflict, please specified a internet connection prefix before applying the resource.

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi-alicloud/sdk/v2/go/alicloud"
"github.com/pulumi/pulumi-alicloud/sdk/v2/go/alicloud/gpdb"
"github.com/pulumi/pulumi-alicloud/sdk/v2/go/alicloud/vpc"
"github.com/pulumi/pulumi/sdk/v2/go/pulumi"
"github.com/pulumi/pulumi/sdk/v2/go/pulumi/config"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		cfg := config.New(ctx, "")
		creation := "Gpdb"
		if param := cfg.Get("creation"); param != "" {
			creation = param
		}
		name := "gpdbConnectionBasic"
		if param := cfg.Get("name"); param != "" {
			name = param
		}
		opt0 := creation
		defaultZones, err := alicloud.GetZones(ctx, &alicloud.GetZonesArgs{
			AvailableResourceCreation: &opt0,
		}, nil)
		if err != nil {
			return err
		}
		defaultNetwork, err := vpc.NewNetwork(ctx, "defaultNetwork", &vpc.NetworkArgs{
			CidrBlock: pulumi.String("172.16.0.0/16"),
		})
		if err != nil {
			return err
		}
		defaultSwitch, err := vpc.NewSwitch(ctx, "defaultSwitch", &vpc.SwitchArgs{
			VpcId:            defaultNetwork.ID(),
			CidrBlock:        pulumi.String("172.16.0.0/24"),
			AvailabilityZone: pulumi.String(defaultZones.Zones[0].Id),
		})
		if err != nil {
			return err
		}
		defaultInstance, err := gpdb.NewInstance(ctx, "defaultInstance", &gpdb.InstanceArgs{
			VswitchId:          defaultSwitch.ID(),
			Engine:             pulumi.String("gpdb"),
			EngineVersion:      pulumi.String("4.3"),
			InstanceClass:      pulumi.String("gpdb.group.segsdx2"),
			InstanceGroupCount: pulumi.String("2"),
			Description:        pulumi.String(name),
		})
		if err != nil {
			return err
		}
		_, err = gpdb.NewConnection(ctx, "defaultConnection", &gpdb.ConnectionArgs{
			InstanceId:       defaultInstance.ID(),
			ConnectionPrefix: pulumi.String("testAbc"),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

func GetConnection

func GetConnection(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *ConnectionState, opts ...pulumi.ResourceOption) (*Connection, error)

GetConnection gets an existing Connection 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 NewConnection

func NewConnection(ctx *pulumi.Context,
	name string, args *ConnectionArgs, opts ...pulumi.ResourceOption) (*Connection, error)

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

type ConnectionArgs

type ConnectionArgs struct {
	// Prefix of an Internet connection string. It must be checked for uniqueness. It may consist of lowercase letters, numbers, and underlines, and must start with a letter and have no more than 30 characters. Default to <instance_id> + '-tf'.
	ConnectionPrefix pulumi.StringPtrInput
	// The Id of instance that can run database.
	InstanceId pulumi.StringInput
	// Internet connection port. Valid value: [3200-3999]. Default to 3306.
	Port pulumi.StringPtrInput
}

The set of arguments for constructing a Connection resource.

func (ConnectionArgs) ElementType

func (ConnectionArgs) ElementType() reflect.Type

type ConnectionState

type ConnectionState struct {
	// Prefix of an Internet connection string. It must be checked for uniqueness. It may consist of lowercase letters, numbers, and underlines, and must start with a letter and have no more than 30 characters. Default to <instance_id> + '-tf'.
	ConnectionPrefix pulumi.StringPtrInput
	// Connection instance string.
	ConnectionString pulumi.StringPtrInput
	// The Id of instance that can run database.
	InstanceId pulumi.StringPtrInput
	// The ip address of connection string.
	IpAddress pulumi.StringPtrInput
	// Internet connection port. Valid value: [3200-3999]. Default to 3306.
	Port pulumi.StringPtrInput
}

func (ConnectionState) ElementType

func (ConnectionState) ElementType() reflect.Type

type GetInstancesArgs

type GetInstancesArgs struct {
	// Instance availability zone.
	AvailabilityZone *string `pulumi:"availabilityZone"`
	// A list of instance IDs.
	Ids []string `pulumi:"ids"`
	// 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"`
	// Used to retrieve instances belong to specified `vswitch` resources.
	VswitchId *string `pulumi:"vswitchId"`
}

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"`
	// The time when you create an instance. The format is YYYY-MM-DDThh:mm:ssZ, such as 2011-05-30T12:11:4Z.
	CreationTime string `pulumi:"creationTime"`
	// The description of an instance.
	Description string `pulumi:"description"`
	// Database engine type. Supported option is `gpdb`.
	Engine string `pulumi:"engine"`
	// Database engine version.
	EngineVersion string `pulumi:"engineVersion"`
	// The instance id.
	Id string `pulumi:"id"`
	// The group type.
	InstanceClass string `pulumi:"instanceClass"`
	// The number of groups.
	InstanceGroupCount  string `pulumi:"instanceGroupCount"`
	InstanceNetworkType string `pulumi:"instanceNetworkType"`
	// Region ID the instance belongs to.
	RegionId string `pulumi:"regionId"`
	// Status of the instance.
	Status string `pulumi:"status"`
}

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"`
	// The time when you create an instance. The format is YYYY-MM-DDThh:mm:ssZ, such as 2011-05-30T12:11:4Z.
	CreationTime pulumi.StringInput `pulumi:"creationTime"`
	// The description of an instance.
	Description pulumi.StringInput `pulumi:"description"`
	// Database engine type. Supported option is `gpdb`.
	Engine pulumi.StringInput `pulumi:"engine"`
	// Database engine version.
	EngineVersion pulumi.StringInput `pulumi:"engineVersion"`
	// The instance id.
	Id pulumi.StringInput `pulumi:"id"`
	// The group type.
	InstanceClass pulumi.StringInput `pulumi:"instanceClass"`
	// The number of groups.
	InstanceGroupCount  pulumi.StringInput `pulumi:"instanceGroupCount"`
	InstanceNetworkType pulumi.StringInput `pulumi:"instanceNetworkType"`
	// Region ID the instance belongs to.
	RegionId pulumi.StringInput `pulumi:"regionId"`
	// Status of the instance.
	Status pulumi.StringInput `pulumi:"status"`
}

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

The time when you create an instance. The format is YYYY-MM-DDThh:mm:ssZ, such as 2011-05-30T12:11:4Z.

func (GetInstancesInstanceOutput) Description

The description of an instance.

func (GetInstancesInstanceOutput) ElementType

func (GetInstancesInstanceOutput) ElementType() reflect.Type

func (GetInstancesInstanceOutput) Engine

Database engine type. Supported option is `gpdb`.

func (GetInstancesInstanceOutput) EngineVersion

Database engine version.

func (GetInstancesInstanceOutput) Id

The instance id.

func (GetInstancesInstanceOutput) InstanceClass

The group type.

func (GetInstancesInstanceOutput) InstanceGroupCount

func (o GetInstancesInstanceOutput) InstanceGroupCount() pulumi.StringOutput

The number of groups.

func (GetInstancesInstanceOutput) InstanceNetworkType

func (o GetInstancesInstanceOutput) InstanceNetworkType() pulumi.StringOutput

func (GetInstancesInstanceOutput) RegionId

Region ID the instance belongs to.

func (GetInstancesInstanceOutput) Status

Status of the instance.

func (GetInstancesInstanceOutput) ToGetInstancesInstanceOutput

func (o GetInstancesInstanceOutput) ToGetInstancesInstanceOutput() GetInstancesInstanceOutput

func (GetInstancesInstanceOutput) ToGetInstancesInstanceOutputWithContext

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

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 AnalyticDB for PostgreSQL instances.
	Ids []string `pulumi:"ids"`
	// A list of AnalyticDB for PostgreSQL instances. Its every element contains the following attributes:
	Instances []GetInstancesInstance `pulumi:"instances"`
	NameRegex *string                `pulumi:"nameRegex"`
	// The names list of AnalyticDB for PostgreSQL instance.
	Names      []string               `pulumi:"names"`
	OutputFile *string                `pulumi:"outputFile"`
	Tags       map[string]interface{} `pulumi:"tags"`
	VswitchId  *string                `pulumi:"vswitchId"`
}

A collection of values returned by getInstances.

func GetInstances

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

The `gpdb.getInstances` data source provides a collection of AnalyticDB for PostgreSQL instances available in Alicloud account. Filters support regular expression for the instance name or availability_zone.

> **NOTE:** Available in 1.47.0+

## Example Usage

```go package main

import (

"github.com/pulumi/pulumi-alicloud/sdk/v2/go/alicloud/gpdb"
"github.com/pulumi/pulumi/sdk/v2/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		opt0 := "cn-beijing-c"
		opt1 := "gp-.+\\d+"
		opt2 := "instances.txt"
		gpdb, err := gpdb.GetInstances(ctx, &gpdb.GetInstancesArgs{
			AvailabilityZone: &opt0,
			NameRegex:        &opt1,
			OutputFile:       &opt2,
		}, nil)
		if err != nil {
			return err
		}
		ctx.Export("instanceId", gpdb.Instances[0].Id)
		return nil
	})
}

```

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 Gpdb instances.
	Multi      *bool   `pulumi:"multi"`
	OutputFile *string `pulumi:"outputFile"`
}

A collection of arguments for invoking getZones.

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 Gpdb that can be accessed by an Alibaba Cloud account within the region configured in the provider.

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

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

	AvailabilityZone pulumi.StringOutput `pulumi:"availabilityZone"`
	// The name of DB instance. It a string of 2 to 256 characters.
	Description pulumi.StringPtrOutput `pulumi:"description"`
	// Database engine: gpdb. System Default value: gpdb.
	Engine pulumi.StringOutput `pulumi:"engine"`
	// Database version. Value options can refer to the latest docs [CreateDBInstance](https://www.alibabacloud.com/help/doc-detail/86908.htm) `EngineVersion`.
	EngineVersion pulumi.StringOutput `pulumi:"engineVersion"`
	// Valid values are `PrePaid`, `PostPaid`,System default to `PostPaid`.
	InstanceChargeType pulumi.StringOutput `pulumi:"instanceChargeType"`
	// Instance specification. see [Instance specifications](https://www.alibabacloud.com/help/doc-detail/86942.htm).
	InstanceClass pulumi.StringOutput `pulumi:"instanceClass"`
	// The number of groups. Valid values: [2,4,8,16,32]
	InstanceGroupCount pulumi.StringOutput `pulumi:"instanceGroupCount"`
	// 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"`
	// A mapping of tags to assign to the resource.
	Tags pulumi.MapOutput `pulumi:"tags"`
	// The virtual switch ID to launch DB instances in one VPC.
	VswitchId pulumi.StringOutput `pulumi:"vswitchId"`
}

Provides a AnalyticDB for PostgreSQL instance resource supports replica set instances only. the AnalyticDB for PostgreSQL provides stable, reliable, and automatic scalable database services. You can see detail product introduction [here](https://www.alibabacloud.com/help/doc-detail/35387.htm)

> **NOTE:** Available in 1.47.0+

> **NOTE:** The following regions don't support create Classic network Gpdb instance. [`ap-southeast-2`,`ap-southeast-3`,`ap-southeast-5`,`ap-south-1`,`me-east-1`,`ap-northeast-1`,`eu-west-1`,`us-east-1`,`eu-central-1`,`cn-shanghai-finance-1`,`cn-shenzhen-finance-1`,`cn-hangzhou-finance`]

> **NOTE:** Create instance or change instance would cost 10~15 minutes. Please make full preparation.

## Example Usage ### Create a Gpdb instance

```go package main

import (

"github.com/pulumi/pulumi-alicloud/sdk/v2/go/alicloud"
"github.com/pulumi/pulumi-alicloud/sdk/v2/go/alicloud/gpdb"
"github.com/pulumi/pulumi-alicloud/sdk/v2/go/alicloud/vpc"
"github.com/pulumi/pulumi/sdk/v2/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		opt0 := "Gpdb"
		defaultZones, err := alicloud.GetZones(ctx, &alicloud.GetZonesArgs{
			AvailableResourceCreation: &opt0,
		}, nil)
		if err != nil {
			return err
		}
		defaultNetwork, err := vpc.NewNetwork(ctx, "defaultNetwork", &vpc.NetworkArgs{
			CidrBlock: pulumi.String("172.16.0.0/16"),
		})
		if err != nil {
			return err
		}
		defaultSwitch, err := vpc.NewSwitch(ctx, "defaultSwitch", &vpc.SwitchArgs{
			AvailabilityZone: pulumi.String(defaultZones.Zones[0].Id),
			VpcId:            defaultNetwork.ID(),
			CidrBlock:        pulumi.String("172.16.0.0/24"),
		})
		if err != nil {
			return err
		}
		_, err = gpdb.NewInstance(ctx, "example", &gpdb.InstanceArgs{
			Description:        pulumi.String("tf-gpdb-test"),
			Engine:             pulumi.String("gpdb"),
			EngineVersion:      pulumi.String("4.3"),
			InstanceClass:      pulumi.String("gpdb.group.segsdx2"),
			InstanceGroupCount: pulumi.String("2"),
			VswitchId:          defaultSwitch.ID(),
			SecurityIpLists: pulumi.StringArray{
				pulumi.String("10.168.1.12"),
				pulumi.String("100.69.7.112"),
			},
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

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.

type InstanceArgs

type InstanceArgs struct {
	AvailabilityZone pulumi.StringPtrInput
	// The name of DB instance. It a string of 2 to 256 characters.
	Description pulumi.StringPtrInput
	// Database engine: gpdb. System Default value: gpdb.
	Engine pulumi.StringPtrInput
	// Database version. Value options can refer to the latest docs [CreateDBInstance](https://www.alibabacloud.com/help/doc-detail/86908.htm) `EngineVersion`.
	EngineVersion pulumi.StringPtrInput
	// Valid values are `PrePaid`, `PostPaid`,System default to `PostPaid`.
	InstanceChargeType pulumi.StringPtrInput
	// Instance specification. see [Instance specifications](https://www.alibabacloud.com/help/doc-detail/86942.htm).
	InstanceClass pulumi.StringInput
	// The number of groups. Valid values: [2,4,8,16,32]
	InstanceGroupCount pulumi.StringInput
	// 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
	// A mapping of tags to assign to the resource.
	Tags pulumi.MapInput
	// The virtual switch ID to launch DB instances in one VPC.
	VswitchId pulumi.StringPtrInput
}

The set of arguments for constructing a Instance resource.

func (InstanceArgs) ElementType

func (InstanceArgs) ElementType() reflect.Type

type InstanceState

type InstanceState struct {
	AvailabilityZone pulumi.StringPtrInput
	// The name of DB instance. It a string of 2 to 256 characters.
	Description pulumi.StringPtrInput
	// Database engine: gpdb. System Default value: gpdb.
	Engine pulumi.StringPtrInput
	// Database version. Value options can refer to the latest docs [CreateDBInstance](https://www.alibabacloud.com/help/doc-detail/86908.htm) `EngineVersion`.
	EngineVersion pulumi.StringPtrInput
	// Valid values are `PrePaid`, `PostPaid`,System default to `PostPaid`.
	InstanceChargeType pulumi.StringPtrInput
	// Instance specification. see [Instance specifications](https://www.alibabacloud.com/help/doc-detail/86942.htm).
	InstanceClass pulumi.StringPtrInput
	// The number of groups. Valid values: [2,4,8,16,32]
	InstanceGroupCount 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
	// A mapping of tags to assign to the resource.
	Tags pulumi.MapInput
	// The virtual switch ID to launch DB instances in one VPC.
	VswitchId pulumi.StringPtrInput
}

func (InstanceState) ElementType

func (InstanceState) ElementType() reflect.Type

Jump to

Keyboard shortcuts

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