Instance Args
Provides a Dts Instance resource. For information about Dts Instance and how to use it, see What is Instance.
NOTE: Available since v1.198.0.
Example Usage
Basic Usage
import * as pulumi from "@pulumi/pulumi";
import * as alicloud from "@pulumi/alicloud";
const _default = alicloud.resourcemanager.getResourceGroups({
status: "OK",
});
const defaultGetRegions = alicloud.getRegions({
current: true,
});
const defaultInstance = new alicloud.dts.Instance("default", {
type: "sync",
resourceGroupId: _default.then(_default => _default.ids?.[0]),
paymentType: "Subscription",
instanceClass: "large",
sourceEndpointEngineName: "MySQL",
sourceRegion: defaultGetRegions.then(defaultGetRegions => defaultGetRegions.regions?.[0]?.id),
destinationEndpointEngineName: "MySQL",
destinationRegion: defaultGetRegions.then(defaultGetRegions => defaultGetRegions.regions?.[0]?.id),
});
import pulumi
import pulumi_alicloud as alicloud
default = alicloud.resourcemanager.get_resource_groups(status="OK")
default_get_regions = alicloud.get_regions(current=True)
default_instance = alicloud.dts.Instance("default",
type="sync",
resource_group_id=default.ids[0],
payment_type="Subscription",
instance_class="large",
source_endpoint_engine_name="MySQL",
source_region=default_get_regions.regions[0].id,
destination_endpoint_engine_name="MySQL",
destination_region=default_get_regions.regions[0].id)
using System.Collections.Generic;
using System.Linq;
using Pulumi;
using AliCloud = Pulumi.AliCloud;
return await Deployment.RunAsync(() =>
{
var @default = AliCloud.ResourceManager.GetResourceGroups.Invoke(new()
{
Status = "OK",
});
var defaultGetRegions = AliCloud.GetRegions.Invoke(new()
{
Current = true,
});
var defaultInstance = new AliCloud.Dts.Instance("default", new()
{
Type = "sync",
ResourceGroupId = @default.Apply(@default => @default.Apply(getResourceGroupsResult => getResourceGroupsResult.Ids[0])),
PaymentType = "Subscription",
InstanceClass = "large",
SourceEndpointEngineName = "MySQL",
SourceRegion = defaultGetRegions.Apply(getRegionsResult => getRegionsResult.Regions[0]?.Id),
DestinationEndpointEngineName = "MySQL",
DestinationRegion = defaultGetRegions.Apply(getRegionsResult => getRegionsResult.Regions[0]?.Id),
});
});
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-alicloud/sdk/v3/go/alicloud/resourcemanager"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() {
pulumi.Run(func(ctx *pulumi.Context) error {
_default, err := resourcemanager.GetResourceGroups(ctx, &resourcemanager.GetResourceGroupsArgs{
Status: pulumi.StringRef("OK"),
}, nil)
if err != nil {
return err
}
defaultGetRegions, err := alicloud.GetRegions(ctx, &alicloud.GetRegionsArgs{
Current: pulumi.BoolRef(true),
}, nil)
if err != nil {
return err
}
_, err = dts.NewInstance(ctx, "default", &dts.InstanceArgs{
Type: pulumi.String("sync"),
ResourceGroupId: pulumi.String(_default.Ids[0]),
PaymentType: pulumi.String("Subscription"),
InstanceClass: pulumi.String("large"),
SourceEndpointEngineName: pulumi.String("MySQL"),
SourceRegion: pulumi.String(defaultGetRegions.Regions[0].Id),
DestinationEndpointEngineName: pulumi.String("MySQL"),
DestinationRegion: pulumi.String(defaultGetRegions.Regions[0].Id),
})
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.resourcemanager.ResourcemanagerFunctions;
import com.pulumi.alicloud.resourcemanager.inputs.GetResourceGroupsArgs;
import com.pulumi.alicloud.AlicloudFunctions;
import com.pulumi.alicloud.inputs.GetRegionsArgs;
import com.pulumi.alicloud.dts.Instance;
import com.pulumi.alicloud.dts.InstanceArgs;
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 = ResourcemanagerFunctions.getResourceGroups(GetResourceGroupsArgs.builder()
.status("OK")
.build());
final var defaultGetRegions = AlicloudFunctions.getRegions(GetRegionsArgs.builder()
.current(true)
.build());
var defaultInstance = new Instance("defaultInstance", InstanceArgs.builder()
.type("sync")
.resourceGroupId(default_.ids()[0])
.paymentType("Subscription")
.instanceClass("large")
.sourceEndpointEngineName("MySQL")
.sourceRegion(defaultGetRegions.regions()[0].id())
.destinationEndpointEngineName("MySQL")
.destinationRegion(defaultGetRegions.regions()[0].id())
.build());
}
}
resources:
defaultInstance:
type: alicloud:dts:Instance
name: default
properties:
type: sync
resourceGroupId: ${default.ids[0]}
paymentType: Subscription
instanceClass: large
sourceEndpointEngineName: MySQL
sourceRegion: ${defaultGetRegions.regions[0].id}
destinationEndpointEngineName: MySQL
destinationRegion: ${defaultGetRegions.regions[0].id}
variables:
default:
fn::invoke:
function: alicloud:resourcemanager:getResourceGroups
arguments:
status: OK
defaultGetRegions:
fn::invoke:
function: alicloud:getRegions
arguments:
current: true
Import
Dts Instance can be imported using the id, e.g.
$ pulumi import alicloud:dts/instance:Instance example <id>
Constructors
Properties
Specifications of ETL. The unit is compute unit (CU),1CU = 1vCPU +4GB of memory. The value range is an integer greater than or equal to 2. NOTE: Enter this parameter and enable ETL to clean and convert data.
The number of private custom RDS instances in the PolarDB-X. The default value is 1. NOTE: This parameter is required only when source_endpoint_engine_name is DRDS.
The target database engine type.
The target instance region. For more information, see List of supported regions. NOTE: This parameter or job_id must be passed in.
The type of the migration or synchronization instance.
The ID of the task obtained by calling the ConfigureDtsJob operation (DtsJobId).> After you pass in this parameter, you do not need to pass the source_region, destination_region, type, source_endpoint_engine_name, or destination_endpoint_engine_name parameters. Even if the input is passed in, the configuration in job_id shall prevail.
The payment type of the resource. Valid values: Subscription
, PayAsYouGo
.
Resource Group ID.
Source instance database engine type.
The source instance region. For more information, see List of supported regions. NOTE: This parameter or job_id must be passed in.
Synchronization topology, value:
The synchronization direction. Default value: Forward
. Valid values: