Namespace Pulumi.AliCloud.Rds
Classes
Account
Provides an RDS account resource and used to manage databases.
Example Usage
using Pulumi;
using AliCloud = Pulumi.AliCloud;
class MyStack : Stack
{
public MyStack()
{
var config = new Config();
var creation = config.Get("creation") ?? "Rds";
var name = config.Get("name") ?? "dbaccountmysql";
var defaultZones = Output.Create(AliCloud.GetZones.InvokeAsync(new AliCloud.GetZonesArgs
{
AvailableResourceCreation = creation,
}));
var defaultNetwork = new AliCloud.Vpc.Network("defaultNetwork", new AliCloud.Vpc.NetworkArgs
{
CidrBlock = "172.16.0.0/16",
});
var defaultSwitch = new AliCloud.Vpc.Switch("defaultSwitch", new AliCloud.Vpc.SwitchArgs
{
AvailabilityZone = defaultZones.Apply(defaultZones => defaultZones.Zones[0].Id),
CidrBlock = "172.16.0.0/24",
VpcId = defaultNetwork.Id,
});
var instance = new AliCloud.Rds.Instance("instance", new AliCloud.Rds.InstanceArgs
{
Engine = "MySQL",
EngineVersion = "5.6",
InstanceName = name,
InstanceStorage = "10",
InstanceType = "rds.mysql.s1.small",
VswitchId = defaultSwitch.Id,
});
var account = new AliCloud.Rds.Account("account", new AliCloud.Rds.AccountArgs
{
InstanceId = instance.Id,
Password = "Test12345",
});
}
}
AccountArgs
AccountPrivilege
AccountPrivilegeArgs
AccountPrivilegeState
AccountState
BackupPolicy
Provides an RDS instance backup policy resource and used to configure instance backup policy.
NOTE: Each DB instance has a backup policy and it will be set default values when destroying the resource.
Example Usage
using Pulumi;
using AliCloud = Pulumi.AliCloud;
class MyStack : Stack
{
public MyStack()
{
var config = new Config();
var creation = config.Get("creation") ?? "Rds";
var name = config.Get("name") ?? "dbbackuppolicybasic";
var defaultZones = Output.Create(AliCloud.GetZones.InvokeAsync(new AliCloud.GetZonesArgs
{
AvailableResourceCreation = creation,
}));
var defaultNetwork = new AliCloud.Vpc.Network("defaultNetwork", new AliCloud.Vpc.NetworkArgs
{
CidrBlock = "172.16.0.0/16",
});
var defaultSwitch = new AliCloud.Vpc.Switch("defaultSwitch", new AliCloud.Vpc.SwitchArgs
{
AvailabilityZone = defaultZones.Apply(defaultZones => defaultZones.Zones[0].Id),
CidrBlock = "172.16.0.0/24",
VpcId = defaultNetwork.Id,
});
var instance = new AliCloud.Rds.Instance("instance", new AliCloud.Rds.InstanceArgs
{
Engine = "MySQL",
EngineVersion = "5.6",
InstanceName = name,
InstanceStorage = "10",
InstanceType = "rds.mysql.s1.small",
VswitchId = defaultSwitch.Id,
});
var policy = new AliCloud.Rds.BackupPolicy("policy", new AliCloud.Rds.BackupPolicyArgs
{
InstanceId = instance.Id,
});
}
}
BackupPolicyArgs
BackupPolicyState
Connection
Provides an RDS connection resource to allocate an Internet connection string for RDS instance.
NOTE: Each RDS instance will allocate a intranet connnection string automatically and its prifix is RDS instance ID. To avoid unnecessary conflict, please specified a internet connection prefix before applying the resource.
Example Usage
using Pulumi;
using AliCloud = Pulumi.AliCloud;
class MyStack : Stack
{
public MyStack()
{
var config = new Config();
var creation = config.Get("creation") ?? "Rds";
var name = config.Get("name") ?? "dbconnectionbasic";
var defaultZones = Output.Create(AliCloud.GetZones.InvokeAsync(new AliCloud.GetZonesArgs
{
AvailableResourceCreation = creation,
}));
var defaultNetwork = new AliCloud.Vpc.Network("defaultNetwork", new AliCloud.Vpc.NetworkArgs
{
CidrBlock = "172.16.0.0/16",
});
var defaultSwitch = new AliCloud.Vpc.Switch("defaultSwitch", new AliCloud.Vpc.SwitchArgs
{
AvailabilityZone = defaultZones.Apply(defaultZones => defaultZones.Zones[0].Id),
CidrBlock = "172.16.0.0/24",
VpcId = defaultNetwork.Id,
});
var instance = new AliCloud.Rds.Instance("instance", new AliCloud.Rds.InstanceArgs
{
Engine = "MySQL",
EngineVersion = "5.6",
InstanceName = name,
InstanceStorage = "10",
InstanceType = "rds.mysql.t1.small",
VswitchId = defaultSwitch.Id,
});
var foo = new AliCloud.Rds.Connection("foo", new AliCloud.Rds.ConnectionArgs
{
ConnectionPrefix = "testabc",
InstanceId = instance.Id,
});
}
}
ConnectionArgs
ConnectionState
Database
Provides an RDS database resource. A DB database deployed in a DB instance. A DB instance can own multiple databases.
NOTE: This resource does not support creating 'PPAS' database. You have to login RDS instance to create manually.
Example Usage
using Pulumi;
using AliCloud = Pulumi.AliCloud;
class MyStack : Stack
{
public MyStack()
{
var config = new Config();
var creation = config.Get("creation") ?? "Rds";
var name = config.Get("name") ?? "dbdatabasebasic";
var defaultZones = Output.Create(AliCloud.GetZones.InvokeAsync(new AliCloud.GetZonesArgs
{
AvailableResourceCreation = creation,
}));
var defaultNetwork = new AliCloud.Vpc.Network("defaultNetwork", new AliCloud.Vpc.NetworkArgs
{
CidrBlock = "172.16.0.0/16",
});
var defaultSwitch = new AliCloud.Vpc.Switch("defaultSwitch", new AliCloud.Vpc.SwitchArgs
{
AvailabilityZone = defaultZones.Apply(defaultZones => defaultZones.Zones[0].Id),
CidrBlock = "172.16.0.0/24",
VpcId = defaultNetwork.Id,
});
var instance = new AliCloud.Rds.Instance("instance", new AliCloud.Rds.InstanceArgs
{
Engine = "MySQL",
EngineVersion = "5.6",
InstanceName = name,
InstanceStorage = "10",
InstanceType = "rds.mysql.s1.small",
VswitchId = defaultSwitch.Id,
});
var defaultDatabase = new AliCloud.Rds.Database("defaultDatabase", new AliCloud.Rds.DatabaseArgs
{
InstanceId = instance.Id,
});
}
}
DatabaseArgs
DatabaseState
GetInstanceClasses
GetInstanceClassesArgs
GetInstanceClassesResult
GetInstanceEngines
GetInstanceEnginesArgs
GetInstanceEnginesResult
GetInstances
GetInstancesArgs
GetInstancesResult
GetZones
GetZonesArgs
GetZonesResult
Instance
Provides an RDS instance resource. A DB instance is an isolated database environment in the cloud. A DB instance can contain multiple user-created databases.
Example Usage
Create a RDS MySQL instance
using Pulumi;
using AliCloud = Pulumi.AliCloud;
class MyStack : Stack
{
public MyStack()
{
var config = new Config();
var name = config.Get("name") ?? "dbInstanceconfig";
var creation = config.Get("creation") ?? "Rds";
var defaultZones = Output.Create(AliCloud.GetZones.InvokeAsync(new AliCloud.GetZonesArgs
{
AvailableResourceCreation = creation,
}));
var defaultNetwork = new AliCloud.Vpc.Network("defaultNetwork", new AliCloud.Vpc.NetworkArgs
{
CidrBlock = "172.16.0.0/16",
});
var defaultSwitch = new AliCloud.Vpc.Switch("defaultSwitch", new AliCloud.Vpc.SwitchArgs
{
AvailabilityZone = defaultZones.Apply(defaultZones => defaultZones.Zones[0].Id),
CidrBlock = "172.16.0.0/24",
VpcId = defaultNetwork.Id,
});
var defaultInstance = new AliCloud.Rds.Instance("defaultInstance", new AliCloud.Rds.InstanceArgs
{
Engine = "MySQL",
EngineVersion = "5.6",
InstanceChargeType = "Postpaid",
InstanceName = name,
InstanceStorage = "30",
InstanceType = "rds.mysql.s2.large",
MonitoringPeriod = "60",
VswitchId = defaultSwitch.Id,
});
}
}
InstanceArgs
InstanceState
ReadOnlyInstance
Provides an RDS readonly instance resource.
Example Usage
using Pulumi;
using AliCloud = Pulumi.AliCloud;
class MyStack : Stack
{
public MyStack()
{
var config = new Config();
var creation = config.Get("creation") ?? "Rds";
var name = config.Get("name") ?? "dbInstancevpc";
var defaultZones = Output.Create(AliCloud.GetZones.InvokeAsync(new AliCloud.GetZonesArgs
{
AvailableResourceCreation = creation,
}));
var defaultNetwork = new AliCloud.Vpc.Network("defaultNetwork", new AliCloud.Vpc.NetworkArgs
{
CidrBlock = "172.16.0.0/16",
});
var defaultSwitch = new AliCloud.Vpc.Switch("defaultSwitch", new AliCloud.Vpc.SwitchArgs
{
AvailabilityZone = defaultZones.Apply(defaultZones => defaultZones.Zones[0].Id),
CidrBlock = "172.16.0.0/24",
VpcId = defaultNetwork.Id,
});
var defaultInstance = new AliCloud.Rds.Instance("defaultInstance", new AliCloud.Rds.InstanceArgs
{
Engine = "MySQL",
EngineVersion = "5.6",
InstanceChargeType = "Postpaid",
InstanceName = name,
InstanceStorage = "20",
InstanceType = "rds.mysql.t1.small",
SecurityIps =
{
"10.168.1.12",
"100.69.7.112",
},
VswitchId = defaultSwitch.Id,
});
var defaultReadOnlyInstance = new AliCloud.Rds.ReadOnlyInstance("defaultReadOnlyInstance", new AliCloud.Rds.ReadOnlyInstanceArgs
{
EngineVersion = defaultInstance.EngineVersion,
InstanceName = $"{name}ro",
InstanceStorage = "30",
InstanceType = defaultInstance.InstanceType,
MasterDbInstanceId = defaultInstance.Id,
VswitchId = defaultSwitch.Id,
ZoneId = defaultInstance.ZoneId,
});
}
}
ReadOnlyInstanceArgs
ReadOnlyInstanceState
ReadWriteSplittingConnection
Provides an RDS read write splitting connection resource to allocate an Intranet connection string for RDS instance.
Example Usage
using Pulumi;
using AliCloud = Pulumi.AliCloud;
class MyStack : Stack
{
public MyStack()
{
var config = new Config();
var creation = config.Get("creation") ?? "Rds";
var name = config.Get("name") ?? "dbInstancevpc";
var defaultZones = Output.Create(AliCloud.GetZones.InvokeAsync(new AliCloud.GetZonesArgs
{
AvailableResourceCreation = creation,
}));
var defaultNetwork = new AliCloud.Vpc.Network("defaultNetwork", new AliCloud.Vpc.NetworkArgs
{
CidrBlock = "172.16.0.0/16",
});
var defaultSwitch = new AliCloud.Vpc.Switch("defaultSwitch", new AliCloud.Vpc.SwitchArgs
{
AvailabilityZone = defaultZones.Apply(defaultZones => defaultZones.Zones[0].Id),
CidrBlock = "172.16.0.0/24",
VpcId = defaultNetwork.Id,
});
var defaultInstance = new AliCloud.Rds.Instance("defaultInstance", new AliCloud.Rds.InstanceArgs
{
Engine = "MySQL",
EngineVersion = "5.6",
InstanceChargeType = "Postpaid",
InstanceName = name,
InstanceStorage = "20",
InstanceType = "rds.mysql.t1.small",
SecurityIps =
{
"10.168.1.12",
"100.69.7.112",
},
VswitchId = defaultSwitch.Id,
});
var defaultReadOnlyInstance = new AliCloud.Rds.ReadOnlyInstance("defaultReadOnlyInstance", new AliCloud.Rds.ReadOnlyInstanceArgs
{
EngineVersion = defaultInstance.EngineVersion,
InstanceName = $"{name}ro",
InstanceStorage = "30",
InstanceType = defaultInstance.InstanceType,
MasterDbInstanceId = defaultInstance.Id,
VswitchId = defaultSwitch.Id,
ZoneId = defaultInstance.ZoneId,
});
var defaultReadWriteSplittingConnection = new AliCloud.Rds.ReadWriteSplittingConnection("defaultReadWriteSplittingConnection", new AliCloud.Rds.ReadWriteSplittingConnectionArgs
{
ConnectionPrefix = "t-con-123",
DistributionType = "Standard",
InstanceId = defaultInstance.Id,
});
}
}