LBU API 2012-06-01
The Load Balancer Unit (LBU) API enables you to manage load balancers in the OUTSCALE Cloud.
It is compliant with the Elastic Load Balancing (ELB) API of Amazon Web Services (AWS). See the AWS Compatibility Matrix.
Throttling: To protect against overloads, the number of identical requests allowed in a given time period is limited.
Brute force: To protect against brute force attacks, the number of failed authentication attempts in a given time period is limited.
Endpoints
Name | Base URL |
---|---|
ap-northeast-1 | https://lbu.ap-northeast-1.outscale.com |
cloudgouv-eu-west-1 | https://lbu.cloudgouv-eu-west-1.outscale.com |
eu-west-2 (default) | https://lbu.eu-west-2.outscale.com |
us-east-2 | https://lbu.us-east-2.outscale.com |
us-west-1 | https://lbu.us-west-1.outscale.com |
Terms of service. Email: support@outscale.com. License: BSD 3 Clause.
Authentication Schemes
Access Key/Secret Key
The main way to authenticate your requests to this API is to use an access key and a secret key.
The mechanism behind this is based on AWS Signature Version 4, whose technical implementation details are described in Signature of API Requests.
In practice, the way to specify your access key and secret key depends on the tool or SDK you want to use to interact with the API.
For example, if you use OSC CLI:
- You need to create an ~/.osc/config.json file to specify your access key, secret key, and the Region of your account.
- You then specify the
--profile
option when executing OSC CLI commands.For more information, see Installing and Configuring OSC CLI.
See the code samples in each section of this documentation for specific examples in different programming languages.
For more information about access keys, see About Access Keys.
Other Security Mechanisms
In parallel with the authentication schemes, you can add other security mechanisms to your OUTSCALE account, for example to restrict API requests by IP or other criteria.
For more information, see Managing Your API Accesses.
Load Balancers
ConfigureHealthCheck
POST /ConfigureHealthCheck
Configures the health checks settings of a specified load balancer.
This action enables you to configure the settings of the availability tests that are regularly sent by a specified load balancer to its backend instances.
This AWS-compliant method corresponds to UpdateLoadBalancer in the OUTSCALE API.
Request Parameters
osc-cli lbu ConfigureHealthCheck --profile "default" \
--HealthCheck '{
"HealthyThreshold": 0,
"Interval": 0,
"Target": "string",
"Timeout": 0,
"UnhealthyThreshold": 0
}' \
--LoadBalancerName "string"
# You need Curl version 7.75 or later to use the --aws-sigv4 option
curl -X POST https://lbu.$OSC_REGION.outscale.com \
--user $OSC_ACCESS_KEY:$OSC_SECRET_KEY \
--aws-sigv4 'aws:amz' \
--data-urlencode 'Version=2012-06-01' \
--data-urlencode 'Action=ConfigureHealthCheck' \
--data-urlencode 'HealthCheck.HealthyThreshold=0' \
--data-urlencode 'HealthCheck.Interval=0' \
--data-urlencode 'HealthCheck.Target=string' \
--data-urlencode 'HealthCheck.Timeout=0' \
--data-urlencode 'HealthCheck.UnhealthyThreshold=0' \
--data-urlencode 'LoadBalancerName=string'
Request Parameter | Type | Description |
---|---|---|
HealthCheck (required) | HealthCheck | Information about the health check configuration. |
HealthyThreshold | integer | The number of consecutive successful requests before considering the instance as healthy (between 2 and 10 both included). |
Interval | integer | The number of seconds between two requests (between 5 and 600 both included). |
Target | string | The URL of the checked instance following the <protocol>:<port>/<path> format, with the following elements:- Protocol: TCP , SSL , HTTP or HTTPS .- Port: Between 1 and 65535 , both included.- Path: If you use the HTTP or HTTPS protocols, the request URL path. |
Timeout | integer | The maximum waiting time for a response before considering the instance as unhealthy, in seconds (between 2 and 60 both included). |
UnhealthyThreshold | integer | The number of consecutive failed requests before considering the instance as unhealthy (between 2 and 10 both included). |
LoadBalancerName (required) | string | The name of the load balancer. |
Response Elements
200 Response
{
"HealthCheck": {
"HealthyThreshold": 0,
"Interval": 0,
"Target": "string",
"Timeout": 0,
"UnhealthyThreshold": 0
},
"ResponseMetadata": {
"RequestId": "string"
}
}
Response 200 (ConfigureHealthCheckResponse):
Response Element | Type | Description |
---|---|---|
HealthCheck | HealthCheck | Information about the health check configuration. |
HealthyThreshold | integer | The number of consecutive successful requests before considering the instance as healthy (between 2 and 10 both included). |
Interval | integer | The number of seconds between two requests (between 5 and 600 both included). |
Target | string | The URL of the checked instance following the <protocol>:<port>/<path> format, with the following elements:- Protocol: TCP , SSL , HTTP or HTTPS .- Port: Between 1 and 65535 , both included.- Path: If you use the HTTP or HTTPS protocols, the request URL path. |
Timeout | integer | The maximum waiting time for a response before considering the instance as unhealthy, in seconds (between 2 and 60 both included). |
UnhealthyThreshold | integer | The number of consecutive failed requests before considering the instance as unhealthy (between 2 and 10 both included). |
ResponseMetadata | ResponseMetadata | Information about the response. |
RequestId | string | The ID of the request. |
CreateAppCookieStickinessPolicy
POST /CreateAppCookieStickinessPolicy
Creates a stickiness policy with sticky session lifetimes following the one of an application-generated cookie.
The created policy can be used only with HTTP listeners.
Unlike policies created using the CreateLBCookieStickinessPolicy method, the lifetime of the special Load Balancer Unit cookie follows the lifetime of the application-generated cookie specified in the policy configuration. The load balancer inserts a new stickiness cookie only when the application response includes a new application cookie.
The session stops being sticky if the application cookie is removed or expires, until a new application cookie is issued.
For more information, see About Load Balancers.
This AWS-compliant method corresponds to CreateLoadBalancerPolicy in the OUTSCALE API.
Request Parameters
osc-cli lbu CreateAppCookieStickinessPolicy --profile "default" \
--CookieName "string" \
--LoadBalancerName "string" \
--PolicyName "string"
# You need Curl version 7.75 or later to use the --aws-sigv4 option
curl -X POST https://lbu.$OSC_REGION.outscale.com \
--user $OSC_ACCESS_KEY:$OSC_SECRET_KEY \
--aws-sigv4 'aws:amz' \
--data-urlencode 'Version=2012-06-01' \
--data-urlencode 'Action=CreateAppCookieStickinessPolicy' \
--data-urlencode 'CookieName=string' \
--data-urlencode 'LoadBalancerName=string' \
--data-urlencode 'PolicyName=string'
Request Parameter | Type | Description |
---|---|---|
CookieName (required) | string | The name of the application cookie used for stickiness. |
LoadBalancerName (required) | string | The name of the load balancer. |
PolicyName (required) | string | The unique name of the policy (alphanumeric characters and dashes (- )). |
Response Elements
200 Response
{
"ResponseMetadata": {
"RequestId": "string"
}
}
Response 200 (CreateAppCookieStickinessPolicyResponse):
Response Element | Type | Description |
---|---|---|
ResponseMetadata | ResponseMetadata | Information about the response. |
RequestId | string | The ID of the request. |
CreateLBCookieStickinessPolicy
POST /CreateLBCookieStickinessPolicy
Creates a stickiness policy with sticky session lifetimes defined by the browser lifetime or by a specified expiration period.
The created policy can be used with HTTP or HTTPS listeners only.
If this policy is implemented by a load balancer, this load balancer uses this cookie in all incoming requests to direct them to the specified backend server instance. If this cookie is not present, the load balancer sends the request to any other server according to its load-balancing algorithm.
For more information, see About Load Balancers.
This AWS-compliant method corresponds to CreateLoadBalancerPolicy in the OUTSCALE API.
Request Parameters
osc-cli lbu CreateLBCookieStickinessPolicy --profile "default" \
--CookieExpirationPeriod 0 \
--LoadBalancerName "string" \
--PolicyName "string"
# You need Curl version 7.75 or later to use the --aws-sigv4 option
curl -X POST https://lbu.$OSC_REGION.outscale.com \
--user $OSC_ACCESS_KEY:$OSC_SECRET_KEY \
--aws-sigv4 'aws:amz' \
--data-urlencode 'Version=2012-06-01' \
--data-urlencode 'Action=CreateLBCookieStickinessPolicy' \
--data-urlencode 'CookieExpirationPeriod=0' \
--data-urlencode 'LoadBalancerName=string' \
--data-urlencode 'PolicyName=string'
Request Parameter | Type | Description |
---|---|---|
CookieExpirationPeriod | integer | The lifetime of the cookie, in seconds. If not specified, the default value of this parameter is 1 , which means that the sticky session lasts for the duration of the browser session. |
LoadBalancerName (required) | string | The name of the load balancer. |
PolicyName (required) | string | The name of the policy. This name must be unique and consist of alphanumeric characters and dashes (- ). |
Response Elements
200 Response
{
"ResponseMetadata": {
"RequestId": "string"
}
}
Response 200 (CreateLBCookieStickinessPolicyResponse):
Response Element | Type | Description |
---|---|---|
ResponseMetadata | ResponseMetadata | Information about the response. |
RequestId | string | The ID of the request. |
CreateLoadBalancer
POST /CreateLoadBalancer
Creates a load balancer.
The load balancer is created with a unique Domain Name Service (DNS) name. It receives the incoming traffic and routes it to its registered instances.
By default, this action creates an Internet-facing load balancer, resolving to External IPs (EIPs). To create an internal load balancer in a Virtual Private Cloud (VPC), resolving to private IPs, use the Scheme
parameter.
You must specify either the AvailabilityZones.member.N
or the Subnets.member.N
parameters.
For more information, see About Load Balancers.
This AWS-compliant method corresponds to CreateLoadBalancer in the OUTSCALE API.
Request Parameters
osc-cli lbu CreateLoadBalancer --profile "default" \
--AvailabilityZones.member.0 "string" \
--Listeners.member.0 '{
"InstancePort": 0,
"InstanceProtocol": "string",
"LoadBalancerPort": 0,
"Protocol": "string",
"SSLCertificateId": "string"
}' \
--LoadBalancerName "string" \
--Scheme "string" \
--SecurityGroups.member.0 "string" \
--Subnets.member.0 "string" \
--Tags.member.0 '{
"Key": "string",
"Value": "string"
}'
# You need Curl version 7.75 or later to use the --aws-sigv4 option
curl -X POST https://lbu.$OSC_REGION.outscale.com \
--user $OSC_ACCESS_KEY:$OSC_SECRET_KEY \
--aws-sigv4 'aws:amz' \
--data-urlencode 'Version=2012-06-01' \
--data-urlencode 'Action=CreateLoadBalancer' \
--data-urlencode 'AvailabilityZones.member.0=string' \
--data-urlencode 'Listeners.member.0.InstancePort=0' \
--data-urlencode 'Listeners.member.0.InstanceProtocol=string' \
--data-urlencode 'Listeners.member.0.LoadBalancerPort=0' \
--data-urlencode 'Listeners.member.0.Protocol=string' \
--data-urlencode 'Listeners.member.0.SSLCertificateId=string' \
--data-urlencode 'LoadBalancerName=string' \
--data-urlencode 'Scheme=string' \
--data-urlencode 'SecurityGroups.member.0=string' \
--data-urlencode 'Subnets.member.0=string' \
--data-urlencode 'Tags.member.0.Key=string' \
--data-urlencode 'Tags.member.0.Value=string'
Request Parameter | Type | Description |
---|---|---|
AvailabilityZones.member.N | string | (public Cloud only) The Availability Zone (AZ) in which you want to create the load balancer. Regardless of this AZ, the load balancer can distribute traffic to all AZs. This parameter is required in the public Cloud. |
Listeners.member.N (required) | Listeners.member.N | One or more listeners. |
InstancePort (required) | integer | The port on which the instance is listening (between 1 and 65535 both included). |
InstanceProtocol | string | The protocol for routing traffic to backend instances (HTTP | HTTPS | TCP | SSL ). |
LoadBalancerPort (required) | integer | The port on which the load balancer is listening (between 1 and 65535 both included). |
Protocol (required) | string | The routing protocol (HTTP | HTTPS | TCP | SSL ). |
SSLCertificateId | string | The OUTSCALE Resource Name (ORN) of the server certificate. For more information, see Resource Identifiers > OUTSCALE Resource Names (ORNs). |
LoadBalancerName (required) | string | The unique name of the load balancer (32 alphanumeric or hyphen characters maximum, but cannot start or end with a hyphen). |
Scheme | string | The type of load balancer. Use this parameter only for load balancers in a VPC. To create an internal load balancer, set this parameter to internal . |
SecurityGroups.member.N | string | (VPC only) One or more IDs of security groups you want to assign to the load balancer. If not specified, the default security group of the VPC is assigned to the load balancer. |
Subnets.member.N | string | (VPC only) The ID of the subnet in which you want to create the load balancer. Regardless of this subnet, the load balancer can distribute traffic to all subnets. This parameter is required in a VPC. |
Tags.member.N | Tags.member.N | One or more tags assigned to the load balancer. |
Key | string | The key of the tag, with a minimum of 1 character. |
Value | string | The value of the tag, with a minimum of 0 character. |
Response Elements
200 Response
{
"DNSName": "string",
"ResponseMetadata": {
"RequestId": "string"
}
}
Response 200 (CreateLoadBalancerResponse):
Response Element | Type | Description |
---|---|---|
DNSName | string | The DNS name of the load balancer. |
ResponseMetadata | ResponseMetadata | Information about the response. |
RequestId | string | The ID of the request. |
CreateLoadBalancerListeners
POST /CreateLoadBalancerListeners
Creates one or more listeners for a specified load balancer.
For more information, see About Load Balancers.
This AWS-compliant method corresponds to CreateLoadBalancerListeners in the OUTSCALE API.
Request Parameters
osc-cli lbu CreateLoadBalancerListeners --profile "default" \
--Listeners.member.0 '{
"InstancePort": 0,
"InstanceProtocol": "string",
"LoadBalancerPort": 0,
"Protocol": "string",
"SSLCertificateId": "string"
}' \
--LoadBalancerName "string"
# You need Curl version 7.75 or later to use the --aws-sigv4 option
curl -X POST https://lbu.$OSC_REGION.outscale.com \
--user $OSC_ACCESS_KEY:$OSC_SECRET_KEY \
--aws-sigv4 'aws:amz' \
--data-urlencode 'Version=2012-06-01' \
--data-urlencode 'Action=CreateLoadBalancerListeners' \
--data-urlencode 'Listeners.member.0.InstancePort=0' \
--data-urlencode 'Listeners.member.0.InstanceProtocol=string' \
--data-urlencode 'Listeners.member.0.LoadBalancerPort=0' \
--data-urlencode 'Listeners.member.0.Protocol=string' \
--data-urlencode 'Listeners.member.0.SSLCertificateId=string' \
--data-urlencode 'LoadBalancerName=string'
Request Parameter | Type | Description |
---|---|---|
Listeners.member.N (required) | Listeners.member.N | One or more listeners. |
InstancePort (required) | integer | The port on which the instance is listening (between 1 and 65535 both included). |
InstanceProtocol | string | The protocol for routing traffic to backend instances (HTTP | HTTPS | TCP | SSL ). |
LoadBalancerPort (required) | integer | The port on which the load balancer is listening (between 1 and 65535 both included). |
Protocol (required) | string | The routing protocol (HTTP | HTTPS | TCP | SSL ). |
SSLCertificateId | string | The OUTSCALE Resource Name (ORN) of the server certificate. For more information, see Resource Identifiers > OUTSCALE Resource Names (ORNs). |
LoadBalancerName (required) | string | The name of load balancer. |
Response Elements
200 Response
{
"ResponseMetadata": {
"RequestId": "string"
}
}
Response 200 (CreateLoadBalancerListenersResponse):
Response Element | Type | Description |
---|---|---|
ResponseMetadata | ResponseMetadata | Information about the response. |
RequestId | string | The ID of the request. |
CreateLoadBalancerPolicy
POST /CreateLoadBalancerPolicy
Creates a policy for the specified load balancer.
For more information, see About Load Balancers.
This AWS-compliant method corresponds to CreateLoadBalancerPolicy in the OUTSCALE API.
Request Parameters
osc-cli lbu CreateLoadBalancerPolicy --profile "default" \
--LoadBalancerName "string" \
--PolicyName "string" \
--PolicyTypeName "string"
# You need Curl version 7.75 or later to use the --aws-sigv4 option
curl -X POST https://lbu.$OSC_REGION.outscale.com \
--user $OSC_ACCESS_KEY:$OSC_SECRET_KEY \
--aws-sigv4 'aws:amz' \
--data-urlencode 'Version=2012-06-01' \
--data-urlencode 'Action=CreateLoadBalancerPolicy' \
--data-urlencode 'LoadBalancerName=string' \
--data-urlencode 'PolicyName=string' \
--data-urlencode 'PolicyTypeName=string'
Request Parameter | Type | Description |
---|---|---|
LoadBalancerName (required) | string | The name of the load balancer. |
PolicyName (required) | string | The name of the load balancer policy to create. This name must be unique within the policies of the specified load balancer. |
PolicyTypeName (required) | string | The name of the base policy type (always ProxyProtocolPolicyType ). |
Response Elements
200 Response
{
"ResponseMetadata": {
"RequestId": "string"
}
}
Response 200 (CreateLoadBalancerPolicyResponse):
Response Element | Type | Description |
---|---|---|
ResponseMetadata | ResponseMetadata | Information about the response. |
RequestId | string | The ID of the request. |
DeleteLoadBalancer
POST /DeleteLoadBalancer
Deletes a specified load balancer.
This AWS-compliant method corresponds to DeleteLoadBalancer in the OUTSCALE API.
Request Parameters
osc-cli lbu DeleteLoadBalancer --profile "default" \
--LoadBalancerName "string"
# You need Curl version 7.75 or later to use the --aws-sigv4 option
curl -X POST https://lbu.$OSC_REGION.outscale.com \
--user $OSC_ACCESS_KEY:$OSC_SECRET_KEY \
--aws-sigv4 'aws:amz' \
--data-urlencode 'Version=2012-06-01' \
--data-urlencode 'Action=DeleteLoadBalancer' \
--data-urlencode 'LoadBalancerName=string'
Request Parameter | Type | Description |
---|---|---|
LoadBalancerName (required) | string | The name of the load balancer. |
Response Elements
200 Response
{
"ResponseMetadata": {
"RequestId": "string"
}
}
Response 200 (DeleteLoadBalancerResponse):
Response Element | Type | Description |
---|---|---|
ResponseMetadata | ResponseMetadata | Information about the response. |
RequestId | string | The ID of the request. |
DeleteLoadBalancerListeners
POST /DeleteLoadBalancerListeners
Deletes listeners of a specified load balancer.
This AWS-compliant method corresponds to DeleteLoadBalancerListeners in the OUTSCALE API.
Request Parameters
osc-cli lbu DeleteLoadBalancerListeners --profile "default" \
--LoadBalancerName "string" \
--LoadBalancerPorts.member.0 0
# You need Curl version 7.75 or later to use the --aws-sigv4 option
curl -X POST https://lbu.$OSC_REGION.outscale.com \
--user $OSC_ACCESS_KEY:$OSC_SECRET_KEY \
--aws-sigv4 'aws:amz' \
--data-urlencode 'Version=2012-06-01' \
--data-urlencode 'Action=DeleteLoadBalancerListeners' \
--data-urlencode 'LoadBalancerName=string' \
--data-urlencode 'LoadBalancerPorts.member.0=0'
Request Parameter | Type | Description |
---|---|---|
LoadBalancerName (required) | string | The name of the load balancer. |
LoadBalancerPorts.member.N (required) | integer | The port numbers of the listeners. |
Response Elements
200 Response
{
"ResponseMetadata": {
"RequestId": "string"
}
}
Response 200 (DeleteLoadBalancerListenersResponse):
Response Element | Type | Description |
---|---|---|
ResponseMetadata | ResponseMetadata | Information about the response. |
RequestId | string | The ID of the request. |
DeleteLoadBalancerPolicy
POST /DeleteLoadBalancerPolicy
Deletes a specified policy from a load balancer.
In order to be deleted, the policy must not be enabled for any listener.
This AWS-compliant method corresponds to DeleteLoadBalancerPolicy in the OUTSCALE API.
Request Parameters
osc-cli lbu DeleteLoadBalancerPolicy --profile "default" \
--LoadBalancerName "string" \
--PolicyName "string"
# You need Curl version 7.75 or later to use the --aws-sigv4 option
curl -X POST https://lbu.$OSC_REGION.outscale.com \
--user $OSC_ACCESS_KEY:$OSC_SECRET_KEY \
--aws-sigv4 'aws:amz' \
--data-urlencode 'Version=2012-06-01' \
--data-urlencode 'Action=DeleteLoadBalancerPolicy' \
--data-urlencode 'LoadBalancerName=string' \
--data-urlencode 'PolicyName=string'
Request Parameter | Type | Description |
---|---|---|
LoadBalancerName (required) | string | The name of the load balancer. |
PolicyName (required) | string | The name of the policy. |
Response Elements
200 Response
{
"ResponseMetadata": {
"RequestId": "string"
}
}
Response 200 (DeleteLoadBalancerPolicyResponse):
Response Element | Type | Description |
---|---|---|
ResponseMetadata | ResponseMetadata | Information about the response. |
RequestId | string | The ID of the request. |
DeregisterInstancesFromLoadBalancer
POST /DeregisterInstancesFromLoadBalancer
Deregisters a specified instance from a load balancer.
This AWS-compliant method corresponds to UnlinkLoadBalancerBackendMachines in the OUTSCALE API.
Request Parameters
osc-cli lbu DeregisterInstancesFromLoadBalancer --profile "default" \
--Instances.member.0 '{
"InstanceId": "string"
}' \
--LoadBalancerName "string"
# You need Curl version 7.75 or later to use the --aws-sigv4 option
curl -X POST https://lbu.$OSC_REGION.outscale.com \
--user $OSC_ACCESS_KEY:$OSC_SECRET_KEY \
--aws-sigv4 'aws:amz' \
--data-urlencode 'Version=2012-06-01' \
--data-urlencode 'Action=DeregisterInstancesFromLoadBalancer' \
--data-urlencode 'Instances.member.0.InstanceId=string' \
--data-urlencode 'LoadBalancerName=string'
Request Parameter | Type | Description |
---|---|---|
Instances.member.N (required) | Instances.member.N | Information about one or more instances. |
InstanceId (required) | string | The ID of the instance. |
LoadBalancerName (required) | string | The name of the load balancer. |
Response Elements
200 Response
{
"Instances.member.N": {
"InstanceId": "string"
},
"ResponseMetadata": {
"RequestId": "string"
}
}
Response 200 (DeregisterInstancesFromLoadBalancerResponse):
Response Element | Type | Description |
---|---|---|
Instances.member.N | Instances.member.N | Information about one or more instances. |
InstanceId | string | The ID of the instance. |
ResponseMetadata | ResponseMetadata | Information about the response. |
RequestId | string | The ID of the request. |
DescribeInstanceHealth
POST /DescribeInstanceHealth
Describes the state of one or more backend instances registered with a specified load balancer.
This AWS-compliant method corresponds to ReadVmsHealth in the OUTSCALE API.
Request Parameters
osc-cli lbu DescribeInstanceHealth --profile "default" \
--Instances.member.0 '{
"InstanceId": "string"
}' \
--LoadBalancerName "string"
# You need Curl version 7.75 or later to use the --aws-sigv4 option
curl -X POST https://lbu.$OSC_REGION.outscale.com \
--user $OSC_ACCESS_KEY:$OSC_SECRET_KEY \
--aws-sigv4 'aws:amz' \
--data-urlencode 'Version=2012-06-01' \
--data-urlencode 'Action=DescribeInstanceHealth' \
--data-urlencode 'Instances.member.0.InstanceId=string' \
--data-urlencode 'LoadBalancerName=string'
Request Parameter | Type | Description |
---|---|---|
Instances.member.N | Instances.member.N | Information about one or more instances. |
InstanceId (required) | string | The ID of the instance. |
LoadBalancerName (required) | string | The name of the load balancer. |
Response Elements
200 Response
{
"InstanceStates.member.N": {
"Description": "string",
"InstanceId": "string",
"ReasonCode": "string",
"State": "string"
},
"ResponseMetadata": {
"RequestId": "string"
}
}
Response 200 (DescribeInstanceHealthResponse):
Response Element | Type | Description |
---|---|---|
InstanceStates.member.N | InstanceStates.member.N | Information about the health of one or more backend instances. |
Description | string | A description of the instance state. |
InstanceId | string | The ID of the instance. |
ReasonCode | string | Information about the cause of OutOfService instances.Specifically, whether the cause is Elastic Load Balancing or the instance ( ELB | Instance | N/A ). |
State | string | The current state of the instance (InService | OutOfService | Unknown ). |
ResponseMetadata | ResponseMetadata | Information about the response. |
RequestId | string | The ID of the request. |
DescribeLoadBalancerAttributes
POST /DescribeLoadBalancerAttributes
Describes the attributes of the specified load balancer.
This AWS-compliant method corresponds to ReadLoadBalancers in the OUTSCALE API.
Request Parameters
osc-cli lbu DescribeLoadBalancerAttributes --profile "default" \
--LoadBalancerName "string"
# You need Curl version 7.75 or later to use the --aws-sigv4 option
curl -X POST https://lbu.$OSC_REGION.outscale.com \
--user $OSC_ACCESS_KEY:$OSC_SECRET_KEY \
--aws-sigv4 'aws:amz' \
--data-urlencode 'Version=2012-06-01' \
--data-urlencode 'Action=DescribeLoadBalancerAttributes' \
--data-urlencode 'LoadBalancerName=string'
Request Parameter | Type | Description |
---|---|---|
LoadBalancerName (required) | string | The name of the load balancer. |
Response Elements
200 Response
{
"LoadBalancerAttributes": {
"AccessLog": {
"EmitInterval": 0,
"Enabled": true,
"S3BucketName": "string",
"S3BucketPrefix": "string"
},
"AdditionalAttributes.member.N": {
"Key": "string",
"Value": "string"
},
"ConnectionDraining": {
"Enabled": true,
"Timeout": 0
},
"ConnectionSettings": {
"IdleTimeout": 0
}
},
"ResponseMetadata": {
"RequestId": "string"
}
}
Response 200 (DescribeLoadBalancerAttributesResponse):
Response Element | Type | Description |
---|---|---|
LoadBalancerAttributes | LoadBalancerAttributes | The attributes of the load balancer. |
AccessLog | AccessLog | Information about the publication of the access logs. |
EmitInterval | integer | The time interval for the publication of access logs in the OUTSCALE Object Storage (OOS) bucket, in minutes. This value can be either 5 or 60 (by default, 60 ). |
Enabled | boolean | If true, access logs are enabled for your load balancer. If false, they are not. If you set this to true in your request, the S3BucketName parameter is required. |
S3BucketName | string | The name of the OOS bucket for the access logs. |
S3BucketPrefix | string | The path to the folder of the access logs in your OOS bucket (by default, the root level of your bucket). |
AdditionalAttributes.member.N | AdditionalAttributes.member.N | Information about additional load balancer attributes, for example secure cookies. |
Key | string | The name of the attribute. You can configure secure cookies on your load balancer with SecuredCookies (secured_cookies in the response). |
Value | string | The value of the attribute. If the Key is SecuredCookies , set the Value to true to enable secure cookies and false to disable them. |
ConnectionDraining | ConnectionDraining | Information about the draining of the connections to unhealthy or deregistered instances. |
Enabled | boolean | If set to true, connection draining is enabled for your load balancer. In this case, existing requests are completed before the connections are closed. By default, set to false. |
Timeout | integer | The maximum time the load balancer keeps the existing connections open before deregistering instances, in seconds (by default, 20 ). |
ConnectionSettings | ConnectionSettings | Information about idle connections. |
IdleTimeout | integer | The time that the connection is allowed to be idle, meaning no data is sent over, before it is closed by the load balancer, in seconds. By default, set to 30 for the front-end connection and 60 for the backend connection of your load balancer.If you set a new duration, the same value is applied to both the front-end and backend connections. |
ResponseMetadata | ResponseMetadata | Information about the response. |
RequestId | string | The ID of the request. |
DescribeLoadBalancers
POST /DescribeLoadBalancers
Describes one or more load balancers.
This AWS-compliant method corresponds to ReadLoadBalancers in the OUTSCALE API.
Request Parameters
osc-cli lbu DescribeLoadBalancers --profile "default" \
--LoadBalancerNames.member.0 "string" \
--Marker "string" \
--PageSize 0
# You need Curl version 7.75 or later to use the --aws-sigv4 option
curl -X POST https://lbu.$OSC_REGION.outscale.com \
--user $OSC_ACCESS_KEY:$OSC_SECRET_KEY \
--aws-sigv4 'aws:amz' \
--data-urlencode 'Version=2012-06-01' \
--data-urlencode 'Action=DescribeLoadBalancers' \
--data-urlencode 'LoadBalancerNames.member.0=string' \
--data-urlencode 'Marker=string' \
--data-urlencode 'PageSize=0'
Request Parameter | Type | Description |
---|---|---|
LoadBalancerNames.member.N | string | The name of one or more load balancers. |
Marker | string | The marker to request the next results page. |
PageSize | integer | The maximum number of results that can be returned in a single page. |
Response Elements
200 Response
{
"LoadBalancerDescriptions.member.N": {
"AvailabilityZones.member.N": "string",
"BackendServerDescriptions.member.N": {
"InstancePort": 0,
"PolicyNames.member.N": "string"
},
"CreatedTime": "string",
"DNSName": "string",
"HealthCheck": {
"HealthyThreshold": 0,
"Interval": 0,
"Target": "string",
"Timeout": 0,
"UnhealthyThreshold": 0
},
"Instances.member.N": {
"InstanceId": "string"
},
"ListenerDescriptions.member.N": {
"Listener": {
"InstancePort": 0,
"InstanceProtocol": "string",
"LoadBalancerPort": 0,
"Protocol": "string",
"SSLCertificateId": "string"
},
"PolicyNames.member.N": "string"
},
"LoadBalancerName": "string",
"Policies": {
"AppCookieStickinessPolicies.member.N": {
"CookieName": "string",
"PolicyName": "string"
},
"LBCookieStickinessPolicies.member.N": {
"CookieExpirationPeriod": 0,
"PolicyName": "string"
},
"OtherPolicies.member.N": "string"
},
"Scheme": "string",
"SecurityGroups.member.N": "string",
"SourceSecurityGroup": {
"GroupName": "string",
"OwnerAlias": "string"
},
"Subnets.member.N": "string",
"VPCId": "string"
},
"NextMarker": "string",
"ResponseMetadata": {
"RequestId": "string"
}
}
Response 200 (DescribeLoadBalancersResponse):
Response Element | Type | Description |
---|---|---|
LoadBalancerDescriptions.member.N | LoadBalancerDescriptions.member.N | Information about one or more load balancers. |
AvailabilityZones.member.N | string | The ID of the AZ in which the load balancer was created. |
BackendServerDescriptions.member.N | BackendServerDescriptions.member.N | Information about the configuration of your instances. |
InstancePort | integer | The port on which the instance is listening (between 1 and 65535 , both included). |
PolicyNames.member.N | string | The names of the policies enabled for the instance. |
CreatedTime | string | The date and time the load balancer was created. |
DNSName | string | The DNS name of the load balancer. |
HealthCheck | HealthCheck | Information about the health check configuration. |
HealthyThreshold | integer | The number of consecutive successful requests before considering the instance as healthy (between 2 and 10 both included). |
Interval | integer | The number of seconds between two requests (between 5 and 600 both included). |
Target | string | The URL of the checked instance following the <protocol>:<port>/<path> format, with the following elements:- Protocol: TCP , SSL , HTTP or HTTPS .- Port: Between 1 and 65535 , both included.- Path: If you use the HTTP or HTTPS protocols, the request URL path. |
Timeout | integer | The maximum waiting time for a response before considering the instance as unhealthy, in seconds (between 2 and 60 both included). |
UnhealthyThreshold | integer | The number of consecutive failed requests before considering the instance as unhealthy (between 2 and 10 both included). |
Instances.member.N | Instances.member.N | Information about one or more instances. |
InstanceId | string | The ID of the instance. |
ListenerDescriptions.member.N | ListenerDescriptions.member.N | The listeners for the load balancer. |
Listener | Listener | The listener. |
InstancePort | integer | The port on which the instance is listening (between 1 and 65535 both included). |
InstanceProtocol | string | The protocol for routing traffic to backend instances (HTTP | HTTPS | TCP | SSL ). |
LoadBalancerPort | integer | The port on which the load balancer is listening (between 1 and 65535 both included). |
Protocol | string | The routing protocol (HTTP | HTTPS | TCP | SSL ). |
SSLCertificateId | string | The OUTSCALE Resource Name (ORN) of the server certificate. For more information, see Resource Identifiers > OUTSCALE Resource Names (ORNs). |
PolicyNames.member.N | string | The policies. If there are no policies enabled, the list is empty. |
LoadBalancerName | string | The name of the load balancer. |
Policies | Policies | The policies defined for the load balancer. |
AppCookieStickinessPolicies.member.N | AppCookieStickinessPolicies.member.N | The stickiness policies created using CreateAppCookieStickinessPolicy. |
CookieName | string | The name of the application cookie used for stickiness. |
PolicyName | string | The mnemonic name for the policy being created. The name must be unique within a set of policies for this load balancer. |
LBCookieStickinessPolicies.member.N | LBCookieStickinessPolicies.member.N | The stickiness policies created using CreateLBCookieStickinessPolicy. |
CookieExpirationPeriod | integer | The time period, in seconds, after which the cookie should be considered stale. If 1 , the stickiness session lasts for the duration of the browser session. |
PolicyName | string | The name of the policy. This name must be unique within the set of policies for this load balancer. |
OtherPolicies.member.N | string | The policies other than the stickiness policies. |
Scheme | string | The type of load balancer. Valid only for load balancers in a VPC. If Scheme is internet-facing, the load balancer has a public DNS name that resolves to an External IP (EIP). If Scheme is internal, the load balancer has a public DNS name that resolves to a private IP. |
SecurityGroups.member.N | string | The security groups for the load balancer. Valid only for load balancers in a VPC. |
SourceSecurityGroup | SourceSecurityGroup | The security group for the load balancer, which you can use as part of your inbound rules for your registered instances. To only allow traffic from load balancers, add a security group rule that specifies this source security group as the inbound source. |
GroupName | string | The name of the security group. |
OwnerAlias | string | The owner of the security group. |
Subnets.member.N | string | The ID of the subnet in which the load balancer was created. |
VPCId | string | The ID of the VPC for the load balancer. |
NextMarker | string | The marker to request the next results page (empty if there is no more results to return). |
ResponseMetadata | ResponseMetadata | Information about the response. |
RequestId | string | The ID of the request. |
ModifyLoadBalancerAttributes
POST /ModifyLoadBalancerAttributes
Modifies the specified attributes of a load balancer.
This AWS-compliant method corresponds to UpdateLoadBalancer in the OUTSCALE API.
Request Parameters
osc-cli lbu ModifyLoadBalancerAttributes --profile "default" \
--LoadBalancerAttributes '{
"AccessLog": {
"EmitInterval": 0,
"Enabled": True,
"S3BucketName": "string",
"S3BucketPrefix": "string"
},
"AdditionalAttributes.member.0": {
"Key": "string",
"Value": "string"
},
"ConnectionDraining": {
"Enabled": True,
"Timeout": 0
},
"ConnectionSettings": {
"IdleTimeout": 0
}
}' \
--LoadBalancerName "string"
# You need Curl version 7.75 or later to use the --aws-sigv4 option
curl -X POST https://lbu.$OSC_REGION.outscale.com \
--user $OSC_ACCESS_KEY:$OSC_SECRET_KEY \
--aws-sigv4 'aws:amz' \
--data-urlencode 'Version=2012-06-01' \
--data-urlencode 'Action=ModifyLoadBalancerAttributes' \
--data-urlencode 'LoadBalancerAttributes.AccessLog.EmitInterval=0' \
--data-urlencode 'LoadBalancerAttributes.AccessLog.Enabled=true' \
--data-urlencode 'LoadBalancerAttributes.AccessLog.S3BucketName=string' \
--data-urlencode 'LoadBalancerAttributes.AccessLog.S3BucketPrefix=string' \
--data-urlencode 'LoadBalancerAttributes.AdditionalAttributes.member.0.Key=string' \
--data-urlencode 'LoadBalancerAttributes.AdditionalAttributes.member.0.Value=string' \
--data-urlencode 'LoadBalancerAttributes.ConnectionDraining.Enabled=true' \
--data-urlencode 'LoadBalancerAttributes.ConnectionDraining.Timeout=0' \
--data-urlencode 'LoadBalancerAttributes.ConnectionSettings.IdleTimeout=0' \
--data-urlencode 'LoadBalancerName=string'
Request Parameter | Type | Description |
---|---|---|
LoadBalancerAttributes (required) | LoadBalancerAttributes | The attributes of the load balancer. |
AccessLog | AccessLog | Information about the publication of the access logs. |
EmitInterval | integer | The time interval for the publication of access logs in the OUTSCALE Object Storage (OOS) bucket, in minutes. This value can be either 5 or 60 (by default, 60 ). |
Enabled | boolean | If true, access logs are enabled for your load balancer. If false, they are not. If you set this to true in your request, the S3BucketName parameter is required. |
S3BucketName | string | The name of the OOS bucket for the access logs. |
S3BucketPrefix | string | The path to the folder of the access logs in your OOS bucket (by default, the root level of your bucket). |
AdditionalAttributes.member.N | AdditionalAttributes.member.N | Information about additional load balancer attributes, for example secure cookies. |
Key | string | The name of the attribute. You can configure secure cookies on your load balancer with SecuredCookies (secured_cookies in the response). |
Value | string | The value of the attribute. If the Key is SecuredCookies , set the Value to true to enable secure cookies and false to disable them. |
ConnectionDraining | ConnectionDraining | Information about the draining of the connections to unhealthy or deregistered instances. |
Enabled | boolean | If set to true, connection draining is enabled for your load balancer. In this case, existing requests are completed before the connections are closed. By default, set to false. |
Timeout | integer | The maximum time the load balancer keeps the existing connections open before deregistering instances, in seconds (by default, 20 ). |
ConnectionSettings | ConnectionSettings | Information about idle connections. |
IdleTimeout | integer | The time that the connection is allowed to be idle, meaning no data is sent over, before it is closed by the load balancer, in seconds. By default, set to 30 for the front-end connection and 60 for the backend connection of your load balancer.If you set a new duration, the same value is applied to both the front-end and backend connections. |
LoadBalancerName (required) | string | The name of the load balancer. |
Response Elements
200 Response
{
"LoadBalancerAttributes": {
"AccessLog": {
"EmitInterval": 0,
"Enabled": true,
"S3BucketName": "string",
"S3BucketPrefix": "string"
},
"AdditionalAttributes.member.N": {
"Key": "string",
"Value": "string"
},
"ConnectionDraining": {
"Enabled": true,
"Timeout": 0
},
"ConnectionSettings": {
"IdleTimeout": 0
}
},
"LoadBalancerName": "string",
"ResponseMetadata": {
"RequestId": "string"
}
}
Response 200 (ModifyLoadBalancerAttributesResponse):
Response Element | Type | Description |
---|---|---|
LoadBalancerAttributes | LoadBalancerAttributes | The attributes of the load balancer. |
AccessLog | AccessLog | Information about the publication of the access logs. |
EmitInterval | integer | The time interval for the publication of access logs in the OUTSCALE Object Storage (OOS) bucket, in minutes. This value can be either 5 or 60 (by default, 60 ). |
Enabled | boolean | If true, access logs are enabled for your load balancer. If false, they are not. If you set this to true in your request, the S3BucketName parameter is required. |
S3BucketName | string | The name of the OOS bucket for the access logs. |
S3BucketPrefix | string | The path to the folder of the access logs in your OOS bucket (by default, the root level of your bucket). |
AdditionalAttributes.member.N | AdditionalAttributes.member.N | Information about additional load balancer attributes, for example secure cookies. |
Key | string | The name of the attribute. You can configure secure cookies on your load balancer with SecuredCookies (secured_cookies in the response). |
Value | string | The value of the attribute. If the Key is SecuredCookies , set the Value to true to enable secure cookies and false to disable them. |
ConnectionDraining | ConnectionDraining | Information about the draining of the connections to unhealthy or deregistered instances. |
Enabled | boolean | If set to true, connection draining is enabled for your load balancer. In this case, existing requests are completed before the connections are closed. By default, set to false. |
Timeout | integer | The maximum time the load balancer keeps the existing connections open before deregistering instances, in seconds (by default, 20 ). |
ConnectionSettings | ConnectionSettings | Information about idle connections. |
IdleTimeout | integer | The time that the connection is allowed to be idle, meaning no data is sent over, before it is closed by the load balancer, in seconds. By default, set to 30 for the front-end connection and 60 for the backend connection of your load balancer.If you set a new duration, the same value is applied to both the front-end and backend connections. |
LoadBalancerName | string | The name of the load balancer. |
ResponseMetadata | ResponseMetadata | Information about the response. |
RequestId | string | The ID of the request. |
RegisterInstancesWithLoadBalancer
POST /RegisterInstancesWithLoadBalancer
Registers one or more instances with a specified load balancer.
The instances can be in different subnets and different availability zones than the load balancer, as long as the instances and load balancers are all in the public Cloud or all in the same VPC. It may take a little time for an instance to be registered with the load balancer. Once the instance is registered with a load balancer, it receives traffic and requests from this load balancer and is called a backend instance.
This AWS-compliant method corresponds to RegisterVmsInLoadBalancer in the OUTSCALE API.
Request Parameters
osc-cli lbu RegisterInstancesWithLoadBalancer --profile "default" \
--Instances.member.0 '{
"InstanceId": "string"
}' \
--LoadBalancerName "string"
# You need Curl version 7.75 or later to use the --aws-sigv4 option
curl -X POST https://lbu.$OSC_REGION.outscale.com \
--user $OSC_ACCESS_KEY:$OSC_SECRET_KEY \
--aws-sigv4 'aws:amz' \
--data-urlencode 'Version=2012-06-01' \
--data-urlencode 'Action=RegisterInstancesWithLoadBalancer' \
--data-urlencode 'Instances.member.0.InstanceId=string' \
--data-urlencode 'LoadBalancerName=string'
Request Parameter | Type | Description |
---|---|---|
Instances.member.N (required) | Instances.member.N | Information about one or more instances. |
InstanceId (required) | string | The ID of the instance. |
LoadBalancerName (required) | string | The name of the load balancer. |
Response Elements
200 Response
{
"Instances.member.N": {
"InstanceId": "string"
},
"ResponseMetadata": {
"RequestId": "string"
}
}
Response 200 (RegisterInstancesWithLoadBalancerResponse):
Response Element | Type | Description |
---|---|---|
Instances.member.N | Instances.member.N | Information about one or more instances. |
InstanceId | string | The ID of the instance. |
ResponseMetadata | ResponseMetadata | Information about the response. |
RequestId | string | The ID of the request. |
SetLoadBalancerListenerSSLCertificate
POST /SetLoadBalancerListenerSSLCertificate
Sets a new SSL certificate to an SSL or HTTPS listener of a load balancer.
This certificate replaces any certificate used on the same load balancer and port. To do so, you first need to upload a certificate using the UploadServerCertificate method in the Elastic Identity Management (EIM) API.
This AWS-compliant method corresponds to UpdateLoadBalancer in the OUTSCALE API.
Request Parameters
osc-cli lbu SetLoadBalancerListenerSSLCertificate --profile "default" \
--LoadBalancerName "string" \
--LoadBalancerPort 0 \
--SSLCertificateId "string"
# You need Curl version 7.75 or later to use the --aws-sigv4 option
curl -X POST https://lbu.$OSC_REGION.outscale.com \
--user $OSC_ACCESS_KEY:$OSC_SECRET_KEY \
--aws-sigv4 'aws:amz' \
--data-urlencode 'Version=2012-06-01' \
--data-urlencode 'Action=SetLoadBalancerListenerSSLCertificate' \
--data-urlencode 'LoadBalancerName=string' \
--data-urlencode 'LoadBalancerPort=0' \
--data-urlencode 'SSLCertificateId=string'
Request Parameter | Type | Description |
---|---|---|
LoadBalancerName (required) | string | The name of the load balancer. |
LoadBalancerPort (required) | integer | The port using the SSL certificate. |
SSLCertificateId (required) | string | The OUTSCALE Resource Name (ORN) of the server certificate. For more information, see Resource Identifiers > OUTSCALE Resource Names (ORNs). |
Response Elements
200 Response
{
"ResponseMetadata": {
"RequestId": "string"
}
}
Response 200 (SetLoadBalancerListenerSSLCertificateResponse):
Response Element | Type | Description |
---|---|---|
ResponseMetadata | ResponseMetadata | Information about the response. |
RequestId | string | The ID of the request. |
SetLoadBalancerPoliciesForBackendServer
POST /SetLoadBalancerPoliciesForBackendServer
Replaces the set of policies enabled for the specified port on which the instance is listening with a new set of policies.
You can use the DescribeLoadBalancers
method to list the policies associated with the instance. For more information, see DescribeLoadBalancers.
This AWS-compliant method corresponds to CreateLoadBalancerPolicy in the OUTSCALE API.
Request Parameters
osc-cli lbu SetLoadBalancerPoliciesForBackendServer --profile "default" \
--InstancePort 0 \
--LoadBalancerName "string" \
--PolicyNames.member.0 "string"
# You need Curl version 7.75 or later to use the --aws-sigv4 option
curl -X POST https://lbu.$OSC_REGION.outscale.com \
--user $OSC_ACCESS_KEY:$OSC_SECRET_KEY \
--aws-sigv4 'aws:amz' \
--data-urlencode 'Version=2012-06-01' \
--data-urlencode 'Action=SetLoadBalancerPoliciesForBackendServer' \
--data-urlencode 'InstancePort=0' \
--data-urlencode 'LoadBalancerName=string' \
--data-urlencode 'PolicyNames.member.0=string'
Request Parameter | Type | Description |
---|---|---|
InstancePort (required) | integer | The port on which the instance is listening. |
LoadBalancerName (required) | string | The name of the load balancer. |
PolicyNames.member.N (required) | string | The names of all the policies you want to enable for your load balancer. You need to list the already enabled policies that you want to keep along with the new ones you are enabling. If the list is empty, then all current policies are removed from the instance. |
Response Elements
200 Response
{
"ResponseMetadata": {
"RequestId": "string"
}
}
Response 200 (SetLoadBalancerPoliciesForBackendServerResponse):
Response Element | Type | Description |
---|---|---|
ResponseMetadata | ResponseMetadata | Information about the response. |
RequestId | string | The ID of the request. |
SetLoadBalancerPoliciesOfListener
POST /SetLoadBalancerPoliciesOfListener
Replaces the currently enabled policy for a load balancer with another one.
If the PolicyNames.member.N
parameter is empty, the currently enabled policy is disabled.
This AWS-compliant method corresponds to UpdateLoadBalancer in the OUTSCALE API.
Request Parameters
osc-cli lbu SetLoadBalancerPoliciesOfListener --profile "default" \
--LoadBalancerName "string" \
--LoadBalancerPort 0 \
--PolicyNames.member.0 "string"
# You need Curl version 7.75 or later to use the --aws-sigv4 option
curl -X POST https://lbu.$OSC_REGION.outscale.com \
--user $OSC_ACCESS_KEY:$OSC_SECRET_KEY \
--aws-sigv4 'aws:amz' \
--data-urlencode 'Version=2012-06-01' \
--data-urlencode 'Action=SetLoadBalancerPoliciesOfListener' \
--data-urlencode 'LoadBalancerName=string' \
--data-urlencode 'LoadBalancerPort=0' \
--data-urlencode 'PolicyNames.member.0=string'
Request Parameter | Type | Description |
---|---|---|
LoadBalancerName (required) | string | The name of the load balancer. |
LoadBalancerPort (required) | integer | The external port of the load balancer. |
PolicyNames.member.N (required) | string | The name of the policy you want to enable for the listener. |
Response Elements
200 Response
{
"ResponseMetadata": {
"RequestId": "string"
}
}
Response 200 (SetLoadBalancerPoliciesOfListenerResponse):
Response Element | Type | Description |
---|---|---|
ResponseMetadata | ResponseMetadata | Information about the response. |
RequestId | string | The ID of the request. |
Tags
AddTags
POST /AddTags
Adds one or more tags to the specified load balancers.
If a tag with the same key already exists for the load balancer, the tag value is replaced.
For more information, see About Tags.
This AWS-compliant method corresponds to CreateLoadBalancerTags in the OUTSCALE API.
Request Parameters
osc-cli lbu AddTags --profile "default" \
--LoadBalancerNames.member.0 "string" \
--Tags.member.0 '{
"Key": "string",
"Value": "string"
}'
# You need Curl version 7.75 or later to use the --aws-sigv4 option
curl -X POST https://lbu.$OSC_REGION.outscale.com \
--user $OSC_ACCESS_KEY:$OSC_SECRET_KEY \
--aws-sigv4 'aws:amz' \
--data-urlencode 'Version=2012-06-01' \
--data-urlencode 'Action=AddTags' \
--data-urlencode 'LoadBalancerNames.member.0=string' \
--data-urlencode 'Tags.member.0.Key=string' \
--data-urlencode 'Tags.member.0.Value=string'
Request Parameter | Type | Description |
---|---|---|
LoadBalancerNames.member.N (required) | string | The name of a load balancer. |
Tags.member.N (required) | Tags.member.N | One or more tags assigned to the load balancer. |
Key | string | The key of the tag, with a minimum of 1 character. |
Value | string | The value of the tag, with a minimum of 0 character. |
Response Elements
200 Response
{
"ResponseMetadata": {
"RequestId": "string"
}
}
Response 200 (AddTagsResponse):
Response Element | Type | Description |
---|---|---|
ResponseMetadata | ResponseMetadata | Information about the response. |
RequestId | string | The ID of the request. |
DescribeTags
POST /DescribeTags
Describes the tags associated with one or more specified load balancers.
This AWS-compliant method corresponds to ReadLoadBalancerTags in the OUTSCALE API.
Request Parameters
osc-cli lbu DescribeTags --profile "default" \
--LoadBalancerNames.member.0 "string"
# You need Curl version 7.75 or later to use the --aws-sigv4 option
curl -X POST https://lbu.$OSC_REGION.outscale.com \
--user $OSC_ACCESS_KEY:$OSC_SECRET_KEY \
--aws-sigv4 'aws:amz' \
--data-urlencode 'Version=2012-06-01' \
--data-urlencode 'Action=DescribeTags' \
--data-urlencode 'LoadBalancerNames.member.0=string'
Request Parameter | Type | Description |
---|---|---|
LoadBalancerNames.member.N (required) | string | The name of one or more load balancers. |
Response Elements
200 Response
{
"ResponseMetadata": {
"RequestId": "string"
},
"TagDescriptions.member.N": {
"LoadBalancerName": "string",
"Tags.member.N": {
"Key": "string",
"Value": "string"
}
}
}
Response 200 (DescribeTagsResponse):
Response Element | Type | Description |
---|---|---|
ResponseMetadata | ResponseMetadata | Information about the response. |
RequestId | string | The ID of the request. |
TagDescriptions.member.N | TagDescriptions.member.N | Information about the tags associated with the specified load balancers. |
LoadBalancerName | string | The name of the load balancer. |
Tags.member.N | Tags.member.N | One or more tags assigned to the load balancer. |
Key | string | The key of the tag, with a minimum of 1 character. |
Value | string | The value of the tag, with a minimum of 0 character. |
RemoveTags
POST /RemoveTags
Deletes one or more tags from the specified load balancers.
This AWS-compliant method corresponds to DeleteLoadBalancerTags in the OUTSCALE API.
Request Parameters
osc-cli lbu RemoveTags --profile "default" \
--LoadBalancerNames.member.0 "string" \
--Tags.member.0.Key "string"
# You need Curl version 7.75 or later to use the --aws-sigv4 option
curl -X POST https://lbu.$OSC_REGION.outscale.com \
--user $OSC_ACCESS_KEY:$OSC_SECRET_KEY \
--aws-sigv4 'aws:amz' \
--data-urlencode 'Version=2012-06-01' \
--data-urlencode 'Action=RemoveTags' \
--data-urlencode 'LoadBalancerNames.member.0=string' \
--data-urlencode 'Tags.member.0.Key=string'
Request Parameter | Type | Description |
---|---|---|
LoadBalancerNames.member.N (required) | string | The name of a load balancer. |
Tags.member.N.Key (required) | string | The key of a tag you want to delete from the load balancer. |
Response Elements
200 Response
{
"ResponseMetadata": {
"RequestId": "string"
}
}
Response 200 (RemoveTagsResponse):
Response Element | Type | Description |
---|---|---|
ResponseMetadata | ResponseMetadata | Information about the response. |
RequestId | string | The ID of the request. |
Schemas
AccessLog
Information about the publication of the access logs.
Property | Type | Description |
---|---|---|
EmitInterval | integer | The time interval for the publication of access logs in the OUTSCALE Object Storage (OOS) bucket, in minutes. This value can be either 5 or 60 (by default, 60 ). |
Enabled | boolean | If true, access logs are enabled for your load balancer. If false, they are not. If you set this to true in your request, the S3BucketName parameter is required. |
S3BucketName | string | The name of the OOS bucket for the access logs. |
S3BucketPrefix | string | The path to the folder of the access logs in your OOS bucket (by default, the root level of your bucket). |
Schema
{
"EmitInterval": 0,
"Enabled": true,
"S3BucketName": "string",
"S3BucketPrefix": "string"
}
AddTagsResponse
Property | Type | Description |
---|---|---|
ResponseMetadata | ResponseMetadata | Information about the response. |
Schema
{
"ResponseMetadata": {
"RequestId": "string"
}
}
AdditionalAttributes.member.N
Information about additional load balancer attributes, for example secure cookies.
Property | Type | Description |
---|---|---|
Key | string | The name of the attribute. You can configure secure cookies on your load balancer with SecuredCookies (secured_cookies in the response). |
Value | string | The value of the attribute. If the Key is SecuredCookies , set the Value to true to enable secure cookies and false to disable them. |
Schema
{
"Key": "string",
"Value": "string"
}
AppCookieStickinessPolicies.member.N
The stickiness policies created using CreateAppCookieStickinessPolicy.
Property | Type | Description |
---|---|---|
CookieName | string | The name of the application cookie used for stickiness. |
PolicyName | string | The mnemonic name for the policy being created. The name must be unique within a set of policies for this load balancer. |
Schema
{
"CookieName": "string",
"PolicyName": "string"
}
BackendServerDescriptions.member.N
Information about the configuration of your instances.
Property | Type | Description |
---|---|---|
InstancePort | integer | The port on which the instance is listening (between 1 and 65535 , both included). |
PolicyNames.member.N | string | The names of the policies enabled for the instance. |
Schema
{
"InstancePort": 0,
"PolicyNames.member.N": "string"
}
ConfigureHealthCheckResponse
Property | Type | Description |
---|---|---|
HealthCheck | HealthCheck | Information about the health check configuration. |
ResponseMetadata | ResponseMetadata | Information about the response. |
Schema
{
"HealthCheck": {
"HealthyThreshold": 0,
"Interval": 0,
"Target": "string",
"Timeout": 0,
"UnhealthyThreshold": 0
},
"ResponseMetadata": {
"RequestId": "string"
}
}
ConnectionDraining
Information about the draining of the connections to unhealthy or deregistered instances.
Property | Type | Description |
---|---|---|
Enabled | boolean | If set to true, connection draining is enabled for your load balancer. In this case, existing requests are completed before the connections are closed. By default, set to false. |
Timeout | integer | The maximum time the load balancer keeps the existing connections open before deregistering instances, in seconds (by default, 20 ). |
Schema
{
"Enabled": true,
"Timeout": 0
}
ConnectionSettings
Information about idle connections.
Property | Type | Description |
---|---|---|
IdleTimeout | integer | The time that the connection is allowed to be idle, meaning no data is sent over, before it is closed by the load balancer, in seconds. By default, set to 30 for the front-end connection and 60 for the backend connection of your load balancer.If you set a new duration, the same value is applied to both the front-end and backend connections. |
Schema
{
"IdleTimeout": 0
}
CreateAppCookieStickinessPolicyResponse
Property | Type | Description |
---|---|---|
ResponseMetadata | ResponseMetadata | Information about the response. |
Schema
{
"ResponseMetadata": {
"RequestId": "string"
}
}
CreateLBCookieStickinessPolicyResponse
Property | Type | Description |
---|---|---|
ResponseMetadata | ResponseMetadata | Information about the response. |
Schema
{
"ResponseMetadata": {
"RequestId": "string"
}
}
CreateLoadBalancerListenersResponse
Property | Type | Description |
---|---|---|
ResponseMetadata | ResponseMetadata | Information about the response. |
Schema
{
"ResponseMetadata": {
"RequestId": "string"
}
}
CreateLoadBalancerPolicyResponse
Property | Type | Description |
---|---|---|
ResponseMetadata | ResponseMetadata | Information about the response. |
Schema
{
"ResponseMetadata": {
"RequestId": "string"
}
}
CreateLoadBalancerResponse
Property | Type | Description |
---|---|---|
DNSName | string | The DNS name of the load balancer. |
ResponseMetadata | ResponseMetadata | Information about the response. |
Schema
{
"DNSName": "string",
"ResponseMetadata": {
"RequestId": "string"
}
}
DeleteLoadBalancerListenersResponse
Property | Type | Description |
---|---|---|
ResponseMetadata | ResponseMetadata | Information about the response. |
Schema
{
"ResponseMetadata": {
"RequestId": "string"
}
}
DeleteLoadBalancerPolicyResponse
Property | Type | Description |
---|---|---|
ResponseMetadata | ResponseMetadata | Information about the response. |
Schema
{
"ResponseMetadata": {
"RequestId": "string"
}
}
DeleteLoadBalancerResponse
Property | Type | Description |
---|---|---|
ResponseMetadata | ResponseMetadata | Information about the response. |
Schema
{
"ResponseMetadata": {
"RequestId": "string"
}
}
DeregisterInstancesFromLoadBalancerResponse
Property | Type | Description |
---|---|---|
Instances.member.N | Instances.member.N | Information about one or more instances. |
ResponseMetadata | ResponseMetadata | Information about the response. |
Schema
{
"Instances.member.N": {
"InstanceId": "string"
},
"ResponseMetadata": {
"RequestId": "string"
}
}
DescribeInstanceHealthResponse
Property | Type | Description |
---|---|---|
InstanceStates.member.N | InstanceStates.member.N | Information about the health of one or more backend instances. |
ResponseMetadata | ResponseMetadata | Information about the response. |
Schema
{
"InstanceStates.member.N": {
"Description": "string",
"InstanceId": "string",
"ReasonCode": "string",
"State": "string"
},
"ResponseMetadata": {
"RequestId": "string"
}
}
DescribeLoadBalancerAttributesResponse
Property | Type | Description |
---|---|---|
LoadBalancerAttributes | LoadBalancerAttributes | The attributes of the load balancer. |
ResponseMetadata | ResponseMetadata | Information about the response. |
Schema
{
"LoadBalancerAttributes": {
"AccessLog": {
"EmitInterval": 0,
"Enabled": true,
"S3BucketName": "string",
"S3BucketPrefix": "string"
},
"AdditionalAttributes.member.N": {
"Key": "string",
"Value": "string"
},
"ConnectionDraining": {
"Enabled": true,
"Timeout": 0
},
"ConnectionSettings": {
"IdleTimeout": 0
}
},
"ResponseMetadata": {
"RequestId": "string"
}
}
DescribeLoadBalancersResponse
Property | Type | Description |
---|---|---|
LoadBalancerDescriptions.member.N | LoadBalancerDescriptions.member.N | Information about one or more load balancers. |
NextMarker | string | The marker to request the next results page (empty if there is no more results to return). |
ResponseMetadata | ResponseMetadata | Information about the response. |
Schema
{
"LoadBalancerDescriptions.member.N": {
"AvailabilityZones.member.N": "string",
"BackendServerDescriptions.member.N": {
"InstancePort": 0,
"PolicyNames.member.N": "string"
},
"CreatedTime": "string",
"DNSName": "string",
"HealthCheck": {
"HealthyThreshold": 0,
"Interval": 0,
"Target": "string",
"Timeout": 0,
"UnhealthyThreshold": 0
},
"Instances.member.N": {
"InstanceId": "string"
},
"ListenerDescriptions.member.N": {
"Listener": {
"InstancePort": 0,
"InstanceProtocol": "string",
"LoadBalancerPort": 0,
"Protocol": "string",
"SSLCertificateId": "string"
},
"PolicyNames.member.N": "string"
},
"LoadBalancerName": "string",
"Policies": {
"AppCookieStickinessPolicies.member.N": {
"CookieName": "string",
"PolicyName": "string"
},
"LBCookieStickinessPolicies.member.N": {
"CookieExpirationPeriod": 0,
"PolicyName": "string"
},
"OtherPolicies.member.N": "string"
},
"Scheme": "string",
"SecurityGroups.member.N": "string",
"SourceSecurityGroup": {
"GroupName": "string",
"OwnerAlias": "string"
},
"Subnets.member.N": "string",
"VPCId": "string"
},
"NextMarker": "string",
"ResponseMetadata": {
"RequestId": "string"
}
}
DescribeTagsResponse
Property | Type | Description |
---|---|---|
ResponseMetadata | ResponseMetadata | Information about the response. |
TagDescriptions.member.N | TagDescriptions.member.N | Information about the tags associated with the specified load balancers. |
Schema
{
"ResponseMetadata": {
"RequestId": "string"
},
"TagDescriptions.member.N": {
"LoadBalancerName": "string",
"Tags.member.N": {
"Key": "string",
"Value": "string"
}
}
}
HealthCheck
Information about the health check configuration.
Property | Type | Description |
---|---|---|
HealthyThreshold | integer | The number of consecutive successful requests before considering the instance as healthy (between 2 and 10 both included). |
Interval | integer | The number of seconds between two requests (between 5 and 600 both included). |
Target | string | The URL of the checked instance following the <protocol>:<port>/<path> format, with the following elements:- Protocol: TCP , SSL , HTTP or HTTPS .- Port: Between 1 and 65535 , both included.- Path: If you use the HTTP or HTTPS protocols, the request URL path. |
Timeout | integer | The maximum waiting time for a response before considering the instance as unhealthy, in seconds (between 2 and 60 both included). |
UnhealthyThreshold | integer | The number of consecutive failed requests before considering the instance as unhealthy (between 2 and 10 both included). |
Schema
{
"HealthyThreshold": 0,
"Interval": 0,
"Target": "string",
"Timeout": 0,
"UnhealthyThreshold": 0
}
InstanceStates.member.N
Information about the health of one or more backend instances.
Property | Type | Description |
---|---|---|
Description | string | A description of the instance state. |
InstanceId | string | The ID of the instance. |
ReasonCode | string | Information about the cause of OutOfService instances.Specifically, whether the cause is Elastic Load Balancing or the instance ( ELB | Instance | N/A ). |
State | string | The current state of the instance (InService | OutOfService | Unknown ). |
Schema
{
"Description": "string",
"InstanceId": "string",
"ReasonCode": "string",
"State": "string"
}
Instances.member.N
Information about one or more instances.
Property | Type | Description |
---|---|---|
InstanceId | string | The ID of the instance. |
Schema
{
"InstanceId": "string"
}
LBCookieStickinessPolicies.member.N
The stickiness policies created using CreateLBCookieStickinessPolicy.
Property | Type | Description |
---|---|---|
CookieExpirationPeriod | integer | The time period, in seconds, after which the cookie should be considered stale. If 1 , the stickiness session lasts for the duration of the browser session. |
PolicyName | string | The name of the policy. This name must be unique within the set of policies for this load balancer. |
Schema
{
"CookieExpirationPeriod": 0,
"PolicyName": "string"
}
Listener
The listener.
Property | Type | Description |
---|---|---|
InstancePort | integer | The port on which the instance is listening (between 1 and 65535 both included). |
InstanceProtocol | string | The protocol for routing traffic to backend instances (HTTP | HTTPS | TCP | SSL ). |
LoadBalancerPort | integer | The port on which the load balancer is listening (between 1 and 65535 both included). |
Protocol | string | The routing protocol (HTTP | HTTPS | TCP | SSL ). |
SSLCertificateId | string | The OUTSCALE Resource Name (ORN) of the server certificate. For more information, see Resource Identifiers > OUTSCALE Resource Names (ORNs). |
Schema
{
"InstancePort": 0,
"InstanceProtocol": "string",
"LoadBalancerPort": 0,
"Protocol": "string",
"SSLCertificateId": "string"
}
ListenerDescriptions.member.N
The listeners for the load balancer.
Property | Type | Description |
---|---|---|
Listener | Listener | The listener. |
PolicyNames.member.N | string | The policies. If there are no policies enabled, the list is empty. |
Schema
{
"Listener": {
"InstancePort": 0,
"InstanceProtocol": "string",
"LoadBalancerPort": 0,
"Protocol": "string",
"SSLCertificateId": "string"
},
"PolicyNames.member.N": "string"
}
Listeners.member.N
One or more listeners.
Property | Type | Description |
---|---|---|
InstancePort | integer | The port on which the instance is listening (between 1 and 65535 both included). |
InstanceProtocol | string | The protocol for routing traffic to backend instances (HTTP | HTTPS | TCP | SSL ). |
LoadBalancerPort | integer | The port on which the load balancer is listening (between 1 and 65535 both included). |
Protocol | string | The routing protocol (HTTP | HTTPS | TCP | SSL ). |
SSLCertificateId | string | The OUTSCALE Resource Name (ORN) of the server certificate. For more information, see Resource Identifiers > OUTSCALE Resource Names (ORNs). |
Schema
{
"InstancePort": 0,
"InstanceProtocol": "string",
"LoadBalancerPort": 0,
"Protocol": "string",
"SSLCertificateId": "string"
}
LoadBalancerAttributes
The attributes of the load balancer.
Property | Type | Description |
---|---|---|
AccessLog | AccessLog | Information about the publication of the access logs. |
AdditionalAttributes.member.N | AdditionalAttributes.member.N | Information about additional load balancer attributes, for example secure cookies. |
ConnectionDraining | ConnectionDraining | Information about the draining of the connections to unhealthy or deregistered instances. |
ConnectionSettings | ConnectionSettings | Information about idle connections. |
Schema
{
"AccessLog": {
"EmitInterval": 0,
"Enabled": true,
"S3BucketName": "string",
"S3BucketPrefix": "string"
},
"AdditionalAttributes.member.N": {
"Key": "string",
"Value": "string"
},
"ConnectionDraining": {
"Enabled": true,
"Timeout": 0
},
"ConnectionSettings": {
"IdleTimeout": 0
}
}
LoadBalancerDescriptions.member.N
Information about one or more load balancers.
Property | Type | Description |
---|---|---|
AvailabilityZones.member.N | string | The ID of the AZ in which the load balancer was created. |
BackendServerDescriptions.member.N | BackendServerDescriptions.member.N | Information about the configuration of your instances. |
CreatedTime | string | The date and time the load balancer was created. |
DNSName | string | The DNS name of the load balancer. |
HealthCheck | HealthCheck | Information about the health check configuration. |
Instances.member.N | Instances.member.N | Information about one or more instances. |
ListenerDescriptions.member.N | ListenerDescriptions.member.N | The listeners for the load balancer. |
LoadBalancerName | string | The name of the load balancer. |
Policies | Policies | The policies defined for the load balancer. |
Scheme | string | The type of load balancer. Valid only for load balancers in a VPC. If Scheme is internet-facing, the load balancer has a public DNS name that resolves to an External IP (EIP). If Scheme is internal, the load balancer has a public DNS name that resolves to a private IP. |
SecurityGroups.member.N | string | The security groups for the load balancer. Valid only for load balancers in a VPC. |
SourceSecurityGroup | SourceSecurityGroup | The security group for the load balancer, which you can use as part of your inbound rules for your registered instances. To only allow traffic from load balancers, add a security group rule that specifies this source security group as the inbound source. |
Subnets.member.N | string | The ID of the subnet in which the load balancer was created. |
VPCId | string | The ID of the VPC for the load balancer. |
Schema
{
"AvailabilityZones.member.N": "string",
"BackendServerDescriptions.member.N": {
"InstancePort": 0,
"PolicyNames.member.N": "string"
},
"CreatedTime": "string",
"DNSName": "string",
"HealthCheck": {
"HealthyThreshold": 0,
"Interval": 0,
"Target": "string",
"Timeout": 0,
"UnhealthyThreshold": 0
},
"Instances.member.N": {
"InstanceId": "string"
},
"ListenerDescriptions.member.N": {
"Listener": {
"InstancePort": 0,
"InstanceProtocol": "string",
"LoadBalancerPort": 0,
"Protocol": "string",
"SSLCertificateId": "string"
},
"PolicyNames.member.N": "string"
},
"LoadBalancerName": "string",
"Policies": {
"AppCookieStickinessPolicies.member.N": {
"CookieName": "string",
"PolicyName": "string"
},
"LBCookieStickinessPolicies.member.N": {
"CookieExpirationPeriod": 0,
"PolicyName": "string"
},
"OtherPolicies.member.N": "string"
},
"Scheme": "string",
"SecurityGroups.member.N": "string",
"SourceSecurityGroup": {
"GroupName": "string",
"OwnerAlias": "string"
},
"Subnets.member.N": "string",
"VPCId": "string"
}
ModifyLoadBalancerAttributesResponse
Property | Type | Description |
---|---|---|
LoadBalancerAttributes | LoadBalancerAttributes | The attributes of the load balancer. |
LoadBalancerName | string | The name of the load balancer. |
ResponseMetadata | ResponseMetadata | Information about the response. |
Schema
{
"LoadBalancerAttributes": {
"AccessLog": {
"EmitInterval": 0,
"Enabled": true,
"S3BucketName": "string",
"S3BucketPrefix": "string"
},
"AdditionalAttributes.member.N": {
"Key": "string",
"Value": "string"
},
"ConnectionDraining": {
"Enabled": true,
"Timeout": 0
},
"ConnectionSettings": {
"IdleTimeout": 0
}
},
"LoadBalancerName": "string",
"ResponseMetadata": {
"RequestId": "string"
}
}
Policies
The policies defined for the load balancer.
Property | Type | Description |
---|---|---|
AppCookieStickinessPolicies.member.N | AppCookieStickinessPolicies.member.N | The stickiness policies created using CreateAppCookieStickinessPolicy. |
LBCookieStickinessPolicies.member.N | LBCookieStickinessPolicies.member.N | The stickiness policies created using CreateLBCookieStickinessPolicy. |
OtherPolicies.member.N | string | The policies other than the stickiness policies. |
Schema
{
"AppCookieStickinessPolicies.member.N": {
"CookieName": "string",
"PolicyName": "string"
},
"LBCookieStickinessPolicies.member.N": {
"CookieExpirationPeriod": 0,
"PolicyName": "string"
},
"OtherPolicies.member.N": "string"
}
RegisterInstancesWithLoadBalancerResponse
Property | Type | Description |
---|---|---|
Instances.member.N | Instances.member.N | Information about one or more instances. |
ResponseMetadata | ResponseMetadata | Information about the response. |
Schema
{
"Instances.member.N": {
"InstanceId": "string"
},
"ResponseMetadata": {
"RequestId": "string"
}
}
RemoveTagsResponse
Property | Type | Description |
---|---|---|
ResponseMetadata | ResponseMetadata | Information about the response. |
Schema
{
"ResponseMetadata": {
"RequestId": "string"
}
}
ResponseMetadata
Information about the response.
Property | Type | Description |
---|---|---|
RequestId | string | The ID of the request. |
Schema
{
"RequestId": "string"
}
SetLoadBalancerListenerSSLCertificateResponse
Property | Type | Description |
---|---|---|
ResponseMetadata | ResponseMetadata | Information about the response. |
Schema
{
"ResponseMetadata": {
"RequestId": "string"
}
}
SetLoadBalancerPoliciesForBackendServerResponse
Property | Type | Description |
---|---|---|
ResponseMetadata | ResponseMetadata | Information about the response. |
Schema
{
"ResponseMetadata": {
"RequestId": "string"
}
}
SetLoadBalancerPoliciesOfListenerResponse
Property | Type | Description |
---|---|---|
ResponseMetadata | ResponseMetadata | Information about the response. |
Schema
{
"ResponseMetadata": {
"RequestId": "string"
}
}
SourceSecurityGroup
The security group for the load balancer, which you can use as part of your inbound rules for your registered instances. To only allow traffic from load balancers, add a security group rule that specifies this source security group as the inbound source.
Property | Type | Description |
---|---|---|
GroupName | string | The name of the security group. |
OwnerAlias | string | The owner of the security group. |
Schema
{
"GroupName": "string",
"OwnerAlias": "string"
}
TagDescriptions.member.N
Information about the tags associated with the specified load balancers.
Property | Type | Description |
---|---|---|
LoadBalancerName | string | The name of the load balancer. |
Tags.member.N | Tags.member.N | One or more tags assigned to the load balancer. |
Schema
{
"LoadBalancerName": "string",
"Tags.member.N": {
"Key": "string",
"Value": "string"
}
}
Tags.member.N
One or more tags assigned to the load balancer.
Property | Type | Description |
---|---|---|
Key | string | The key of the tag, with a minimum of 1 character. |
Value | string | The value of the tag, with a minimum of 0 character. |
Schema
{
"Key": "string",
"Value": "string"
}
AWS™ and Amazon Web Services™ are trademarks of Amazon Technologies, Inc or its affiliates in the United States and/or other countries.