Create a NodeBalancer

Creates a NodeBalancer in the requested Region. Only available in regions with "NodeBalancers" in their capabilities.

NodeBalancers are available in premium and basic versions. The following table compares these options. Use this information to help determine which type best meets your application’s requirements for performance, scalability, and protocol support.

NodeBalancers comparison

FeatureBasic (common)Premium (premium)
Load balancing typeConnection terminationConnection termination
Maximum inbound network bandwidth10 Gbps10 Gbps
Maximum backend nodes per configuration1,0002,000
Concurrent connections (TCP)10,000100,000
Infrastructure and performanceShared, may experience resource contentionDedicated for consistent, predictable capacity
Backend connectivityPrivate IPv4 (legacy), VPC (vpc), Public IPv6 (ipv6)VPC (vpc), Public IPv6 (ipv6)
Frontend connectivityIPv4, IPv6IPv4, IPv6
ProtocolsTCP, HTTP, HTTPS (1.1)TCP, HTTP, HTTPS (1.1)

NodeBalancers require a port config with at least one backend node to start serving requests.

When using the Linode CLI to create a NodeBalancer, first create a NodeBalancer without any configs. Then, create configs and nodes for that NodeBalancer with the respective Create a config and Create a node operations.

After creating a NodeBalancer, account administrators can add a lock to prevent accidental NodeBalancer deletion by using the Create a resource lock operation.

Permissions and scopes

To call this operation, you need the following:

  • Identity and access permissions. Your user needs a role with these permissions assigned. Learn more.

    • Permissions: create_nodebalancer
  • OAuth scopes. Your user needs these scopes assigned. Learn more.

    • Scopes: nodebalancers:read_write

CLI

linode-cli nodebalancers create \
  --region us-east \
  --label balancer12345 \
  --backend_connectivity legacy \
  --type common \
  --ipv4 "192.0.2.141" \
  --client_conn_throttle 0

Learn more

Path Params
string
enum
required

Enum Call either the v4 URL, or v4beta for operations still in Beta.

Allowed:
Body Params
string | null
enum
Defaults to ipv6

The backend_connectivity setting determines how a NodeBalancer communicates with its backend nodes. You can't change this setting after creating the NodeBalancer, and all backend nodes must use IP addressing supported by the selected backend_connectivity type.

Available options:

  • legacy: For Basic (common) NodeBalancers connecting to non-VPC backend nodes over private IPv4 in the 192.168.255.0/24 range. Not available for Premium NodeBalancers. You can only add backend nodes with private IPv4 addresses.
  • ipv6: For Basic (common) and Premium (premium) NodeBalancers connecting to non-VPC backend nodes over public IPv6. You can only add backend nodes with public IPv6 addresses.
  • vpc: For Basic (common) and Premium (premium) NodeBalancers connecting to VPC backend nodes with public IPv6 (BETA) or IPv4. You can only add backend nodes with VPC addresses.
    Default behavior:
  • Basic NodeBalancers (common): If no parameters are specified, backend_connectivity is undefined. If only backend nodes are specified, it is inferred from the nodes. If vpcs is specified, it is set to vpc.
  • Premium NodeBalancers (premium): If no parameters are specified, backend_connectivity is ipv6. If only backend nodes are specified, it is inferred from the nodes. If vpcs is specified, it is set to vpc.
Allowed:
integer
0 to 20

Throttle TCP connections per second for TCP, HTTP, and HTTPS configurations. Set to 0 (zero) to disable throttling.

configs
array of objects

The port configs to create for this NodeBalancer. Each config needs a unique port and at least one node.

configs
integer

The ID of the Firewall to assign to the NodeBalancer.

  • A NodeBalancer can have only one Firewall assigned to it.
  • Firewalls control inbound network traffic to NodeBalancers.
string

To ensure your NodeBalancer maintains a consistent public address, you can specify an unassigned reserved IP from your account during creation. If this field is omitted, the NodeBalancer is assigned a standard ephemeral IP by default.

string
length between 3 and 32
[a-zA-Z0-9-_]{3,32}

Filterable This NodeBalancer's label. These must be unique on your Account.

string
required

The ID of the Region to create this NodeBalancer in.

tags
array of strings

An array of Tags applied to this object. Tags are for organizational purposes only.

tags
string
enum

The type of NodeBalancer.

Allowed:
vpcs
array of objects

You can have only one vpcs in a NodeBalancer configuration. If your backend nodes are in a VPC, specify the VPC subnet and CIDR range. NodeBalancer routes traffic to backend VPC nodes through this subnet. The specified VPC subnet must exist within the same data center as the NodeBalancer, and the provided IP range must be contained within the subnet's CIDR block. All IP addresses within the specified range must be free and available for assignment. Once the NodeBalancer is created, its VPC can't be changed. Also, backend_connectivity must be set to vpc.

vpcs
Responses

Language
Credentials
LoadingLoading…
Response
Choose an example:
application/json