Dedicated Host Account
Provides a ApsaraDB for MyBase Dedicated Host Account resource. For information about ApsaraDB for MyBase Dedicated Host Account and how to use it, see What is Dedicated Host Account.
NOTE: Available since v1.148.0. NOTE: Each Dedicated host can have only one account. Before you create an account for a host, make sure that the existing account is deleted.
Example Usage
Basic Usage
package generated_program;
import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.alicloud.cddc.CddcFunctions;
import com.pulumi.alicloud.cddc.inputs.GetZonesArgs;
import com.pulumi.alicloud.vpc.Network;
import com.pulumi.alicloud.vpc.NetworkArgs;
import com.pulumi.alicloud.vpc.Switch;
import com.pulumi.alicloud.vpc.SwitchArgs;
import com.pulumi.alicloud.cddc.DedicatedHostGroup;
import com.pulumi.alicloud.cddc.DedicatedHostGroupArgs;
import com.pulumi.alicloud.cddc.inputs.GetHostEcsLevelInfosArgs;
import com.pulumi.alicloud.cddc.DedicatedHost;
import com.pulumi.alicloud.cddc.DedicatedHostArgs;
import com.pulumi.alicloud.cddc.DedicatedHostAccount;
import com.pulumi.alicloud.cddc.DedicatedHostAccountArgs;
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("tf_example");
final var defaultZones = CddcFunctions.getZones();
var defaultNetwork = new Network("defaultNetwork", NetworkArgs.builder()
.vpcName(name)
.cidrBlock("10.4.0.0/16")
.build());
var defaultSwitch = new Switch("defaultSwitch", SwitchArgs.builder()
.vswitchName(name)
.cidrBlock("10.4.0.0/24")
.vpcId(defaultNetwork.id())
.zoneId(defaultZones.applyValue(getZonesResult -> getZonesResult.ids()[0]))
.build());
var defaultDedicatedHostGroup = new DedicatedHostGroup("defaultDedicatedHostGroup", DedicatedHostGroupArgs.builder()
.engine("MySQL")
.vpcId(defaultNetwork.id())
.cpuAllocationRatio(101)
.memAllocationRatio(50)
.diskAllocationRatio(200)
.allocationPolicy("Evenly")
.hostReplacePolicy("Manual")
.dedicatedHostGroupDesc(name)
.openPermission(true)
.build());
final var defaultHostEcsLevelInfos = CddcFunctions.getHostEcsLevelInfos(GetHostEcsLevelInfosArgs.builder()
.dbType("mysql")
.zoneId(defaultZones.applyValue(getZonesResult -> getZonesResult.ids()[0]))
.storageType("cloud_essd")
.build());
var defaultDedicatedHost = new DedicatedHost("defaultDedicatedHost", DedicatedHostArgs.builder()
.hostName(name)
.dedicatedHostGroupId(defaultDedicatedHostGroup.id())
.hostClass(defaultHostEcsLevelInfos.applyValue(getHostEcsLevelInfosResult -> getHostEcsLevelInfosResult.infos()[0].resClassCode()))
.zoneId(defaultZones.applyValue(getZonesResult -> getZonesResult.ids()[0]))
.vswitchId(defaultSwitch.id())
.paymentType("Subscription")
.tags(Map.ofEntries(
Map.entry("Created", "TF"),
Map.entry("For", "CDDC_DEDICATED")
))
.build());
var defaultDedicatedHostAccount = new DedicatedHostAccount("defaultDedicatedHostAccount", DedicatedHostAccountArgs.builder()
.accountName(name)
.accountPassword("Password1234")
.dedicatedHostId(defaultDedicatedHost.dedicatedHostId())
.accountType("Normal")
.build());
}
}
Content copied to clipboard
Import
ApsaraDB for MyBase Dedicated Host Account can be imported using the id, e.g.
$ pulumi import alicloud:cddc/dedicatedHostAccount:DedicatedHostAccount example <dedicated_host_id>:<account_name>
Content copied to clipboard