Documentation
¶
Index ¶
- type Connection
- func (*Connection) ElementType() reflect.Type
- func (i *Connection) ToConnectionOutput() ConnectionOutput
- func (i *Connection) ToConnectionOutputWithContext(ctx context.Context) ConnectionOutput
- func (i *Connection) ToConnectionPtrOutput() ConnectionPtrOutput
- func (i *Connection) ToConnectionPtrOutputWithContext(ctx context.Context) ConnectionPtrOutput
- type ConnectionArgs
- type ConnectionArray
- type ConnectionArrayInput
- type ConnectionArrayOutput
- func (ConnectionArrayOutput) ElementType() reflect.Type
- func (o ConnectionArrayOutput) Index(i pulumi.IntInput) ConnectionOutput
- func (o ConnectionArrayOutput) ToConnectionArrayOutput() ConnectionArrayOutput
- func (o ConnectionArrayOutput) ToConnectionArrayOutputWithContext(ctx context.Context) ConnectionArrayOutput
- type ConnectionInput
- type ConnectionMap
- type ConnectionMapInput
- type ConnectionMapOutput
- func (ConnectionMapOutput) ElementType() reflect.Type
- func (o ConnectionMapOutput) MapIndex(k pulumi.StringInput) ConnectionOutput
- func (o ConnectionMapOutput) ToConnectionMapOutput() ConnectionMapOutput
- func (o ConnectionMapOutput) ToConnectionMapOutputWithContext(ctx context.Context) ConnectionMapOutput
- type ConnectionOutput
- func (ConnectionOutput) ElementType() reflect.Type
- func (o ConnectionOutput) ToConnectionOutput() ConnectionOutput
- func (o ConnectionOutput) ToConnectionOutputWithContext(ctx context.Context) ConnectionOutput
- func (o ConnectionOutput) ToConnectionPtrOutput() ConnectionPtrOutput
- func (o ConnectionOutput) ToConnectionPtrOutputWithContext(ctx context.Context) ConnectionPtrOutput
- type ConnectionPtrInput
- type ConnectionPtrOutput
- type ConnectionState
- type ElasticInstance
- func (*ElasticInstance) ElementType() reflect.Type
- func (i *ElasticInstance) ToElasticInstanceOutput() ElasticInstanceOutput
- func (i *ElasticInstance) ToElasticInstanceOutputWithContext(ctx context.Context) ElasticInstanceOutput
- func (i *ElasticInstance) ToElasticInstancePtrOutput() ElasticInstancePtrOutput
- func (i *ElasticInstance) ToElasticInstancePtrOutputWithContext(ctx context.Context) ElasticInstancePtrOutput
- type ElasticInstanceArgs
- type ElasticInstanceArray
- type ElasticInstanceArrayInput
- type ElasticInstanceArrayOutput
- func (ElasticInstanceArrayOutput) ElementType() reflect.Type
- func (o ElasticInstanceArrayOutput) Index(i pulumi.IntInput) ElasticInstanceOutput
- func (o ElasticInstanceArrayOutput) ToElasticInstanceArrayOutput() ElasticInstanceArrayOutput
- func (o ElasticInstanceArrayOutput) ToElasticInstanceArrayOutputWithContext(ctx context.Context) ElasticInstanceArrayOutput
- type ElasticInstanceInput
- type ElasticInstanceMap
- type ElasticInstanceMapInput
- type ElasticInstanceMapOutput
- func (ElasticInstanceMapOutput) ElementType() reflect.Type
- func (o ElasticInstanceMapOutput) MapIndex(k pulumi.StringInput) ElasticInstanceOutput
- func (o ElasticInstanceMapOutput) ToElasticInstanceMapOutput() ElasticInstanceMapOutput
- func (o ElasticInstanceMapOutput) ToElasticInstanceMapOutputWithContext(ctx context.Context) ElasticInstanceMapOutput
- type ElasticInstanceOutput
- func (ElasticInstanceOutput) ElementType() reflect.Type
- func (o ElasticInstanceOutput) ToElasticInstanceOutput() ElasticInstanceOutput
- func (o ElasticInstanceOutput) ToElasticInstanceOutputWithContext(ctx context.Context) ElasticInstanceOutput
- func (o ElasticInstanceOutput) ToElasticInstancePtrOutput() ElasticInstancePtrOutput
- func (o ElasticInstanceOutput) ToElasticInstancePtrOutputWithContext(ctx context.Context) ElasticInstancePtrOutput
- type ElasticInstancePtrInput
- type ElasticInstancePtrOutput
- type ElasticInstanceState
- type GetInstancesArgs
- type GetInstancesInstance
- type GetInstancesInstanceArgs
- type GetInstancesInstanceArray
- type GetInstancesInstanceArrayInput
- type GetInstancesInstanceArrayOutput
- func (GetInstancesInstanceArrayOutput) ElementType() reflect.Type
- func (o GetInstancesInstanceArrayOutput) Index(i pulumi.IntInput) GetInstancesInstanceOutput
- func (o GetInstancesInstanceArrayOutput) ToGetInstancesInstanceArrayOutput() GetInstancesInstanceArrayOutput
- func (o GetInstancesInstanceArrayOutput) ToGetInstancesInstanceArrayOutputWithContext(ctx context.Context) GetInstancesInstanceArrayOutput
- type GetInstancesInstanceInput
- type GetInstancesInstanceOutput
- func (o GetInstancesInstanceOutput) AvailabilityZone() pulumi.StringOutput
- func (o GetInstancesInstanceOutput) ChargeType() pulumi.StringOutput
- func (o GetInstancesInstanceOutput) CreationTime() pulumi.StringOutput
- func (o GetInstancesInstanceOutput) Description() pulumi.StringOutput
- func (GetInstancesInstanceOutput) ElementType() reflect.Type
- func (o GetInstancesInstanceOutput) Engine() pulumi.StringOutput
- func (o GetInstancesInstanceOutput) EngineVersion() pulumi.StringOutput
- func (o GetInstancesInstanceOutput) Id() pulumi.StringOutput
- func (o GetInstancesInstanceOutput) InstanceClass() pulumi.StringOutput
- func (o GetInstancesInstanceOutput) InstanceGroupCount() pulumi.StringOutput
- func (o GetInstancesInstanceOutput) InstanceNetworkType() pulumi.StringOutput
- func (o GetInstancesInstanceOutput) RegionId() pulumi.StringOutput
- func (o GetInstancesInstanceOutput) Status() pulumi.StringOutput
- func (o GetInstancesInstanceOutput) ToGetInstancesInstanceOutput() GetInstancesInstanceOutput
- func (o GetInstancesInstanceOutput) ToGetInstancesInstanceOutputWithContext(ctx context.Context) GetInstancesInstanceOutput
- type GetInstancesResult
- type GetZonesArgs
- type GetZonesResult
- type GetZonesZone
- type GetZonesZoneArgs
- type GetZonesZoneArray
- type GetZonesZoneArrayInput
- type GetZonesZoneArrayOutput
- func (GetZonesZoneArrayOutput) ElementType() reflect.Type
- func (o GetZonesZoneArrayOutput) Index(i pulumi.IntInput) GetZonesZoneOutput
- func (o GetZonesZoneArrayOutput) ToGetZonesZoneArrayOutput() GetZonesZoneArrayOutput
- func (o GetZonesZoneArrayOutput) ToGetZonesZoneArrayOutputWithContext(ctx context.Context) GetZonesZoneArrayOutput
- type GetZonesZoneInput
- type GetZonesZoneOutput
- func (GetZonesZoneOutput) ElementType() reflect.Type
- func (o GetZonesZoneOutput) Id() pulumi.StringOutput
- func (o GetZonesZoneOutput) MultiZoneIds() pulumi.StringArrayOutput
- func (o GetZonesZoneOutput) ToGetZonesZoneOutput() GetZonesZoneOutput
- func (o GetZonesZoneOutput) ToGetZonesZoneOutputWithContext(ctx context.Context) GetZonesZoneOutput
- type Instance
- func (*Instance) ElementType() reflect.Type
- func (i *Instance) ToInstanceOutput() InstanceOutput
- func (i *Instance) ToInstanceOutputWithContext(ctx context.Context) InstanceOutput
- func (i *Instance) ToInstancePtrOutput() InstancePtrOutput
- func (i *Instance) ToInstancePtrOutputWithContext(ctx context.Context) InstancePtrOutput
- type InstanceArgs
- type InstanceArray
- type InstanceArrayInput
- type InstanceArrayOutput
- type InstanceInput
- type InstanceMap
- type InstanceMapInput
- type InstanceMapOutput
- type InstanceOutput
- func (InstanceOutput) ElementType() reflect.Type
- func (o InstanceOutput) ToInstanceOutput() InstanceOutput
- func (o InstanceOutput) ToInstanceOutputWithContext(ctx context.Context) InstanceOutput
- func (o InstanceOutput) ToInstancePtrOutput() InstancePtrOutput
- func (o InstanceOutput) ToInstancePtrOutputWithContext(ctx context.Context) InstancePtrOutput
- type InstancePtrInput
- type InstancePtrOutput
- type InstanceState
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/v3/go/alicloud" "github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/gpdb" "github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/vpc" "github.com/pulumi/pulumi/sdk/v3/go/pulumi" "github.com/pulumi/pulumi/sdk/v3/go/pulumi/config"
)
func main() { pulumi.Run(func(ctx *pulumi.Context) error { cfg := config.New(ctx, "") 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"), ZoneId: 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 }) }
```
## Import
AnalyticDB for PostgreSQL's connection can be imported using the id, e.g.
```sh
$ pulumi import alicloud:gpdb/connection:Connection example abc12345678
```
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.
func (*Connection) ElementType ¶
func (*Connection) ElementType() reflect.Type
func (*Connection) ToConnectionOutput ¶
func (i *Connection) ToConnectionOutput() ConnectionOutput
func (*Connection) ToConnectionOutputWithContext ¶
func (i *Connection) ToConnectionOutputWithContext(ctx context.Context) ConnectionOutput
func (*Connection) ToConnectionPtrOutput ¶
func (i *Connection) ToConnectionPtrOutput() ConnectionPtrOutput
func (*Connection) ToConnectionPtrOutputWithContext ¶
func (i *Connection) ToConnectionPtrOutputWithContext(ctx context.Context) ConnectionPtrOutput
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 ConnectionArray ¶
type ConnectionArray []ConnectionInput
func (ConnectionArray) ElementType ¶
func (ConnectionArray) ElementType() reflect.Type
func (ConnectionArray) ToConnectionArrayOutput ¶
func (i ConnectionArray) ToConnectionArrayOutput() ConnectionArrayOutput
func (ConnectionArray) ToConnectionArrayOutputWithContext ¶
func (i ConnectionArray) ToConnectionArrayOutputWithContext(ctx context.Context) ConnectionArrayOutput
type ConnectionArrayInput ¶
type ConnectionArrayInput interface { pulumi.Input ToConnectionArrayOutput() ConnectionArrayOutput ToConnectionArrayOutputWithContext(context.Context) ConnectionArrayOutput }
ConnectionArrayInput is an input type that accepts ConnectionArray and ConnectionArrayOutput values. You can construct a concrete instance of `ConnectionArrayInput` via:
ConnectionArray{ ConnectionArgs{...} }
type ConnectionArrayOutput ¶
type ConnectionArrayOutput struct{ *pulumi.OutputState }
func (ConnectionArrayOutput) ElementType ¶
func (ConnectionArrayOutput) ElementType() reflect.Type
func (ConnectionArrayOutput) Index ¶
func (o ConnectionArrayOutput) Index(i pulumi.IntInput) ConnectionOutput
func (ConnectionArrayOutput) ToConnectionArrayOutput ¶
func (o ConnectionArrayOutput) ToConnectionArrayOutput() ConnectionArrayOutput
func (ConnectionArrayOutput) ToConnectionArrayOutputWithContext ¶
func (o ConnectionArrayOutput) ToConnectionArrayOutputWithContext(ctx context.Context) ConnectionArrayOutput
type ConnectionInput ¶
type ConnectionInput interface { pulumi.Input ToConnectionOutput() ConnectionOutput ToConnectionOutputWithContext(ctx context.Context) ConnectionOutput }
type ConnectionMap ¶
type ConnectionMap map[string]ConnectionInput
func (ConnectionMap) ElementType ¶
func (ConnectionMap) ElementType() reflect.Type
func (ConnectionMap) ToConnectionMapOutput ¶
func (i ConnectionMap) ToConnectionMapOutput() ConnectionMapOutput
func (ConnectionMap) ToConnectionMapOutputWithContext ¶
func (i ConnectionMap) ToConnectionMapOutputWithContext(ctx context.Context) ConnectionMapOutput
type ConnectionMapInput ¶
type ConnectionMapInput interface { pulumi.Input ToConnectionMapOutput() ConnectionMapOutput ToConnectionMapOutputWithContext(context.Context) ConnectionMapOutput }
ConnectionMapInput is an input type that accepts ConnectionMap and ConnectionMapOutput values. You can construct a concrete instance of `ConnectionMapInput` via:
ConnectionMap{ "key": ConnectionArgs{...} }
type ConnectionMapOutput ¶
type ConnectionMapOutput struct{ *pulumi.OutputState }
func (ConnectionMapOutput) ElementType ¶
func (ConnectionMapOutput) ElementType() reflect.Type
func (ConnectionMapOutput) MapIndex ¶
func (o ConnectionMapOutput) MapIndex(k pulumi.StringInput) ConnectionOutput
func (ConnectionMapOutput) ToConnectionMapOutput ¶
func (o ConnectionMapOutput) ToConnectionMapOutput() ConnectionMapOutput
func (ConnectionMapOutput) ToConnectionMapOutputWithContext ¶
func (o ConnectionMapOutput) ToConnectionMapOutputWithContext(ctx context.Context) ConnectionMapOutput
type ConnectionOutput ¶
type ConnectionOutput struct {
*pulumi.OutputState
}
func (ConnectionOutput) ElementType ¶
func (ConnectionOutput) ElementType() reflect.Type
func (ConnectionOutput) ToConnectionOutput ¶
func (o ConnectionOutput) ToConnectionOutput() ConnectionOutput
func (ConnectionOutput) ToConnectionOutputWithContext ¶
func (o ConnectionOutput) ToConnectionOutputWithContext(ctx context.Context) ConnectionOutput
func (ConnectionOutput) ToConnectionPtrOutput ¶
func (o ConnectionOutput) ToConnectionPtrOutput() ConnectionPtrOutput
func (ConnectionOutput) ToConnectionPtrOutputWithContext ¶
func (o ConnectionOutput) ToConnectionPtrOutputWithContext(ctx context.Context) ConnectionPtrOutput
type ConnectionPtrInput ¶
type ConnectionPtrInput interface { pulumi.Input ToConnectionPtrOutput() ConnectionPtrOutput ToConnectionPtrOutputWithContext(ctx context.Context) ConnectionPtrOutput }
type ConnectionPtrOutput ¶
type ConnectionPtrOutput struct {
*pulumi.OutputState
}
func (ConnectionPtrOutput) ElementType ¶
func (ConnectionPtrOutput) ElementType() reflect.Type
func (ConnectionPtrOutput) ToConnectionPtrOutput ¶
func (o ConnectionPtrOutput) ToConnectionPtrOutput() ConnectionPtrOutput
func (ConnectionPtrOutput) ToConnectionPtrOutputWithContext ¶
func (o ConnectionPtrOutput) ToConnectionPtrOutputWithContext(ctx context.Context) ConnectionPtrOutput
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 ElasticInstance ¶ added in v3.5.0
type ElasticInstance struct { pulumi.CustomResourceState // ADB PG instance connection string. ConnectionString pulumi.StringOutput `pulumi:"connectionString"` // The description of ADB PG instance. It is a string of 2 to 256 characters. DbInstanceDescription pulumi.StringPtrOutput `pulumi:"dbInstanceDescription"` // Database engine: `gpdb`. Engine pulumi.StringOutput `pulumi:"engine"` // Database version. Valid value is `6.0`. EngineVersion pulumi.StringOutput `pulumi:"engineVersion"` // The network type of ADB PG instance. Only `VPC` supported now. InstanceNetworkType pulumi.StringPtrOutput `pulumi:"instanceNetworkType"` // The specification of segment nodes. Valid values: `2C16G`, `4C32G`, `16C128G`. InstanceSpec pulumi.StringOutput `pulumi:"instanceSpec"` // The subscription period. Valid values: [1~12]. It is valid when paymentType is `Subscription`.\ // **NOTE:** Will not take effect after modifying `paymentDuration` for now, if you want to renew a PayAsYouGo instance, need to do in on aliyun console. PaymentDuration pulumi.IntPtrOutput `pulumi:"paymentDuration"` // The unit of the subscription period. Valid values: `Month`, `Year`. It is valid when paymentType is `Subscription`.\ // **NOTE:** Will not take effect after modifying `paymentDurationUnit` for now, if you want to renew a PayAsYouGo instance, need to do in on aliyun console. PaymentDurationUnit pulumi.StringPtrOutput `pulumi:"paymentDurationUnit"` // Valid values are `PayAsYouGo`, `Subscription`. Default to `PayAsYouGo`. PaymentType pulumi.StringPtrOutput `pulumi:"paymentType"` // List of IP addresses allowed to access all databases of an instance. The list contains up to 1,000 IP addresses, separated by commas. Supported formats include 0.0.0.0/0, 10.23.12.24 (IP), and 10.23.12.24/24 (Classless Inter-Domain Routing (CIDR) mode. /24 represents the length of the prefix in an IP address. The range of the prefix length is [1,32]). SecurityIpLists pulumi.StringArrayOutput `pulumi:"securityIpLists"` // The number of segment nodes. Minimum is `4`, max is `256`, step is `4`. SegNodeNum pulumi.IntOutput `pulumi:"segNodeNum"` // The disk type of segment nodes. Valid values: `cloudEssd`, `cloudEfficiency`. SegStorageType pulumi.StringOutput `pulumi:"segStorageType"` // Instance status. Status pulumi.StringOutput `pulumi:"status"` // The storage capacity of per segment node. Unit: GB. Minimum is `50`, max is `4000`, step is `50`. StorageSize pulumi.IntOutput `pulumi:"storageSize"` // The virtual switch ID to launch ADB PG instances in one VPC. VswitchId pulumi.StringOutput `pulumi:"vswitchId"` // The Zone to launch the ADB PG instance. If specified, must be consistent with the zone where the vswitch is located. ZoneId pulumi.StringOutput `pulumi:"zoneId"` }
Provides a AnalyticDB for PostgreSQL instance resource which storage type is flexible. Compared to the reserved storage ADB PG instance, you can scale up each disk and smoothly scale out nodes online.\ For more detail product introduction, see [here](https://www.alibabacloud.com/help/doc-detail/141368.htm).
> **NOTE:** Available in 1.127.0+
## Example Usage ### Create a AnalyticDB for PostgreSQL instance
```go package main
import (
"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud" "github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/gpdb" "github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/vpc" "github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() { pulumi.Run(func(ctx *pulumi.Context) error { 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{ ZoneId: pulumi.String(defaultZones.Zones[0].Id), VpcId: defaultNetwork.ID(), CidrBlock: pulumi.String("172.16.0.0/24"), VswitchName: pulumi.String("vpc-123456"), }) if err != nil { return err } _, err = gpdb.NewElasticInstance(ctx, "adbPgInstance", &gpdb.ElasticInstanceArgs{ Engine: pulumi.String("gpdb"), EngineVersion: pulumi.String("6.0"), SegStorageType: pulumi.String("cloud_essd"), SegNodeNum: pulumi.Int(4), StorageSize: pulumi.Int(50), InstanceSpec: pulumi.String("2C16G"), DbInstanceDescription: pulumi.String("Created by terraform"), InstanceNetworkType: pulumi.String("VPC"), PaymentType: pulumi.String("PayAsYouGo"), VswitchId: defaultSwitch.ID(), }) if err != nil { return err } return nil }) }
```
## Import
AnalyticDB for PostgreSQL can be imported using the id, e.g.
```sh
$ pulumi import alicloud:gpdb/elasticInstance:ElasticInstance adb_pg_instance gp-bpxxxxxxxxxxxxxx
```
func GetElasticInstance ¶ added in v3.5.0
func GetElasticInstance(ctx *pulumi.Context, name string, id pulumi.IDInput, state *ElasticInstanceState, opts ...pulumi.ResourceOption) (*ElasticInstance, error)
GetElasticInstance gets an existing ElasticInstance 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 NewElasticInstance ¶ added in v3.5.0
func NewElasticInstance(ctx *pulumi.Context, name string, args *ElasticInstanceArgs, opts ...pulumi.ResourceOption) (*ElasticInstance, error)
NewElasticInstance registers a new resource with the given unique name, arguments, and options.
func (*ElasticInstance) ElementType ¶ added in v3.5.0
func (*ElasticInstance) ElementType() reflect.Type
func (*ElasticInstance) ToElasticInstanceOutput ¶ added in v3.5.0
func (i *ElasticInstance) ToElasticInstanceOutput() ElasticInstanceOutput
func (*ElasticInstance) ToElasticInstanceOutputWithContext ¶ added in v3.5.0
func (i *ElasticInstance) ToElasticInstanceOutputWithContext(ctx context.Context) ElasticInstanceOutput
func (*ElasticInstance) ToElasticInstancePtrOutput ¶ added in v3.5.0
func (i *ElasticInstance) ToElasticInstancePtrOutput() ElasticInstancePtrOutput
func (*ElasticInstance) ToElasticInstancePtrOutputWithContext ¶ added in v3.5.0
func (i *ElasticInstance) ToElasticInstancePtrOutputWithContext(ctx context.Context) ElasticInstancePtrOutput
type ElasticInstanceArgs ¶ added in v3.5.0
type ElasticInstanceArgs struct { // The description of ADB PG instance. It is a string of 2 to 256 characters. DbInstanceDescription pulumi.StringPtrInput // Database engine: `gpdb`. Engine pulumi.StringInput // Database version. Valid value is `6.0`. EngineVersion pulumi.StringInput // The network type of ADB PG instance. Only `VPC` supported now. InstanceNetworkType pulumi.StringPtrInput // The specification of segment nodes. Valid values: `2C16G`, `4C32G`, `16C128G`. InstanceSpec pulumi.StringInput // The subscription period. Valid values: [1~12]. It is valid when paymentType is `Subscription`.\ // **NOTE:** Will not take effect after modifying `paymentDuration` for now, if you want to renew a PayAsYouGo instance, need to do in on aliyun console. PaymentDuration pulumi.IntPtrInput // The unit of the subscription period. Valid values: `Month`, `Year`. It is valid when paymentType is `Subscription`.\ // **NOTE:** Will not take effect after modifying `paymentDurationUnit` for now, if you want to renew a PayAsYouGo instance, need to do in on aliyun console. PaymentDurationUnit pulumi.StringPtrInput // Valid values are `PayAsYouGo`, `Subscription`. Default to `PayAsYouGo`. PaymentType pulumi.StringPtrInput // List of IP addresses allowed to access all databases of an instance. The list contains up to 1,000 IP addresses, separated by commas. Supported formats include 0.0.0.0/0, 10.23.12.24 (IP), and 10.23.12.24/24 (Classless Inter-Domain Routing (CIDR) mode. /24 represents the length of the prefix in an IP address. The range of the prefix length is [1,32]). SecurityIpLists pulumi.StringArrayInput // The number of segment nodes. Minimum is `4`, max is `256`, step is `4`. SegNodeNum pulumi.IntInput // The disk type of segment nodes. Valid values: `cloudEssd`, `cloudEfficiency`. SegStorageType pulumi.StringInput // The storage capacity of per segment node. Unit: GB. Minimum is `50`, max is `4000`, step is `50`. StorageSize pulumi.IntInput // The virtual switch ID to launch ADB PG instances in one VPC. VswitchId pulumi.StringInput // The Zone to launch the ADB PG instance. If specified, must be consistent with the zone where the vswitch is located. ZoneId pulumi.StringPtrInput }
The set of arguments for constructing a ElasticInstance resource.
func (ElasticInstanceArgs) ElementType ¶ added in v3.5.0
func (ElasticInstanceArgs) ElementType() reflect.Type
type ElasticInstanceArray ¶ added in v3.5.0
type ElasticInstanceArray []ElasticInstanceInput
func (ElasticInstanceArray) ElementType ¶ added in v3.5.0
func (ElasticInstanceArray) ElementType() reflect.Type
func (ElasticInstanceArray) ToElasticInstanceArrayOutput ¶ added in v3.5.0
func (i ElasticInstanceArray) ToElasticInstanceArrayOutput() ElasticInstanceArrayOutput
func (ElasticInstanceArray) ToElasticInstanceArrayOutputWithContext ¶ added in v3.5.0
func (i ElasticInstanceArray) ToElasticInstanceArrayOutputWithContext(ctx context.Context) ElasticInstanceArrayOutput
type ElasticInstanceArrayInput ¶ added in v3.5.0
type ElasticInstanceArrayInput interface { pulumi.Input ToElasticInstanceArrayOutput() ElasticInstanceArrayOutput ToElasticInstanceArrayOutputWithContext(context.Context) ElasticInstanceArrayOutput }
ElasticInstanceArrayInput is an input type that accepts ElasticInstanceArray and ElasticInstanceArrayOutput values. You can construct a concrete instance of `ElasticInstanceArrayInput` via:
ElasticInstanceArray{ ElasticInstanceArgs{...} }
type ElasticInstanceArrayOutput ¶ added in v3.5.0
type ElasticInstanceArrayOutput struct{ *pulumi.OutputState }
func (ElasticInstanceArrayOutput) ElementType ¶ added in v3.5.0
func (ElasticInstanceArrayOutput) ElementType() reflect.Type
func (ElasticInstanceArrayOutput) Index ¶ added in v3.5.0
func (o ElasticInstanceArrayOutput) Index(i pulumi.IntInput) ElasticInstanceOutput
func (ElasticInstanceArrayOutput) ToElasticInstanceArrayOutput ¶ added in v3.5.0
func (o ElasticInstanceArrayOutput) ToElasticInstanceArrayOutput() ElasticInstanceArrayOutput
func (ElasticInstanceArrayOutput) ToElasticInstanceArrayOutputWithContext ¶ added in v3.5.0
func (o ElasticInstanceArrayOutput) ToElasticInstanceArrayOutputWithContext(ctx context.Context) ElasticInstanceArrayOutput
type ElasticInstanceInput ¶ added in v3.5.0
type ElasticInstanceInput interface { pulumi.Input ToElasticInstanceOutput() ElasticInstanceOutput ToElasticInstanceOutputWithContext(ctx context.Context) ElasticInstanceOutput }
type ElasticInstanceMap ¶ added in v3.5.0
type ElasticInstanceMap map[string]ElasticInstanceInput
func (ElasticInstanceMap) ElementType ¶ added in v3.5.0
func (ElasticInstanceMap) ElementType() reflect.Type
func (ElasticInstanceMap) ToElasticInstanceMapOutput ¶ added in v3.5.0
func (i ElasticInstanceMap) ToElasticInstanceMapOutput() ElasticInstanceMapOutput
func (ElasticInstanceMap) ToElasticInstanceMapOutputWithContext ¶ added in v3.5.0
func (i ElasticInstanceMap) ToElasticInstanceMapOutputWithContext(ctx context.Context) ElasticInstanceMapOutput
type ElasticInstanceMapInput ¶ added in v3.5.0
type ElasticInstanceMapInput interface { pulumi.Input ToElasticInstanceMapOutput() ElasticInstanceMapOutput ToElasticInstanceMapOutputWithContext(context.Context) ElasticInstanceMapOutput }
ElasticInstanceMapInput is an input type that accepts ElasticInstanceMap and ElasticInstanceMapOutput values. You can construct a concrete instance of `ElasticInstanceMapInput` via:
ElasticInstanceMap{ "key": ElasticInstanceArgs{...} }
type ElasticInstanceMapOutput ¶ added in v3.5.0
type ElasticInstanceMapOutput struct{ *pulumi.OutputState }
func (ElasticInstanceMapOutput) ElementType ¶ added in v3.5.0
func (ElasticInstanceMapOutput) ElementType() reflect.Type
func (ElasticInstanceMapOutput) MapIndex ¶ added in v3.5.0
func (o ElasticInstanceMapOutput) MapIndex(k pulumi.StringInput) ElasticInstanceOutput
func (ElasticInstanceMapOutput) ToElasticInstanceMapOutput ¶ added in v3.5.0
func (o ElasticInstanceMapOutput) ToElasticInstanceMapOutput() ElasticInstanceMapOutput
func (ElasticInstanceMapOutput) ToElasticInstanceMapOutputWithContext ¶ added in v3.5.0
func (o ElasticInstanceMapOutput) ToElasticInstanceMapOutputWithContext(ctx context.Context) ElasticInstanceMapOutput
type ElasticInstanceOutput ¶ added in v3.5.0
type ElasticInstanceOutput struct {
*pulumi.OutputState
}
func (ElasticInstanceOutput) ElementType ¶ added in v3.5.0
func (ElasticInstanceOutput) ElementType() reflect.Type
func (ElasticInstanceOutput) ToElasticInstanceOutput ¶ added in v3.5.0
func (o ElasticInstanceOutput) ToElasticInstanceOutput() ElasticInstanceOutput
func (ElasticInstanceOutput) ToElasticInstanceOutputWithContext ¶ added in v3.5.0
func (o ElasticInstanceOutput) ToElasticInstanceOutputWithContext(ctx context.Context) ElasticInstanceOutput
func (ElasticInstanceOutput) ToElasticInstancePtrOutput ¶ added in v3.5.0
func (o ElasticInstanceOutput) ToElasticInstancePtrOutput() ElasticInstancePtrOutput
func (ElasticInstanceOutput) ToElasticInstancePtrOutputWithContext ¶ added in v3.5.0
func (o ElasticInstanceOutput) ToElasticInstancePtrOutputWithContext(ctx context.Context) ElasticInstancePtrOutput
type ElasticInstancePtrInput ¶ added in v3.5.0
type ElasticInstancePtrInput interface { pulumi.Input ToElasticInstancePtrOutput() ElasticInstancePtrOutput ToElasticInstancePtrOutputWithContext(ctx context.Context) ElasticInstancePtrOutput }
type ElasticInstancePtrOutput ¶ added in v3.5.0
type ElasticInstancePtrOutput struct {
*pulumi.OutputState
}
func (ElasticInstancePtrOutput) ElementType ¶ added in v3.5.0
func (ElasticInstancePtrOutput) ElementType() reflect.Type
func (ElasticInstancePtrOutput) ToElasticInstancePtrOutput ¶ added in v3.5.0
func (o ElasticInstancePtrOutput) ToElasticInstancePtrOutput() ElasticInstancePtrOutput
func (ElasticInstancePtrOutput) ToElasticInstancePtrOutputWithContext ¶ added in v3.5.0
func (o ElasticInstancePtrOutput) ToElasticInstancePtrOutputWithContext(ctx context.Context) ElasticInstancePtrOutput
type ElasticInstanceState ¶ added in v3.5.0
type ElasticInstanceState struct { // ADB PG instance connection string. ConnectionString pulumi.StringPtrInput // The description of ADB PG instance. It is a string of 2 to 256 characters. DbInstanceDescription pulumi.StringPtrInput // Database engine: `gpdb`. Engine pulumi.StringPtrInput // Database version. Valid value is `6.0`. EngineVersion pulumi.StringPtrInput // The network type of ADB PG instance. Only `VPC` supported now. InstanceNetworkType pulumi.StringPtrInput // The specification of segment nodes. Valid values: `2C16G`, `4C32G`, `16C128G`. InstanceSpec pulumi.StringPtrInput // The subscription period. Valid values: [1~12]. It is valid when paymentType is `Subscription`.\ // **NOTE:** Will not take effect after modifying `paymentDuration` for now, if you want to renew a PayAsYouGo instance, need to do in on aliyun console. PaymentDuration pulumi.IntPtrInput // The unit of the subscription period. Valid values: `Month`, `Year`. It is valid when paymentType is `Subscription`.\ // **NOTE:** Will not take effect after modifying `paymentDurationUnit` for now, if you want to renew a PayAsYouGo instance, need to do in on aliyun console. PaymentDurationUnit pulumi.StringPtrInput // Valid values are `PayAsYouGo`, `Subscription`. Default to `PayAsYouGo`. PaymentType pulumi.StringPtrInput // List of IP addresses allowed to access all databases of an instance. The list contains up to 1,000 IP addresses, separated by commas. Supported formats include 0.0.0.0/0, 10.23.12.24 (IP), and 10.23.12.24/24 (Classless Inter-Domain Routing (CIDR) mode. /24 represents the length of the prefix in an IP address. The range of the prefix length is [1,32]). SecurityIpLists pulumi.StringArrayInput // The number of segment nodes. Minimum is `4`, max is `256`, step is `4`. SegNodeNum pulumi.IntPtrInput // The disk type of segment nodes. Valid values: `cloudEssd`, `cloudEfficiency`. SegStorageType pulumi.StringPtrInput // Instance status. Status pulumi.StringPtrInput // The storage capacity of per segment node. Unit: GB. Minimum is `50`, max is `4000`, step is `50`. StorageSize pulumi.IntPtrInput // The virtual switch ID to launch ADB PG instances in one VPC. VswitchId pulumi.StringPtrInput // The Zone to launch the ADB PG instance. If specified, must be consistent with the zone where the vswitch is located. ZoneId pulumi.StringPtrInput }
func (ElasticInstanceState) ElementType ¶ added in v3.5.0
func (ElasticInstanceState) 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) ElementType() reflect.Type
func (GetInstancesInstanceArrayOutput) Index ¶
func (o GetInstancesInstanceArrayOutput) Index(i pulumi.IntInput) GetInstancesInstanceOutput
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 ¶
func (o GetInstancesInstanceOutput) ChargeType() pulumi.StringOutput
Billing method. Value options are `PostPaid` for Pay-As-You-Go and `PrePaid` for yearly or monthly subscription.
func (GetInstancesInstanceOutput) CreationTime ¶
func (o GetInstancesInstanceOutput) CreationTime() pulumi.StringOutput
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 ¶
func (o GetInstancesInstanceOutput) Description() pulumi.StringOutput
The description of an instance.
func (GetInstancesInstanceOutput) ElementType ¶
func (GetInstancesInstanceOutput) ElementType() reflect.Type
func (GetInstancesInstanceOutput) Engine ¶
func (o GetInstancesInstanceOutput) Engine() pulumi.StringOutput
Database engine type. Supported option is `gpdb`.
func (GetInstancesInstanceOutput) EngineVersion ¶
func (o GetInstancesInstanceOutput) EngineVersion() pulumi.StringOutput
Database engine version.
func (GetInstancesInstanceOutput) Id ¶
func (o GetInstancesInstanceOutput) Id() pulumi.StringOutput
The instance id.
func (GetInstancesInstanceOutput) InstanceClass ¶
func (o GetInstancesInstanceOutput) InstanceClass() pulumi.StringOutput
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 ¶
func (o GetInstancesInstanceOutput) RegionId() pulumi.StringOutput
Region ID the instance belongs to.
func (GetInstancesInstanceOutput) Status ¶
func (o GetInstancesInstanceOutput) Status() pulumi.StringOutput
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/v3/go/alicloud/gpdb" "github.com/pulumi/pulumi/sdk/v3/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 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 (o GetZonesZoneArrayOutput) Index(i pulumi.IntInput) GetZonesZoneOutput
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) 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.
> **NOTE:** This resource is used to manage a Reserved Storage Mode instance, and creating a new reserved storage mode instance is no longer supported since v1.127.0. You can still use this resource to manage the instance which has been already created, but can not create a new one.
## Example Usage ### Create a Gpdb instance
```go package main
import (
"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud" "github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/gpdb" "github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/vpc" "github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() { pulumi.Run(func(ctx *pulumi.Context) error { 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{ ZoneId: pulumi.String(defaultZones.Zones[0].Id), VpcId: defaultNetwork.ID(), CidrBlock: pulumi.String("172.16.0.0/24"), VswitchName: pulumi.String("vpc-123456"), }) 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 }) }
```
## Import
AnalyticDB for PostgreSQL can be imported using the id, e.g.
```sh
$ pulumi import alicloud:gpdb/instance:Instance example gp-bp1291daeda44194
```
func GetInstance ¶
func GetInstance(ctx *pulumi.Context, name string, id pulumi.IDInput, state *InstanceState, opts ...pulumi.ResourceOption) (*Instance, error)
GetInstance gets an existing Instance resource's state with the given name, ID, and optional state properties that are used to uniquely qualify the lookup (nil if not required).
func NewInstance ¶
func NewInstance(ctx *pulumi.Context, name string, args *InstanceArgs, opts ...pulumi.ResourceOption) (*Instance, error)
NewInstance registers a new resource with the given unique name, arguments, and options.
func (*Instance) ElementType ¶
func (*Instance) ToInstanceOutput ¶
func (i *Instance) ToInstanceOutput() InstanceOutput
func (*Instance) ToInstanceOutputWithContext ¶
func (i *Instance) ToInstanceOutputWithContext(ctx context.Context) InstanceOutput
func (*Instance) ToInstancePtrOutput ¶
func (i *Instance) ToInstancePtrOutput() InstancePtrOutput
func (*Instance) ToInstancePtrOutputWithContext ¶
func (i *Instance) ToInstancePtrOutputWithContext(ctx context.Context) InstancePtrOutput
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 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 (o InstanceArrayOutput) Index(i pulumi.IntInput) InstanceOutput
func (InstanceArrayOutput) ToInstanceArrayOutput ¶
func (o InstanceArrayOutput) ToInstanceArrayOutput() InstanceArrayOutput
func (InstanceArrayOutput) ToInstanceArrayOutputWithContext ¶
func (o InstanceArrayOutput) ToInstanceArrayOutputWithContext(ctx context.Context) InstanceArrayOutput
type InstanceInput ¶
type InstanceInput interface { pulumi.Input ToInstanceOutput() InstanceOutput ToInstanceOutputWithContext(ctx context.Context) InstanceOutput }
type InstanceMap ¶
type InstanceMap map[string]InstanceInput
func (InstanceMap) ElementType ¶
func (InstanceMap) ElementType() reflect.Type
func (InstanceMap) ToInstanceMapOutput ¶
func (i InstanceMap) ToInstanceMapOutput() InstanceMapOutput
func (InstanceMap) ToInstanceMapOutputWithContext ¶
func (i InstanceMap) ToInstanceMapOutputWithContext(ctx context.Context) InstanceMapOutput
type InstanceMapInput ¶
type InstanceMapInput interface { pulumi.Input ToInstanceMapOutput() InstanceMapOutput ToInstanceMapOutputWithContext(context.Context) InstanceMapOutput }
InstanceMapInput is an input type that accepts InstanceMap and InstanceMapOutput values. You can construct a concrete instance of `InstanceMapInput` via:
InstanceMap{ "key": InstanceArgs{...} }
type InstanceMapOutput ¶
type InstanceMapOutput struct{ *pulumi.OutputState }
func (InstanceMapOutput) ElementType ¶
func (InstanceMapOutput) ElementType() reflect.Type
func (InstanceMapOutput) MapIndex ¶
func (o InstanceMapOutput) MapIndex(k pulumi.StringInput) InstanceOutput
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) ElementType ¶
func (InstanceOutput) ElementType() reflect.Type
func (InstanceOutput) ToInstanceOutput ¶
func (o InstanceOutput) ToInstanceOutput() InstanceOutput
func (InstanceOutput) ToInstanceOutputWithContext ¶
func (o InstanceOutput) ToInstanceOutputWithContext(ctx context.Context) InstanceOutput
func (InstanceOutput) ToInstancePtrOutput ¶
func (o InstanceOutput) ToInstancePtrOutput() InstancePtrOutput
func (InstanceOutput) ToInstancePtrOutputWithContext ¶
func (o InstanceOutput) ToInstancePtrOutputWithContext(ctx context.Context) InstancePtrOutput
type InstancePtrInput ¶
type InstancePtrInput interface { pulumi.Input ToInstancePtrOutput() InstancePtrOutput ToInstancePtrOutputWithContext(ctx context.Context) InstancePtrOutput }
type InstancePtrOutput ¶
type InstancePtrOutput struct {
*pulumi.OutputState
}
func (InstancePtrOutput) ElementType ¶
func (InstancePtrOutput) ElementType() reflect.Type
func (InstancePtrOutput) ToInstancePtrOutput ¶
func (o InstancePtrOutput) ToInstancePtrOutput() InstancePtrOutput
func (InstancePtrOutput) ToInstancePtrOutputWithContext ¶
func (o InstancePtrOutput) ToInstancePtrOutputWithContext(ctx context.Context) InstancePtrOutput
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