ALIYUN::ROCKETMQ5::Instance
Creates an ApsaraMQ for RocketMQ 5.0 instance.
Syntax
{
"Type": "ALIYUN::ROCKETMQ5::Instance",
"Properties": {
"AutoRenewPeriod": Integer,
"ProductInfo": Map,
"ResourceGroupId": String,
"AutoRenew": Boolean,
"Period": Integer,
"InternetInfo": Map,
"SubSeriesCode": String,
"Remark": String,
"InstanceName": String,
"SeriesCode": String,
"PaymentType": String,
"VpcInfo": Map,
"PeriodUnit": String
}
}
Properties
|
Property Name |
Type |
Required |
Update allowed |
Description |
Constraints |
|
InternetInfo |
Map |
Yes |
Yes |
The public network configuration. |
For more information, see InternetInfo properties. |
|
ProductInfo |
Map |
Yes |
Yes |
The instance specifications. |
For more information, see ProductInfo properties. |
|
SeriesCode |
String |
Yes |
No |
The primary series code of the instance. |
Valid values:
Note
After an instance is created, you can only upgrade its primary series (Standard Edition > Professional Edition > Platinum Edition). Downgrades are not supported. For more information about the differences between primary series, see Product selection. |
|
SubSeriesCode |
String |
Yes |
No |
The sub-series code of the instance. |
Valid values:
Note
After an instance is created, you cannot change its sub-series. For more information about the differences between sub-series, see Product selection. |
|
VpcInfo |
Map |
Yes |
No |
The VPC configuration. |
For more information, see VpcInfo properties. |
|
AutoRenew |
Boolean |
No |
No |
Whether to enable auto-renewal. |
This parameter is valid only if the billing method of the instance is `Subscription`. Valid values:
|
|
AutoRenewPeriod |
Integer |
No |
No |
The auto-renewal period. |
This parameter is valid only if auto-renewal is enabled. Unit: months. Valid values: For monthly renewal: 1, 2, 3, 6, and 12. |
|
InstanceName |
String |
No |
Yes |
The name of the instance to create. |
If you do not specify this parameter, the instance ID is used as the instance name. |
|
PaymentType |
String |
No |
No |
The billing method of the instance. |
Valid values:
For more information, see Billing overview. |
|
Period |
Integer |
No |
No |
The subscription duration. |
This parameter is valid only if the billing method of the instance is `Subscription`. Valid values:
|
|
PeriodUnit |
String |
No |
No |
The unit of the subscription duration. |
Valid values:
|
|
Remark |
String |
No |
Yes |
The remarks on the instance. |
None |
|
ResourceGroupId |
String |
No |
No |
The ID of the resource group. |
None |
ProductInfo syntax
"ProductInfo": {
"SendReceiveRatio": Number,
"MessageRetentionTime": Integer,
"AutoScaling": Boolean,
"MsgProcessSpec": String,
"ProvisionedCapacity": Integer,
"CapacityType": String
}
ProductInfo properties
|
Property Name |
Type |
Required |
Update allowed |
Description |
Constraints |
|
MsgProcessSpec |
String |
Yes |
No |
The computing specification for message sending and receiving. |
For more information about the TPS limit for message sending and receiving, see Instance specifications. |
|
AutoScaling |
Boolean |
No |
No |
Whether to enable burst scaling beyond the specifications. |
Valid values:
When enabled, the instance can exceed its base TPS limit within a specific range. You are charged for traffic that exceeds the base specifications. For more information, see Computing fees for message sending and receiving. Note
Only some instance types support burst scaling. For more information about the supported instance types, see Instance specifications. |
|
CapacityType |
String |
No |
No |
The capacity mode. |
Valid values:
|
|
MessageRetentionTime |
Integer |
No |
Yes |
The message retention period. |
Unit: hours. For the valid range, see Resource quotas. ApsaraMQ for RocketMQ 5.0 uses serverless elastic storage, billed by actual usage. Adjust the message retention period to control your storage capacity. For more information, see Storage fees. |
|
ProvisionedCapacity |
Integer |
No |
No |
The provisioned capacity. |
None |
|
SendReceiveRatio |
Number |
No |
Yes |
The ratio of message sending to receiving. |
The value must be between 0.2 and 0.5. |
InternetInfo syntax
"InternetInfo": {
"IpWhitelist": List,
"InternetSpec": String,
"FlowOutBandwidth": Integer,
"FlowOutType": String
}
InternetInfo properties
|
Property Name |
Type |
Required |
Update allowed |
Description |
Constraints |
|
InternetSpec |
String |
Yes |
Yes |
Whether to enable public network access. |
Valid values:
By default, instances are accessed over a VPC. If you enable public network access, you are charged for outbound public bandwidth. For more information about billing, see Public network access fees. |
|
FlowOutBandwidth |
Integer |
No |
Yes |
Public bandwidth specification |
Unit: Mbps. This parameter is required only when the public network billing type is pay-by-bandwidth. Valid values: 1 to 1000. |
|
FlowOutType |
String |
No |
No |
The public network billing type. |
Valid values:
|
|
IpWhitelist |
List |
No |
Yes |
The IP address whitelist for public network access. |
IP address whitelists apply only to public endpoints, not VPC endpoints.
|
VpcInfo syntax
"VpcInfo": {
"VpcId": String,
"VSwitchId": String,
"SecurityGroupId": String,
"VSwitchIds": List
}
VpcInfo properties
|
Property Name |
Type |
Required |
Update allowed |
Description |
Constraints |
|
VpcId |
String |
Yes |
No |
The ID of the VPC to which the instance belongs. |
Note
The VPC cannot be changed after the instance is created. To use a different VPC, release the instance and create a new one. |
|
SecurityGroupId |
String |
No |
No |
The ID of the security group to which the instance belongs. |
None |
|
VSwitchId |
String |
No |
No |
The ID of the vSwitch to which the instance is connected. |
Note
The vSwitch cannot be changed after the instance is created. To use a different vSwitch, release the instance and create a new one. |
|
VSwitchIds |
List |
No |
No |
A list of vSwitch IDs to which the instance is connected. |
None |
Return values
Fn::GetAtt
-
InstanceName: The instance name.
-
VpcEndpoint: The domain name of the VPC.
-
InstanceId: The instance ID.
-
InternetEndpoint: The public endpoint of the instance.
Examples
ROSTemplateFormatVersion: '2015-09-01'
Parameters:
VpcId:
Type: String
AssociationProperty: ALIYUN::ECS::VPC::VPCId
VSwitchId:
Type: String
AssociationProperty: ALIYUN::ECS::VSwitch::VSwitchId
AssociationPropertyMetadata:
VpcId: ${VpcId}
Resources:
Instance:
Type: ALIYUN::ROCKETMQ5::Instance
Properties:
ProductInfo:
MsgProcessSpec: rmq.s2.2xlarge
SendReceiveRatio: 0.2
MessageRetentionTime: 72
InternetInfo:
InternetSpec: disable
FlowOutBandwidth: uninvolved
SubSeriesCode: cluster_ha
SeriesCode: standard
PaymentType: PayAsYouGo
VpcInfo:
VpcId:
Ref: VpcId
VSwitchId:
Ref: VSwitchId
Outputs:
InstanceName:
Description: Instance name.
Value:
Fn::GetAtt:
- Instance
- InstanceName
VpcEndpoint:
Description: VPC endpoint.
Value:
Fn::GetAtt:
- Instance
- VpcEndpoint
InstanceId:
Description: Instance ID created.
Value:
Fn::GetAtt:
- Instance
- InstanceId
InternetEndpoint:
Description: Internet endpoint.
Value:
Fn::GetAtt:
- Instance
- InternetEndpoint{
"ROSTemplateFormatVersion": "2015-09-01",
"Parameters": {
"VpcId": {
"Type": "String",
"AssociationProperty": "ALIYUN::ECS::VPC::VPCId"
},
"VSwitchId": {
"Type": "String",
"AssociationProperty": "ALIYUN::ECS::VSwitch::VSwitchId",
"AssociationPropertyMetadata": {
"VpcId": "${VpcId}"
}
}
},
"Resources": {
"Instance": {
"Type": "ALIYUN::ROCKETMQ5::Instance",
"Properties": {
"ProductInfo": {
"MsgProcessSpec": "rmq.s2.2xlarge",
"SendReceiveRatio": 0.2,
"MessageRetentionTime": 72
},
"InternetInfo": {
"InternetSpec": "disable",
"FlowOutBandwidth": "uninvolved"
},
"SubSeriesCode": "cluster_ha",
"SeriesCode": "standard",
"PaymentType": "PayAsYouGo",
"VpcInfo": {
"VpcId": {
"Ref": "VpcId"
},
"VSwitchId": {
"Ref": "VSwitchId"
}
}
}
}
},
"Outputs": {
"InstanceName": {
"Description": "Instance name.",
"Value": {
"Fn::GetAtt": [
"Instance",
"InstanceName"
]
}
},
"VpcEndpoint": {
"Description": "VPC endpoint.",
"Value": {
"Fn::GetAtt": [
"Instance",
"VpcEndpoint"
]
}
},
"InstanceId": {
"Description": "Instance ID created.",
"Value": {
"Fn::GetAtt": [
"Instance",
"InstanceId"
]
}
},
"InternetEndpoint": {
"Description": "Internet endpoint.",
"Value": {
"Fn::GetAtt": [
"Instance",
"InternetEndpoint"
]
}
}
}
}