SynchronizationInstance

class SynchronizationInstance : KotlinCustomResource

Provides a DTS Synchronization Instance resource. For information about DTS Synchronization Instance and how to use it, see What is Synchronization Instance.

NOTE: Available since v1.138.0.

Example Usage

Basic Usage

import * as pulumi from "@pulumi/pulumi";
import * as alicloud from "@pulumi/alicloud";
const _default = alicloud.getRegions({
current: true,
});
const defaultSynchronizationInstance = new alicloud.dts.SynchronizationInstance("default", {
paymentType: "PayAsYouGo",
sourceEndpointEngineName: "MySQL",
sourceEndpointRegion: _default.then(_default => _default.regions?.[0]?.id),
destinationEndpointEngineName: "MySQL",
destinationEndpointRegion: _default.then(_default => _default.regions?.[0]?.id),
instanceClass: "small",
syncArchitecture: "oneway",
});
import pulumi
import pulumi_alicloud as alicloud
default = alicloud.get_regions(current=True)
default_synchronization_instance = alicloud.dts.SynchronizationInstance("default",
payment_type="PayAsYouGo",
source_endpoint_engine_name="MySQL",
source_endpoint_region=default.regions[0].id,
destination_endpoint_engine_name="MySQL",
destination_endpoint_region=default.regions[0].id,
instance_class="small",
sync_architecture="oneway")
using System.Collections.Generic;
using System.Linq;
using Pulumi;
using AliCloud = Pulumi.AliCloud;
return await Deployment.RunAsync(() =>
{
var @default = AliCloud.GetRegions.Invoke(new()
{
Current = true,
});
var defaultSynchronizationInstance = new AliCloud.Dts.SynchronizationInstance("default", new()
{
PaymentType = "PayAsYouGo",
SourceEndpointEngineName = "MySQL",
SourceEndpointRegion = @default.Apply(@default => @default.Apply(getRegionsResult => getRegionsResult.Regions[0]?.Id)),
DestinationEndpointEngineName = "MySQL",
DestinationEndpointRegion = @default.Apply(@default => @default.Apply(getRegionsResult => getRegionsResult.Regions[0]?.Id)),
InstanceClass = "small",
SyncArchitecture = "oneway",
});
});
package main
import (
"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud"
"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/dts"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() {
pulumi.Run(func(ctx *pulumi.Context) error {
_default, err := alicloud.GetRegions(ctx, &alicloud.GetRegionsArgs{
Current: pulumi.BoolRef(true),
}, nil)
if err != nil {
return err
}
_, err = dts.NewSynchronizationInstance(ctx, "default", &dts.SynchronizationInstanceArgs{
PaymentType: pulumi.String("PayAsYouGo"),
SourceEndpointEngineName: pulumi.String("MySQL"),
SourceEndpointRegion: pulumi.String(_default.Regions[0].Id),
DestinationEndpointEngineName: pulumi.String("MySQL"),
DestinationEndpointRegion: pulumi.String(_default.Regions[0].Id),
InstanceClass: pulumi.String("small"),
SyncArchitecture: pulumi.String("oneway"),
})
if err != nil {
return err
}
return nil
})
}
package generated_program;
import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.alicloud.AlicloudFunctions;
import com.pulumi.alicloud.inputs.GetRegionsArgs;
import com.pulumi.alicloud.dts.SynchronizationInstance;
import com.pulumi.alicloud.dts.SynchronizationInstanceArgs;
import java.util.List;
import java.util.ArrayList;
import java.util.Map;
import java.io.File;
import java.nio.file.Files;
import java.nio.file.Paths;
public class App {
public static void main(String[] args) {
Pulumi.run(App::stack);
}
public static void stack(Context ctx) {
final var default = AlicloudFunctions.getRegions(GetRegionsArgs.builder()
.current(true)
.build());
var defaultSynchronizationInstance = new SynchronizationInstance("defaultSynchronizationInstance", SynchronizationInstanceArgs.builder()
.paymentType("PayAsYouGo")
.sourceEndpointEngineName("MySQL")
.sourceEndpointRegion(default_.regions()[0].id())
.destinationEndpointEngineName("MySQL")
.destinationEndpointRegion(default_.regions()[0].id())
.instanceClass("small")
.syncArchitecture("oneway")
.build());
}
}
resources:
defaultSynchronizationInstance:
type: alicloud:dts:SynchronizationInstance
name: default
properties:
paymentType: PayAsYouGo
sourceEndpointEngineName: MySQL
sourceEndpointRegion: ${default.regions[0].id}
destinationEndpointEngineName: MySQL
destinationEndpointRegion: ${default.regions[0].id}
instanceClass: small
syncArchitecture: oneway
variables:
default:
fn::invoke:
function: alicloud:getRegions
arguments:
current: true

Import

DTS Synchronization Instance can be imported using the id, e.g.

$ pulumi import alicloud:dts/synchronizationInstance:SynchronizationInstance example <id>

Properties

Link copied to clipboard
val autoPay: Output<String>?

Whether to automatically renew when it expires. Valid values: true, false.

Link copied to clipboard
val autoStart: Output<String>?

Whether to automatically start the task after the purchase completed. Valid values: true, false.

Link copied to clipboard
val computeUnit: Output<Int>?

ETL specifications. The unit is the computing unit ComputeUnit (CU), 1CU=1vCPU+4 GB memory. The value range is an integer greater than or equal to 2.

Link copied to clipboard
val databaseCount: Output<Int>?

The number of private customized RDS instances under PolarDB-X. The default value is 1. This parameter needs to be passed only when source_endpoint_engine_name equals drds.

Link copied to clipboard

The type of destination engine. Valid values: ADS, DB2, DRDS, DataHub, Greenplum, MSSQL, MySQL, PolarDB, PostgreSQL, Redis, Tablestore, as400, clickhouse, kafka, mongodb, odps, oracle, polardb_o, polardb_pg, tidb. For the correspondence between the supported source and target libraries, see Supported Databases, Synchronization Initialization Types and Synchronization Topologies, Supported Databases and Migration Types.

Link copied to clipboard

The region of destination instance. List of supported regions.

Link copied to clipboard
val id: Output<String>
Link copied to clipboard
val instanceClass: Output<String>

The instance class. Valid values: large, medium, micro, small, xlarge, xxlarge. You can only upgrade the configuration, not downgrade the configuration. If you downgrade the instance, you need to submit a ticket.

Link copied to clipboard
val paymentDuration: Output<Int>?

The duration of prepaid instance purchase. this parameter is required When payment_type equals Subscription.

Link copied to clipboard

The payment duration unit. Valid values: Month, Year. When payment_type is Subscription, this parameter is valid and must be passed in.

Link copied to clipboard
val paymentType: Output<String>

The payment type of the resource. Valid values: Subscription, PayAsYouGo.

Link copied to clipboard
val pulumiChildResources: Set<KotlinResource>
Link copied to clipboard
Link copied to clipboard
Link copied to clipboard
val quantity: Output<Int>?

The number of instances purchased.

Link copied to clipboard

The type of source endpoint engine. Valid values: ADS, DB2, DRDS, DataHub, Greenplum, MSSQL, MySQL, PolarDB, PostgreSQL, Redis, Tablestore, as400, clickhouse, kafka, mongodb, odps, oracle, polardb_o, polardb_pg, tidb. For the correspondence between the supported source and target libraries, see Supported Databases, Synchronization Initialization Types and Synchronization Topologies, Supported Databases and Migration Types.

Link copied to clipboard

The region of source instance.

Link copied to clipboard
val status: Output<String>

The status.

Link copied to clipboard
val syncArchitecture: Output<String>?

The sync architecture. Valid values: oneway, bidirectional.

Link copied to clipboard
val urn: Output<String>