ALIYUN::REDIS::PrepayInstance is used to create a subscription ApsaraDB for Redis instance.
Syntax
{
"Type": "ALIYUN::REDIS::PrepayInstance",
"Properties": {
"VpcId": String,
"EvictionPolicy": String,
"Period": Integer,
"ZoneId": String,
"InstanceClass": String,
"VpcPasswordFree": Boolean,
"VSwitchId": String,
"SecurityGroupId": String,
"EngineVersion": String,
"Password": String,
"SSLEnabled": String,
"InstanceName": String,
"BackupPolicy": Map,
"Tags": List,
"InstanceMaintainTime": Map,
"DeletionForce": Boolean,
"AutoPay": Boolean,
"Connections": Map,
"AutoRenewDuration": Integer,
"ProductType": String,
"SecondaryZoneId": String,
"ResourceGroupId": String,
"PeriodUnit": String
}
}
Properties
Property | Type | Required | Editable | Description | Constraint |
---|---|---|---|---|---|
EngineVersion | String | No | No | The database engine version of the instance. | Valid values:
|
VpcId | String | No | No | The ID of the virtual private cloud (VPC). | None. |
EvictionPolicy | String | No | No | The policy based on which the system evicts data. | Valid values:
|
Period | Integer | No | No | The renewal period of the subscription instance. | Valid values: 1, 2, 3, 4, 5, 6, 7, 8, 9, 12, 24, and 36.
Unit: months. |
ZoneId | String | No | No | The ID of the zone. |
This property is required if you create the instance in a VPC. If you want to create the instance across zones, you can call the DescribeZones operation to query the IDs of available zones. |
InstanceClass | String | No | Yes | The specifications of the instance. | For more information, see Overview. |
VSwitchId | String | No | No | The ID of the vSwitch. | None. |
SecurityGroupId | String | No | Yes | The ID of the security group. | You can specify up to 10 security group IDs. Separate multiple security group IDs with commas (,). |
VpcPasswordFree | Boolean | No | No | Specifies whether to enable the password-free access feature for the instance in the VPC. | Default value: false. Valid values:
|
Password | String | No | No | The password that is used to access the instance. | The password must be 8 to 32 characters in length. The password must contain at least
three of the following character types: uppercase letters, lowercase letters, digits,
and special characters. Special characters include ! @ # $ % ^ & * ( ) _ + - = .
|
SSLEnabled | String | No | Yes | The state of SSL encryption. | Valid values:
|
InstanceName | String | No | Yes | The name of the instance. | The name must be 2 to 128 characters in length, and can contain letters, digits, underscores (_), hyphens (-), and periods (.). The name must start with a letter. |
BackupPolicy | Map | No | Yes | The backup policy. | For more information, see BackupPolicy properties. |
Tags | List | No | No | The tags of the instance. | You can add up to 20 tags to each instance.
For more information, see Tags properties. |
AutoPay | Boolean | No | No | Specifies whether to enable automatic payment. | Default value: false. Valid values:
|
InstanceMaintainTime | Map | No | Yes | The maintenance window of the instance. | For more information, see InstanceMaintainTime properties. |
DeletionForce | Boolean | No | Yes | Specifies whether to delete the instance when the instance is moved to the recycle bin. | Default value: false. Valid values:
|
Connections | Map | No | Yes | The endpoints of the instance. | For more information, see Connections properties. |
AutoRenewDuration | Integer | No | Yes | The auto-renewal period. | Valid values: 1 to 12.
Unit: months. When an instance is about to expire, the system automatically renews the instance based on the value of this property. |
ProductType | String | No | No | The edition or series of the instance. | Valid values:
|
SecondaryZoneId | String | No | No | The ID of the secondary zone. | You can call the DescribeZones operation to query the zone ID.
Note If you specify this property, the master node and replica node of the instance can
be deployed in different zones, and disaster recovery is implemented across zones.
The instance can withstand failures in data centers.
|
ResourceGroupId | String | No | Yes | The ID of the resource group. | None. |
PeriodUnit | String | No | No | The unit of the subscription duration. | Valid values:
|
BackupPolicy syntax
"BackupPolicy": {
"PreferredBackupPeriod": "String",
"PreferredBackupTime": "String",
"EnableBackupLog": "Integer"
}
BackupPolicy properties
Property | Type | Required | Editable | Description | Constraint |
---|---|---|---|---|---|
PreferredBackupPeriod | String | Yes | Yes | The day of a week on which the system backs up data. | Valid values:
|
PreferredBackupTime | String | Yes | Yes | The time at which the system backs up data. | Specify the time in the ISO 8601 standard in the HH:mmZ-HH:mmZ format.
|
EnableBackupLog | Integer | No | Yes | Specifies whether to enable incremental backup. | Default value: 0. Valid values:
|
InstanceMaintainTime syntax
"InstanceMaintainTime": {
"MaintainStartTime": "String",
"MaintainEndTime": "String"
}
InstanceMaintainTime properties
Property | Type | Required | Editable | Description | Constraint |
---|---|---|---|---|---|
MaintainStartTime | String | No | No | The start time of the maintenance window. | Specify the time in ISO 8601 standard in the HH:mmZ format. The time must be in Coordinated Universal Time (UTC). For example, if you
want the maintenance window to start at 22:00 (UTC+8), you must set this property to 14:00Z .
|
MaintainEndTime | String | No | No | The end time of the maintenance window. | Specify the time in ISO 8601 standard in the HH:mmZ format. The time must be in UTC. For example, if you want the maintenance window
to end at 23:00 (UTC+8), you must set this property to 15:00Z .
Note The end time must be one hour later than the start time. For example, if you set the
MaintainStartTime property to
17:00Z , you must set the MaintainEndTime property to 18:00Z .
|
Tags syntax
"Tags": [
{
"Key": String,
"Value": String
}
]
Tags properties
Property | Type | Required | Editable | Description | Constraint |
---|---|---|---|---|---|
Key | String | Yes | No | The key of the tag. | A tag key must be unique within an Alibaba Cloud account in a region. |
Value | String | No | No | The value of the tag. | None. |
Connections syntax
"Connections": {
"VpcPrivateConnection": "Map",
"ClassicInnerConnection": "Map",
"DirectConnection": "Map",
"PublicConnection": "Map"
}
Connections properties
Property | Type | Required | Editable | Description | Constraint |
---|---|---|---|---|---|
VpcPrivateConnection | Map | No | Yes | The VPC endpoint. | For more information, see VpcPrivateConnection properties. |
ClassicInnerConnection | Map | No | Yes | The classic network endpoint. | For more information, see ClassicInnerConnection properties. |
DirectConnection | Map | No | Yes | The private endpoint for the direct connection mode. You can apply for a private endpoint for the direct connection mode based on your business requirements. | For more information, see DirectConnection properties. |
PublicConnection | Map | No | Yes | The public endpoint. | For more information, see PublicConnection properties. |
VpcPrivateConnection syntax
"VpcPrivateConnection": {
"ConnectionPort": Integer,
"ConnectionString": String
}
VpcPrivateConnection properties
Property | Type | Required | Editable | Description | Constraint |
---|---|---|---|---|---|
ConnectionPort | Integer | Yes | Yes | The port number used by the ApsaraDB for Redis instance to provide services. | Valid values: 1024 to 65535. |
ConnectionString | String | Yes | Yes | The prefix of the VPC endpoint. | The prefix must be 8 to 64 characters in length, and can contain lowercase letters and digits. The prefix must start with a lowercase letter. |
PublicConnection syntax
"PublicConnection": {
"ConnectionPort": Integer,
"ConnectionString": String
}
PublicConnection properties
Property | Type | Required | Editable | Description | Constraint |
---|---|---|---|---|---|
ConnectionPort | Integer | Yes | Yes | The port number used by the ApsaraDB for Redis instance to provide services. | Valid values: 1024 to 65535. |
ConnectionString | String | Yes | Yes | The prefix of the public endpoint. | The prefix must be 8 to 64 characters in length, and can contain lowercase letters and digits. The prefix must start with a lowercase letter. |
DirectConnection syntax
"DirectConnection": {
"ConnectionPort": Integer,
"ConnectionString": String
}
DirectConnection properties
Property | Type | Required | Editable | Description | Constraint |
---|---|---|---|---|---|
ConnectionPort | Integer | Yes | Yes | The port number used by the ApsaraDB for Redis instance to provide services. | Valid values: 1024 to 65535. |
ConnectionString | String | Yes | Yes | The prefix of the private endpoint for the direct connection mode. | The prefix must be 8 to 64 characters in length, and can contain lowercase letters and digits. The prefix must start with a lowercase letter. |
ClassicInnerConnection syntax
"ClassicInnerConnection": {
"ConnectionPort": Integer,
"ConnectionString": String
}
ClassicInnerConnection properties
Property | Type | Required | Editable | Description | Constraint |
---|---|---|---|---|---|
ConnectionPort | Integer | Yes | Yes | The port number used by the ApsaraDB for Redis instance to provide services. | Valid values: 1024 to 65535. |
ConnectionString | String | Yes | Yes | The prefix of the classic network endpoint. | The prefix must be 8 to 64 characters in length, and can contain lowercase letters and digits. The prefix must start with a lowercase letter. |
Return values
Fn::GetAtt
- InstanceId: the ID of the instance.
- OrderId: the ID of the order.
- ConnectionDomain: the endpoint that is used to connect to the instance.
- Port: the port number that is used to access the instance.
- InstanceName: the name of the instance.
- InstanceClass: the specifications of the instance.
- VpcId: the ID of the VPC.
- Capacity: the storage capacity of the instance.
- InstanceType: the database engine type of the instance.
- ChargeType: the billing method of the instance.
- PackageType: the type of the plan.
- Connections: the maximum number of connections that are supported by the instance.
- ArchitectureType: the type of the architecture.
- NodeType: the type of the node.
- HasRenewChangeOrder: indicates whether the instance has pending renewal or resource scaling orders within the Alibaba Cloud account.
- ResourceGroupId: the ID of the resource group.
- QPS: the queries per second (QPS). The value is the expected maximum QPS.
- ZoneId: the ID of the zone in which the instance is deployed.
- Bandwidth: the bandwidth of the instance. Unit: Mbit/s.
- EngineVersion: the database engine version of the instance.
- NetworkType: the network type of the instance.
- VSwitchId: the ID of the vSwitch.
- PrivateIp: the private IP address of the instance.
- PublicConnectionString: the prefix of the public endpoint that is used to access the instance.
- VpcPrivateConnectionPort: the port number that is used to access the instance by using the VPC endpoint.
- ClassicInnerConnectionString: the prefix of the classic network endpoint that is used to access the instance.
- VpcPrivateConnectionString: the prefix of the VPC endpoint that is used to access the instance.
- PublicConnectionPort: the port number that is used to access the instance by using the public endpoint.
- DirectConnectionString: the prefix of the private endpoint that is used to access the instance in direct connection mode.
- DirectConnectionPort: the port number that is used to access the instance by using the private endpoint in direct connection mode.
- ClassicInnerConnectionPort: the port number that is used to access the instance by using the classic network endpoint.
Examples
-
JSON
format{ "ROSTemplateFormatVersion": "2015-09-01", "Description": "Test Create Redis PrepayInstance", "Parameters": { "InstanceClass": { "Type": "String", "Description": "Instance Class" }, "VpcName": { "Type": "String", "Default": "mytest" }, "VSwitchName": { "Type": "String", "Default": "mytest" }, "ZoneId": { "Type": "String", "AssociationProperty": "ALIYUN::ECS::Instance:ZoneId" }, "EngineVersion": { "Type": "String", "Description": "AllowedValues: 2.8, 4.0, 5.0", "Default": "5.0" } }, "Resources": { "Vpc": { "Type": "ALIYUN::ECS::VPC", "Properties": { "VpcName": { "Ref": "VpcName" }, "CidrBlock": "192.168.0.0/16" } }, "VSwitch": { "DependsOn": "Vpc", "Type": "ALIYUN::ECS::VSwitch", "Properties": { "VpcId": { "Ref": "Vpc" }, "VSwitchName": { "Ref": "VSwitchName" }, "ZoneId": { "Ref": "ZoneId" }, "CidrBlock": "192.168.10.0/24" } }, "RedisPrepayInstance": { "Type": "ALIYUN::REDIS::PrepayInstance", "Properties": { "InstanceClass": { "Ref": "InstanceClass" }, "EngineVersion": { "Ref": "EngineVersion" }, "VpcId": { "Ref": "Vpc" }, "VSwitchId": { "Ref": "VSwitch" } } } }, "Outputs": { "OrderId": { "Value": { "Fn::GetAtt": [ "RedisPrepayInstance", "OrderId" ] } } } }
For more examples, visit Instance.json and Instance.yml.