ALIYUN::ALB::LoadBalancer is used to create an Application Load Balancer (ALB) instance.
Syntax
{
"Type": "ALIYUN::ALB::LoadBalancer",
"Properties": {
"BandwidthPackageId": String,
"LoadBalancerName": String,
"LoadBalancerEdition": String,
"VpcId": String,
"ResourceGroupId": String,
"LoadBalancerBillingConfig": Map,
"AddressType": String,
"AddressAllocatedMode": String,
"ZoneMappings": List,
"DeletionProtectionEnabled": Boolean,
"AddressIpVersion": String,
"ModificationProtectionConfig": Map,
"Tags": List,
"AccessLogConfig": Map
}
}
Properties
Property | Type | Required | Editable | Description | Constraint |
LoadBalancerName | String | Yes | Yes | The name of the ALB instance. | The name must be 1 to 80 characters in length, and can contain letters, digits, hyphens (-), forward slashes (/), periods (.), and underscores (_). If you do not specify this property, the system assigns a name as the value of this property. |
BandwidthPackageId | String | No | Yes | The ID of the EIP bandwidth plan. | This property takes effect only if you set the AddressType property to Internet. |
LoadBalancerEdition | String | Yes | No | The edition of the ALB instance. | Valid values:
|
VpcId | String | Yes | No | The ID of the virtual private cloud (VPC) in which you want to create the ALB instance. | None. |
ResourceGroupId | String | No | Yes | The ID of the resource group. | None. |
LoadBalancerBillingConfig | Map | Yes | No | The billing method. | For more information, see LoadBalancerBillingConfig property. |
AddressType | String | Yes | No | The type of the IP address that the ALB instance uses to provide services. | Valid values:
|
AddressAllocatedMode | String | No | No | The mode in which the IP address of the instance is assigned. | Valid values:
|
ZoneMappings | List | Yes | No | The mappings between zones and vSwitches. | You must specify at least two zones. For more information, see ZoneMappings properties. |
DeletionProtectionEnabled | Boolean | No | Yes | Specifies whether to enable deletion protection. | Valid values:
|
AddressIpVersion | String | No | No | The IP version of the ALB instance. | Valid values:
|
ModificationProtectionConfig | Map | No | Yes | The configuration read-only mode. | For more information, see ModificationProtectionConfig properties. |
Tags | List | No | Yes | The tags that you want to add to the ALB instance. | You can add up to 20 tags. For more information, see Tags properties. |
AccessLogConfig | Map | No | Yes | The access log configuration. | For more information, see AccessLogConfig properties. |
AccessLogConfig syntax
"AccessLogConfig": {
"Enable": Boolean,
"LogStore": String,
"LogProject": String
}
AccessLogConfig properties
Property | Type | Required | Editable | Description | Constraint |
Enable | Boolean | No | Yes | Specifies whether to enable the access log feature. | Valid values:
|
LogStore | String | Yes | No | The Logstore. | None. |
LogProject | String | Yes | No | The log project. | None. |
LoadBalancerBillingConfig syntax
"LoadBalancerBillingConfig": {
"PayType": String
}
LoadBalancerBillingConfig property
Property | Type | Required | Editable | Description | Constraint |
PayType | String | Yes | No | The billing method of the ALB instance. | Set the value to PostPay. PostPay specifies the pay-as-you-go billing method. |
ZoneMappings syntax
"ZoneMappings": [
{
"ZoneId": String,
"VSwitchId": String,
"AllocationId": String,
"LoadBalancerAddresses": List
}
]
ZoneMappings properties
Property | Type | Required | Editable | Description | Constraint |
ZoneId | String | Yes | No | The zone ID of the ALB instance. | None. |
VSwitchId | String | Yes | No | The vSwitch ID of the ALB instance. | Each zone can contain only one vSwitch. |
AllocationId | String | No | No | The ID of the EIP that is associated with the ALB instance. | None. |
LoadBalancerAddresses | List | No | No | The IP address of the instance. | For more information, see LoadBalancerAddresses property. |
LoadBalancerAddresses syntax
"ModificationProtectionConfig": {
"AllocationId": String
}
LoadBalancerAddresses property
Property | Type | Required | Editable | Description | Constraint |
AllocationId | String | Yes | No | The ID of the EIP that is associated with the ALB instance. | None. |
ModificationProtectionConfig syntax
"ModificationProtectionConfig": {
"Status": String,
"Reason": String
}
ModificationProtectionConfig properties
Property | Type | Required | Editable | Description | Constraint |
Status | String | Yes | Yes | The status of the configuration read-only mode. | Valid values:
|
Reason | String | No | Yes | The reason why you enable the configuration read-only mode. | The reason must be 2 to 128 characters in length, and can contain letters, digits, periods (.), underscores (_), and hyphens (-). The reason must start with a letter. Note This property takes effect only if you set the Status property to ConsoleProtection. |
Tags syntax
"Tags": [
{
"Value": String,
"Key": String
}
]
Tags properties
Property | Type | Required | Editable | Description | Constraint |
Key | String | Yes | No | The key of the tag. | The tag key must be 1 to 128 characters in length and cannot contain |
Value | String | No | No | The value of the tag. | The tag value can be up to 128 characters in length and cannot contain |
Return values
Fn::GetAtt
LoadBalancerEdition: the edition of the ALB instance.
VpcId: the ID of the VPC in which the ALB instance is created.
LoadBalancerId: the ID of the ALB instance.
AddressType: the type of the IP address that the ALB instance uses to provide services.
DNSName: the domain name of the ALB instance.
ZoneMappings: the mappings between zones and vSwitches.