ALIYUN::DDoS::OriginInstance is used to create an Anti-DDoS Origin instance.
Syntax
{
"Type": "ALIYUN::DDoS::OriginInstance",
"Properties": {
"IpAddresses": Integer,
"ChargeType": String,
"Period": Integer,
"EnableLog": Boolean,
"NetworkProtocol": String,
"CleanBandwidth": Integer,
"Tags": List,
"Edition": String,
"PeriodUnit": String,
"ProtectionMode": String
}
}
Properties
Property | Type | Required | Editable | Description | Constraint |
IpAddresses | Integer | No | No | The total number of IP addresses that you want to protect. |
|
ChargeType | String | No | No | The billing method. | Valid values:
|
Period | Integer | No | No | The billing cycle of the instance. | Valid values: 1 to 11. Unit: month. |
EnableLog | Boolean | No | No | Specifies whether to enable the mitigation log feature. | Valid values:
|
NetworkProtocol | String | No | No | The IP version of the instance. | Valid values:
Note
|
CleanBandwidth | Integer | No | No | The average network bandwidth of the service that you want to protect. |
|
Tags | List | No | Yes | The tags. | You can add up to 20 tags. For more information, see Tags properties. |
Edition | String | Yes | No | The edition. | Valid values:
|
PeriodUnit | String | No | No | The unit of the billing cycle of the instance. | Valid values:
|
ProtectionMode | String | Yes | No | The protection mode. | Set the value to unlimited. A value of unlimited specifies the Unlimited protection mode that is suitable for internal use in enterprises. |
Tags syntax
"Tags": [
{
"Value": String,
"Key": String
}
]
Tags properties
Property | Type | Required | Editable | Description | Constraint |
Value | String | No | No | The value of the tag. | None. |
Key | String | Yes | No | The key of the tag. | None. |
Return values
Fn::GetAtt
InstanceId: the ID of the instance.
Arn: the Alibaba Cloud Resource Name (ARN).
Examples
ROSTemplateFormatVersion: '2015-09-01'
Parameters:
ChargeType:
AllowedValues:
- PayAsYouGo
- Subscription
Description:
en: 'The charge type of the instance. Valid values:
PostPaid: Pay-as-you-go.
PrePaid: Subscription.'
Required: false
Type: String
CleanBandwidth:
Description:
en: "The mitigation capability of Anti-DDoS is measured by the inbound or outbound\
\ clean bandwidth.\nWhen Edition is enterprise, CleanBandwidth ranges from\
\ 100 to 1000 Mbit/s.When Edition is smb\uFF0C CleanBandwidth ranges from\
\ 50 to 1000 Mbit/s."
MaxValue: 1000
MinValue: 50
Required: false
Type: Number
Edition:
AllowedValues:
- enterprise
- smb
Description:
en: "Edition of the instance. Valid values:\n - enterprise: Enterprise Edition.\n\
- smb: Affordable and general edition for small and medium-sized enterprises."
Required: true
Type: String
EnableLog:
Description:
en: Whether to enable protection logs.
Required: false
Type: Boolean
IpAddresses:
Description:
en: "The number of ip addresses.\nWhen Edition is smb\uFF0C IP Addresses ranges\
\ from 1 to 29.\nWhen Edition is enterprise, The minimum number of IP Addresses\
\ is 30."
MinValue: 1
Required: false
Type: Number
NetworkProtocol:
AllowedValues:
- v4
- v6
- v4_6
Description:
en: 'The network protocol of the instance. Valid values:
v4: IPv4.
v6: IPv6.
v4_6: IPv4+IPv6.'
Required: false
Type: String
Period:
AssociationProperty: PayPeriod
Description:
en: The period of the instance.
MaxValue: 11
MinValue: 1
Required: false
Type: Number
PeriodUnit:
AllowedValues:
- Month
- Year
- month
- year
AssociationProperty: PayPeriodUnit
Description:
en: 'The period unit of the instance. Valid values:
Month: Month.
Year: Year.'
Required: false
Type: String
ProtectionMode:
Description:
en: 'The mode of the protection. Valid values:
unlimited: The Unlimited protection mode is intended for internal use within
enterprises.'
Required: true
Type: String
Tags:
AssociationProperty: List[Parameters]
AssociationPropertyMetadata:
ListMetadata:
Order:
- Key
- Value
Parameters:
Key:
Required: true
Type: String
Value:
Required: false
Type: String
Description:
en: Tags to attach to instance. Max support 20 tags to add during create instance.
Each tag with two properties Key and Value, and Key is required.
MaxLength: 20
Required: false
Type: Json
Resources:
Instance:
Properties:
ChargeType:
Ref: ChargeType
CleanBandwidth:
Ref: CleanBandwidth
Edition:
Ref: Edition
EnableLog:
Ref: EnableLog
IpAddresses:
Ref: IpAddresses
NetworkProtocol:
Ref: NetworkProtocol
Period:
Ref: Period
PeriodUnit:
Ref: PeriodUnit
ProtectionMode:
Ref: ProtectionMode
Tags:
Ref: Tags
Type: ALIYUN::DDoS::OriginInstance
Outputs:
InstanceId:
Description: The ID of the instance.
Value:
Fn::GetAtt:
- Instance
- InstanceId
{
"ROSTemplateFormatVersion": "2015-09-01",
"Parameters": {
"IpAddresses": {
"Type": "Number",
"Description": {
"en": "The total number of IP addresses that you want to protect.\nValid values when Edition is set to smb: 1 to 29.\nValid values when Edition is set to enterprise: an integer larger than or equal to 30."
},
"Required": false,
"MinValue": 1
},
"ChargeType": {
"Type": "String",
"Description": {
"en": "The charge type of the instance. Valid values:\nPostPaid: Pay-as-you-go.\nPrePaid: Subscription."
},
"AllowedValues": [
"PayAsYouGo",
"Subscription"
],
"Required": false
},
"Period": {
"AssociationProperty": "PayPeriod",
"Type": "Number",
"Description": {
"en": "The period of the instance."
},
"Required": false,
"MinValue": 1,
"MaxValue": 11
},
"EnableLog": {
"Type": "Boolean",
"Description": {
"en": "Whether to enable protection logs."
},
"Required": false
},
"NetworkProtocol": {
"Type": "String",
"Description": {
"en": "The network protocol of the instance. Valid values:\nv4: IPv4.\nv6: IPv6.\nv4_6: IPv4+IPv6."
},
"AllowedValues": [
"v4",
"v6",
"v4_6"
],
"Required": false
},
"CleanBandwidth": {
"Type": "Number",
"Description": {
"en": "The average network bandwidth of the service that you want to protect.\nValid values when Edition is set to enterprise: 100 to 1000. Unit: Mbit/s. Valid values when Edition is set to smb: 50 to 1000. Unit: Mbit/s."
},
"Required": false,
"MinValue": 50,
"MaxValue": 1000
},
"Tags": {
"AssociationPropertyMetadata": {
"Parameters": {
"Value": {
"Type": "String",
"Required": false
},
"Key": {
"Type": "String",
"Required": true
}
},
"ListMetadata": {
"Order": [
"Key",
"Value"
]
}
},
"AssociationProperty": "List[Parameters]",
"Type": "Json",
"Description": {
"en": "Tags to attach to instance. Max support 20 tags to add during create instance. Each tag with two properties Key and Value, and Key is required."
},
"Required": false,
"MaxLength": 20
},
"Edition": {
"Type": "String",
"Description": {
"en": "Edition of the instance. Valid values:\n - enterprise: Enterprise Edition.\n- smb: Affordable and general edition for small and medium-sized enterprises."
},
"AllowedValues": [
"enterprise",
"smb"
],
"Required": true
},
"PeriodUnit": {
"AssociationProperty": "PayPeriodUnit",
"Type": "String",
"Description": {
"en": "The period unit of the instance. Valid values:\nMonth: Month.\nYear: Year."
},
"AllowedValues": [
"Month",
"Year",
"month",
"year"
],
"Required": false
},
"ProtectionMode": {
"Type": "String",
"Description": {
"en": "The mode of the protection. Valid values:\nunlimited: The Unlimited protection mode is intended for internal use within enterprises."
},
"Required": true
}
},
"Resources": {
"Instance": {
"Type": "ALIYUN::DDoS::OriginInstance",
"Properties": {
"IpAddresses": {
"Ref": "IpAddresses"
},
"ChargeType": {
"Ref": "ChargeType"
},
"Period": {
"Ref": "Period"
},
"EnableLog": {
"Ref": "EnableLog"
},
"NetworkProtocol": {
"Ref": "NetworkProtocol"
},
"CleanBandwidth": {
"Ref": "CleanBandwidth"
},
"Tags": {
"Ref": "Tags"
},
"Edition": {
"Ref": "Edition"
},
"PeriodUnit": {
"Ref": "PeriodUnit"
},
"ProtectionMode": {
"Ref": "ProtectionMode"
}
}
}
},
"Outputs": {
"InstanceId": {
"Description": "The ID of the instance.",
"Value": {
"Fn::GetAtt": [
"Instance",
"InstanceId"
]
}
}
}
}