Network Load Balancer

Network Load Balancer

A Network Load Balancer (NLB) is a Layer 4 (TCP/UDP) load balancer that distributes incoming traffic to Compute instances managed by an Instance Pool.

Read more

create-load-balancer

Create a Load Balancer

POST /load-balancer

Request body

  • application/json
    • description (string): Load Balancer description
    • name (required) (string): Load Balancer name
    • labels (object)

Responses

  • 200: 200
    • application/json
      • id (string): Operation ID
      • reason (string): Operation failure reason
      • reference (object): Related resource reference - schema details
      • message (string): Operation message
      • state (string): Operation status

SDK reference for create-load-balancer: golang | Python | Java

CLI: exo api create-load-balancer

get-load-balancer

Retrieve Load Balancer details

GET /load-balancer/{id}

Path parameters

  • id in path (required)

Responses

  • 200: 200
    • application/json
      • id (string): Load Balancer ID
      • description (string): Load Balancer description
      • name (string): Load Balancer name
      • state (string): Load Balancer state
      • created-at (string): Load Balancer creation date
      • ip (string): Load Balancer public IP
      • services (array[object]): Load Balancer Services - schema details
      • labels (object)

SDK reference for get-load-balancer: golang | Python | Java

CLI: exo api get-load-balancer

update-load-balancer

Update a Load Balancer

PUT /load-balancer/{id}

Path parameters

  • id in path (required)

Request body

  • application/json
    • name (string): Load Balancer name
    • description (string): Load Balancer description
    • labels (object)

Responses

  • 200: 200
    • application/json
      • id (string): Operation ID
      • reason (string): Operation failure reason
      • reference (object): Related resource reference - schema details
      • message (string): Operation message
      • state (string): Operation status

SDK reference for update-load-balancer: golang | Python | Java

CLI: exo api update-load-balancer

delete-load-balancer

Delete a Load Balancer

DELETE /load-balancer/{id}

Path parameters

  • id in path (required)

Responses

  • 200: 200
    • application/json
      • id (string): Operation ID
      • reason (string): Operation failure reason
      • reference (object): Related resource reference - schema details
      • message (string): Operation message
      • state (string): Operation status

SDK reference for delete-load-balancer: golang | Python | Java

CLI: exo api delete-load-balancer

get-load-balancer-service

Retrieve Load Balancer Service details

GET /load-balancer/{id}/service/{service-id}

Path parameters

  • id in path (required)
  • service-id in path (required)

Responses

  • 200: 200
    • application/json
      • description (string): Load Balancer Service description
      • protocol (string): Network traffic protocol
      • name (string): Load Balancer Service name
      • state (string): Load Balancer Service state
      • target-port (integer): Port on which the network traffic will be forwarded to on the receiving instance
      • port (integer): Port exposed on the Load Balancer’s public IP
      • instance-pool (object): Instance Pool - schema details
      • strategy (string): Load balancing strategy
      • healthcheck (object): Load Balancer Service healthcheck - schema details
      • id (string): Load Balancer Service ID
      • healthcheck-status (array[object]): Healthcheck status per backend server - schema details

SDK reference for get-load-balancer-service: golang | Python | Java

CLI: exo api get-load-balancer-service

update-load-balancer-service

Update a Load Balancer Service

PUT /load-balancer/{id}/service/{service-id}

Path parameters

  • id in path (required)
  • service-id in path (required)

Request body

  • application/json
    • name (string): Load Balancer Service name
    • description (string): Load Balancer Service description
    • protocol (string): Network traffic protocol
    • strategy (string): Load balancing strategy
    • port (integer): Port exposed on the Load Balancer’s public IP
    • target-port (integer): Port on which the network traffic will be forwarded to on the receiving instance
    • healthcheck (object): Load Balancer Service healthcheck - schema details

Responses

  • 200: 200
    • application/json
      • id (string): Operation ID
      • reason (string): Operation failure reason
      • reference (object): Related resource reference - schema details
      • message (string): Operation message
      • state (string): Operation status

SDK reference for update-load-balancer-service: golang | Python | Java

CLI: exo api update-load-balancer-service

delete-load-balancer-service

Delete a Load Balancer Service

DELETE /load-balancer/{id}/service/{service-id}

Path parameters

  • id in path (required)
  • service-id in path (required)

Responses

  • 200: 200
    • application/json
      • id (string): Operation ID
      • reason (string): Operation failure reason
      • reference (object): Related resource reference - schema details
      • message (string): Operation message
      • state (string): Operation status

SDK reference for delete-load-balancer-service: golang | Python | Java

CLI: exo api delete-load-balancer-service


Other Operations

reset-load-balancer-field

Reset a Load Balancer field to its default value

DELETE /load-balancer/{id}/{field}

Path parameters

  • id in path (required)
  • field in path (required)

Responses

  • 200: 200
    • application/json
      • id (string): Operation ID
      • reason (string): Operation failure reason
      • reference (object): Related resource reference - schema details
      • message (string): Operation message
      • state (string): Operation status

SDK reference for reset-load-balancer-field: golang | Python | Java

CLI: exo api reset-load-balancer-field

reset-load-balancer-service-field

Reset a Load Balancer Service field to its default value

DELETE /load-balancer/{id}/service/{service-id}/{field}

Path parameters

  • id in path (required)
  • service-id in path (required)
  • field in path (required)

Responses

  • 200: 200
    • application/json
      • id (string): Operation ID
      • reason (string): Operation failure reason
      • reference (object): Related resource reference - schema details
      • message (string): Operation message
      • state (string): Operation status

SDK reference for reset-load-balancer-service-field: golang | Python | Java

CLI: exo api reset-load-balancer-service-field

list-load-balancers

List Load Balancers

GET /load-balancer

Responses

  • 200: 200

SDK reference for list-load-balancers: golang | Python | Java

CLI: exo api list-load-balancers

add-service-to-load-balancer

Add a Load Balancer Service

POST /load-balancer/{id}/service

Path parameters

  • id in path (required)

Request body

  • application/json
    • name (required) (string): Load Balancer Service name
    • description (string): Load Balancer Service description
    • instance-pool (required) (object): Instance Pool - schema details
    • protocol (required) (string): Network traffic protocol
    • strategy (required) (string): Load balancing strategy
    • port (required) (integer): Port exposed on the Load Balancer’s public IP
    • target-port (required) (integer): Port on which the network traffic will be forwarded to on the receiving instance
    • healthcheck (required) (object): Load Balancer Service healthcheck - schema details

Responses

  • 200: 200
    • application/json
      • id (string): Operation ID
      • reason (string): Operation failure reason
      • reference (object): Related resource reference - schema details
      • message (string): Operation message
      • state (string): Operation status

SDK reference for add-service-to-load-balancer: golang | Python | Java

CLI: exo api add-service-to-load-balancer

Last updated on