Creates an Application Load Balancer (ALB) instance in a region.
Operation description
CreateLoadBalancer is an asynchronous operation. After a request is sent, the system returns a request ID and runs the task in the background. You can call the GetLoadBalancerAttribute operation to query the status of an ALB instance.
- If an ALB instance is in the Provisioning state, it indicates that the ALB instance is being created.
- If an ALB instance is in the Active state, it indicates that the ALB instance is created.
Debugging
Authorization information
The following table shows the authorization information corresponding to the API. The authorization information can be used in the Action policy element to grant a RAM user or RAM role the permissions to call this API operation. Description:
- Operation: the value that you can use in the Action element to specify the operation on a resource.
- Access level: the access level of each operation. The levels are read, write, and list.
- Resource type: the type of the resource on which you can authorize the RAM user or the RAM role to perform the operation. Take note of the following items:
- For mandatory resource types, indicate with a prefix of * .
- If the permissions cannot be granted at the resource level,
All Resourcesis used in the Resource type column of the operation.
- Condition Key: the condition key that is defined by the cloud service.
- Associated operation: other operations that the RAM user or the RAM role must have permissions to perform to complete the operation. To complete the operation, the RAM user or the RAM role must have the permissions to perform the associated operations.
| Operation | Access level | Resource type | Condition key | Associated operation |
|---|---|---|---|---|
| alb:CreateLoadBalancer | create | *LoadBalancer acs:alb:{#regionId}:{#accountId}:loadbalancer/* |
| none |
Request parameters
| Parameter | Type | Required | Description | Example |
|---|---|---|---|---|
| ClientToken | string | No | The client token that is used to ensure the idempotence of the request. You can use the client to generate the value, but you must ensure that it is unique among different requests. The token can only contain ASCII characters. Note
If you do not specify this parameter, the system uses the value of RequestId as the value of ClientToken. The value of the RequestId parameter may be different for each API request.
| 5A2CFF0E-5718-45B5-9D4D-70B3FF3898 |
| DryRun | boolean | No | Specifies whether to perform a dry run. Default value: false. Valid values:
| false |
| VpcId | string | Yes | The ID of the virtual private cloud (VPC) in which you want to create the ALB instance. | vpc-bp1b49rqrybk45nio**** |
| AddressType | string | Yes | The type of the address of the ALB instance. Valid values:
| Internet |
| LoadBalancerName | string | No | The name of the ALB instance. The name must be 2 to 128 characters in length, and can contain letters, digits, periods (.), underscores (_), and hyphens (-). The name must start with a letter. | alb1 |
| DeletionProtectionEnabled | boolean | No | Specifies whether to enable deletion protection. Default value: false. Valid values:
| false |
| ModificationProtectionConfig | object | No | The configuration read-only mode settings. | |
| Reason | string | No | The reason for enabling the configuration read-only mode. The reason must be 2 to 128 characters in length, can contain letters, digits, periods (.), underscores (_), and hyphens (-), and must start with a letter. Note
This parameter takes effect only when Status is set to ConsoleProtection.
| test |
| Status | string | No | Specifies whether to enable the configuration read-only mode. Valid values:
Note
If the parameter is set to ConsoleProtection, the configuration read-only mode is enabled. You cannot modify the configurations of the ALB instance in the ALB console. However, you can call API operations to modify the configurations of the ALB instance.
| ConsoleProtection |
| ZoneMappings | array<object> | Yes | The mappings between zones an vSwitches. You can specify at most 10 zones. If the selected region supports two or more zones, select at least two zones to ensure the high availability of your service. | |
| object | Yes | The mappings between zones an vSwitches. You can specify at most 10 zones. If the selected region supports two or more zones, select at least two zones to ensure the high availability of your service. | ||
| VSwitchId | string | Yes | The vSwitch in the zone. You can specify only one vSwitch (subnet) in each zone. You can specify at most 10 zones. If the region supports two or more zones, specify at least two zones. | vsw-sersdf**** |
| ZoneId | string | Yes | The zone ID of the cluster. You can specify at most 10 zones. If the region supports two or more zones, specify at least two zones. You can call the DescribeZones operation to query the most recent zone list. | cn-hangzhou-a |
| AllocationId | string | No | The ID of the EIP to be associated with the Internet-facing ALB instance. | eip-bp1aedxso6u80u0qf**** |
| EipType | string | No | The type of EIP. Valid values:
Note
For more information about the regions in which ALB supports Anycast EIPs, see Limits .
| Common |
| IntranetAddress | string | No | The private IPv4 address. | 192.168.10.1 |
| AddressAllocatedMode | string | No | The mode in which IP addresses are allocated to the ALB instance. Valid values:
Note
Starting from 00:00:00 on February 25, 2025 (UTC+8), when you call this operation to create an ALB instance, the instance is automatically the upgraded version regardless of the mode you specify. Upgraded ALB instances no longer differentiate between IP modes. Instead, they globally auto-scale IP addresses for providing load balancing services. The ALB instances you created before this date and time are not affected.
| Dynamic |
| ResourceGroupId | string | No | The ID of the resource group. | rg-atstuj3rtop**** |
| LoadBalancerEdition | string | Yes | The edition of the ALB instance. The features and billing rules vary based on the edition of the ALB instance. Valid values:
| Standard |
| LoadBalancerBillingConfig | object | Yes | The billing method of the ALB instance. | |
| PayType | string | Yes | The billing method of the instance. Set the value to PostPay, which specifies the pay-as-you-go billing method. | PostPay |
| BandwidthPackageId | string | No | The ID of the Internet Shared Bandwidth instance that is associated with the Internet-facing ALB instance. | cbwp-bp1vevu8h3ieh**** |
| AddressIpVersion | string | No | The protocol version. Valid values:
| IPv4 |
| Tag | array<object> | No | The tags. | |
| object | No | |||
| Key | string | No | The tag key can be up to 128 characters in length, and cannot start with acs: or aliyun. It cannot contain http:// or https://. | env |
| Value | string | No | The tag value can be up to 128 characters in length, and cannot start with acs: or aliyun. It cannot contain http:// or https://. | product |
Response parameters
Examples
Sample success responses
JSONformat
{
"LoadBalancerId": "alb-o9ulmq5hgn68jk****",
"RequestId": "CEF72CEB-54B6-4AE8-B225-F876FF7BA984"
}Error codes
| HTTP status code | Error code | Error message | Description |
|---|---|---|---|
| 400 | ResourceNotEnough.VSwitchIp | The specified resource %s is not enough. | The specified resource %s is not enough. |
| 400 | QuotaExceeded.LoadBalancersNum | The quota of %s is exceeded, usage %s/%s. | The quota of %s is exceeded, usage %s/%s. |
| 400 | Mismatch.ZoneIdAndVSwitchId | The %s and %s are mismatched. | The %s and %s are mismatched. |
| 400 | DuplicatedParam.ZoneId | The param of ZoneId is duplicated. | - |
| 400 | OperationDenyed.ServiceLinkedRoleNotExist | The service linked role AliyunServiceRoleForAlb does not exist. | - |
| 404 | ResourceNotFound.VSwitch | The specified resource %s is not found. | The specified resource %s is not found. |
For a list of error codes, visit the Service error codes.
Change history
| Change time | Summary of changes | Operation |
|---|---|---|
| 2024-09-23 | The Error code has changed | View Change Details |
| 2024-01-18 | The Error code has changed | View Change Details |
| 2023-11-03 | The Error code has changed | View Change Details |
| 2023-10-30 | The Error code has changed | View Change Details |
