CustomDiskArgs

data class CustomDiskArgs(val autoPay: Output<Boolean>? = null, val autoRenew: Output<Boolean>? = null, val description: Output<String>? = null, val diskCategory: Output<String>? = null, val diskName: Output<String>? = null, val dryRun: Output<Boolean>? = null, val instanceChargeType: Output<String>? = null, val performanceLevel: Output<String>? = null, val period: Output<Int>? = null, val periodUnit: Output<String>? = null, val size: Output<Int>? = null, val snapshotId: Output<String>? = null, val type: Output<String>? = null, val zoneId: Output<String>? = null) : ConvertibleToJava<CustomDiskArgs>

Provides a RDS Custom Disk resource. RDS User dedicated host disk. For information about RDS Custom Disk and how to use it, see What is Custom Disk.

NOTE: Available since v1.247.0.

Example Usage

Basic Usage

import * as pulumi from "@pulumi/pulumi";
import * as alicloud from "@pulumi/alicloud";
const config = new pulumi.Config();
const name = config.get("name") || "terraform-example";
const regionId = config.get("regionId") || "cn-beijing";
const _default = new alicloud.rds.CustomDisk("default", {
description: "zcc测试用例",
zoneId: "cn-beijing-i",
size: 40,
performanceLevel: "PL1",
instanceChargeType: "Postpaid",
diskCategory: "cloud_essd",
diskName: "custom_disk_001",
autoRenew: false,
period: 1,
autoPay: true,
periodUnit: "1",
});
import pulumi
import pulumi_alicloud as alicloud
config = pulumi.Config()
name = config.get("name")
if name is None:
name = "terraform-example"
region_id = config.get("regionId")
if region_id is None:
region_id = "cn-beijing"
default = alicloud.rds.CustomDisk("default",
description="zcc测试用例",
zone_id="cn-beijing-i",
size=40,
performance_level="PL1",
instance_charge_type="Postpaid",
disk_category="cloud_essd",
disk_name="custom_disk_001",
auto_renew=False,
period=1,
auto_pay=True,
period_unit="1")
using System.Collections.Generic;
using System.Linq;
using Pulumi;
using AliCloud = Pulumi.AliCloud;
return await Deployment.RunAsync(() =>
{
var config = new Config();
var name = config.Get("name") ?? "terraform-example";
var regionId = config.Get("regionId") ?? "cn-beijing";
var @default = new AliCloud.Rds.CustomDisk("default", new()
{
Description = "zcc测试用例",
ZoneId = "cn-beijing-i",
Size = 40,
PerformanceLevel = "PL1",
InstanceChargeType = "Postpaid",
DiskCategory = "cloud_essd",
DiskName = "custom_disk_001",
AutoRenew = false,
Period = 1,
AutoPay = true,
PeriodUnit = "1",
});
});
package main
import (
"github.com/pulumi/pulumi-alicloud/sdk/v3/go/alicloud/rds"
"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, "")
name := "terraform-example"
if param := cfg.Get("name"); param != "" {
name = param
}
regionId := "cn-beijing"
if param := cfg.Get("regionId"); param != "" {
regionId = param
}
_, err := rds.NewCustomDisk(ctx, "default", &rds.CustomDiskArgs{
Description: pulumi.String("zcc测试用例"),
ZoneId: pulumi.String("cn-beijing-i"),
Size: pulumi.Int(40),
PerformanceLevel: pulumi.String("PL1"),
InstanceChargeType: pulumi.String("Postpaid"),
DiskCategory: pulumi.String("cloud_essd"),
DiskName: pulumi.String("custom_disk_001"),
AutoRenew: pulumi.Bool(false),
Period: pulumi.Int(1),
AutoPay: pulumi.Bool(true),
PeriodUnit: pulumi.String("1"),
})
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.rds.CustomDisk;
import com.pulumi.alicloud.rds.CustomDiskArgs;
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 config = ctx.config();
final var name = config.get("name").orElse("terraform-example");
final var regionId = config.get("regionId").orElse("cn-beijing");
var default_ = new CustomDisk("default", CustomDiskArgs.builder()
.description("zcc测试用例")
.zoneId("cn-beijing-i")
.size("40")
.performanceLevel("PL1")
.instanceChargeType("Postpaid")
.diskCategory("cloud_essd")
.diskName("custom_disk_001")
.autoRenew(false)
.period("1")
.autoPay(true)
.periodUnit("1")
.build());
}
}
configuration:
name:
type: string
default: terraform-example
regionId:
type: string
default: cn-beijing
resources:
default:
type: alicloud:rds:CustomDisk
properties:
description: zcc测试用例
zoneId: cn-beijing-i
size: '40'
performanceLevel: PL1
instanceChargeType: Postpaid
diskCategory: cloud_essd
diskName: custom_disk_001
autoRenew: false
period: '1'
autoPay: true
periodUnit: '1'

Import

RDS Custom Disk can be imported using the id, e.g.

$ pulumi import alicloud:rds/customDisk:CustomDisk example <id>

Constructors

Link copied to clipboard
constructor(autoPay: Output<Boolean>? = null, autoRenew: Output<Boolean>? = null, description: Output<String>? = null, diskCategory: Output<String>? = null, diskName: Output<String>? = null, dryRun: Output<Boolean>? = null, instanceChargeType: Output<String>? = null, performanceLevel: Output<String>? = null, period: Output<Int>? = null, periodUnit: Output<String>? = null, size: Output<Int>? = null, snapshotId: Output<String>? = null, type: Output<String>? = null, zoneId: Output<String>? = null)

Properties

Link copied to clipboard
val autoPay: Output<Boolean>? = null

Whether to pay automatically. Value range:

Link copied to clipboard
val autoRenew: Output<Boolean>? = null

Whether to automatically renew. This parameter is passed in only when you create a data disk. Valid values:

Link copied to clipboard
val description: Output<String>? = null

The disk description. It must be 2 to 256 characters in length and cannot start with 'http:// 'or 'https. Default value: empty.

Link copied to clipboard
val diskCategory: Output<String>? = null

The type of the data disk. Value range:

Link copied to clipboard
val diskName: Output<String>? = null

The disk name. It can be 2 to 128 characters in length. It supports letters in Unicode (including English, Chinese, and numbers). Can contain a colon (:), an underscore (_), a period (.), or a dash (-). Default value: empty.

Link copied to clipboard
val dryRun: Output<Boolean>? = null

Whether to pre-check the instance creation operation. Valid values:

Link copied to clipboard
val instanceChargeType: Output<String>? = null

The Payment type. Only Postpaid: Pay-As-You-Go is supported.

Link copied to clipboard
val performanceLevel: Output<String>? = null

When creating an ESSD cloud disk, set the performance level of the disk. Value range:

Link copied to clipboard
val period: Output<Int>? = null

Reserved parameters, no need to fill in.

Link copied to clipboard
val periodUnit: Output<String>? = null

Reserved parameters, no need to fill in.

Link copied to clipboard
val size: Output<Int>? = null

Capacity size. Unit: GiB. You must pass in a parameter value for this parameter. Value range:

Link copied to clipboard
val snapshotId: Output<String>? = null

The snapshot used to create the cloud disk. Snapshots made on or before July 15, 2013 cannot be used to create cloud disks. The 'SnapshotId' parameter and the 'Size' parameter have the following limitations:

Link copied to clipboard
val type: Output<String>? = null

The method of expanding the disk. Value range: offline (default): offline expansion. After the expansion, the instance must be restarted to take effect. online: online expansion, which can be completed without restarting the instance.

Link copied to clipboard
val zoneId: Output<String>? = null

The zone ID.

Functions

Link copied to clipboard
open override fun toJava(): CustomDiskArgs