ALIYUN::ROCKETMQ5::Instance is used to create 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 | Type | Required | Editable | Description | Constraint |
AutoRenewPeriod | Integer | No | No | The auto-renewal cycle of the instance. | This property takes effect only when auto-renewal is enabled for the instance. Unit: month. Valid values: 1, 2, 3, 6, and 12. |
ProductInfo | Map | Yes | Yes | The information about the instance specification. | For more information, see ProductInfo properties. |
ResourceGroupId | String | No | No | The ID of the resource group. | None. |
AutoRenew | Boolean | No | No | Specifies whether to enable auto-renewal for the instance. | This property takes effect only when PaymentType is set to Subscription. Valid values:
|
Period | Integer | No | No | The subscription duration of the instance. | This property takes effect only when PaymentType is set to Subscription. Valid values:
|
InternetInfo | Map | Yes | Yes | The configurations of the Internet. | For more information, see InternetInfo properties. |
SubSeriesCode | String | Yes | No | The sub-category edition of the instance. | Valid values:
Note After you create an ApsaraMQ for RocketMQ 5.0 instance, you cannot change the sub-category edition of the instance. |
Remark | String | No | Yes | The remarks about the instance. | None. |
InstanceName | String | No | Yes | The instance name. | If you do not specify this property, the instance ID is used as the instance name. |
SeriesCode | String | Yes | No | The primary edition of the instance. | Valid values:
Note After you create an ApsaraMQ for RocketMQ 5.0 instance, you can only upgrade the primary edition of the instance. The following editions are sorted in ascending order: Standard Edition, Professional Edition, and Platinum Edition. You cannot downgrade the primary edition of the instance. For example, an ApsaraMQ for RocketMQ 5.0 instance can only be upgraded from Standard Edition to Professional Edition, but cannot be downgraded from Professional Edition to Standard Edition. |
PaymentType | String | No | No | The billing method of the instance. | Valid values:
|
VpcInfo | Map | Yes | No | The configurations of the virtual private cloud (VPC). | For more information, see VpcInfo properties. |
PeriodUnit | String | No | No | The unit of the subscription duration. | Valid values:
|
ProductInfo syntax
"ProductInfo": {
"SendReceiveRatio": Number,
"MessageRetentionTime": Integer,
"AutoScaling": Boolean,
"MsgProcessSpec": String
}
ProductInfo properties
Property | Type | Required | Editable | Description | Constraint |
SendReceiveRatio | Number | No | Yes | The ratio between sent messages and received messages in the instance. | Valid values: 0.2 to 0.5. |
MessageRetentionTime | Integer | No | Yes | The retention period of the message. | Unit: hour. The storage of ApsaraMQ for RocketMQ 5.0 messages is in serverless scaling mode. You are charged based on the actual used storage. The storage capacity of messages varies based on the retention period that you specify for the messages. |
AutoScaling | Boolean | No | No | Specifies whether to enable elastic transactions per second (TPS) for the instance. | Valid values:
After you enable the elastic TPS feature for an ApsaraMQ for RocketMQ instance, you can use a specific number of TPS that exceeds the specification limit. You are charged for the exceeded TPS. Note The elastic TPS feature is supported only by specific instance editions. |
MsgProcessSpec | String | Yes | No | The computing specification that is used to send and receive messages. | None. |
InternetInfo syntax
"InternetInfo": {
"IpWhitelist": List,
"InternetSpec": String,
"FlowOutBandwidth": Integer
}
InternetInfo properties
Property | Type | Required | Editable | Description | Constraint |
IpWhitelist | List | No | Yes | The IP address whitelist that includes the IP addresses that are allowed to access the ApsaraMQ for RocketMQ broker over the Internet. | This parameter can be configured only if you use a public endpoint to access the ApsaraMQ for RocketMQ broker.
|
InternetSpec | String | Yes | Yes | Specifies whether to enable the Internet access feature. | Valid values:
By default, ApsaraMQ for RocketMQ 5.0 instances support the VPC access feature. If you enable the Internet access feature, you are charged for downstream Internet bandwidth. |
FlowOutBandwidth | Integer | No | Yes | The Internet bandwidth. | Unit: MB/s. This property must be specified only when the metering method for Internet usage is pay-by-bandwidth. Valid values: 1 to 1000. |
VpcInfo syntax
"VpcInfo": {
"VpcId": String,
"VSwitchId": String,
"SecurityGroupId": String,
"VSwitchIds": List
}
VpcInfo properties
Property | Type | Required | Editable | Description | Constraint |
VpcId | String | Yes | No | The ID of the VPC in which you want to create the instance. | Note After you create an ApsaraMQ for RocketMQ 5.0 instance, you cannot change the VPC of the instance. If you want to change the VPC, you must release the instance and purchase a new ApsaraMQ for RocketMQ 5.0 instance. |
VSwitchId | String | No | No | The ID of the vSwitch with which you want to associate the instance. | Note After you create an ApsaraMQ for RocketMQ 5.0 instance, you cannot change the vSwitch of the instance. If you want to change the vSwitch, you must release the instance and purchase a new ApsaraMQ for RocketMQ 5.0 instance. |
SecurityGroupId | String | No | No | The ID of the security group to which the instance belongs. | None. |
VSwitchIds | List | No | No | The IDs of the vSwitches with which you want to associate the instance. | None. |
Return values
Fn::GetAtt
InstanceName: the instance name.
VpcEndpoint: the VPC endpoint of the instance.
InstanceId: the instance ID.
InternetEndpoint: the public endpoint of the instance.
Examples
YAML
format
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
JSON
format
{
"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"
]
}
}
}
}