Optionalalgorithm?: "roundrobin" | "leastconn" | "ring_hash"The algorithm this UDP NodeBalancer uses to route traffic to backends.
Optionalcheck?: "none" | "connection" | "http" | "http_body"The type of check to perform against backends to ensure they're serving requests. This determines if backends are up or down.
none, no check is performed.connection requires only a connection to the backend to succeed.http and http_body rely on the backend serving HTTP, and that the response returned matches what is expected.Optionalcheck_attempts?: numberHow many times to attempt a check before considering a backend to be down.
Optionalcheck_body?: stringThis value must be present in the check's response body for it to pass. Otherwise the backend is considered to be down.
Optionalcheck_interval?: numberNumber of seconds between checks to verify that backends are up and serving requests.
Must be greater than check_timeout.
Optional Readonlycheck_passive?: booleanRead-only Must be false for UDP.
Optionalcheck_path?: stringThe URL path to check on each backend. If the backend does not respond to this request, it's considered to be down.
Optionalcheck_timeout?: numberNumber of seconds to wait for a check attempt before considering it failed.
Must be less than check_interval.
Optional Readonlycipher_suite?: stringRead-only Not applicable for UDP configs.
Optional Readonlyid?: numberRead-only This config's unique ID.
Optional Readonlynodebalancer_id?: numberRead-only The ID for the NodeBalancer this config belongs to.
Optional Readonlynodes_status?: { down?: number; up?: number }Read-only Describes the health of the backends for this port. This data updates periodically as checks are performed against backends.
Optional Readonlydown?: numberRead-only The number of backends considered to be DOWN and unhealthy. These aren't in rotation, and aren't serving requests.
Optional Readonlyup?: numberRead-only The number of backends considered to be UP and healthy, currently serving requests.
Optionalport?: numberThis is the port the NodeBalancer listens on for this configuration. Port numbers must be unique across TCP, HTTP, and HTTPS configurations on a single NodeBalancer. However, ports assigned to TCP, HTTP, or HTTPS configurations can also be reused for UDP configurations. For example, Port 80 can simultaneously serve a TCP and a UDP configuration on the same NodeBalancer, but it can't be shared by both a TCP and an HTTP configuration. Although certain ports are traditionally assigned specific protocols, this isn't strictly enforced, and you may configure your NodeBalancer however you find useful.
Optionalprotocol?: "udp"The protocol the port is configured to serve, udp in this case.
Review our guide on Available Protocols for information on protocol features.
Optional Readonlyproxy_protocol?: stringRead-only Must be none for UDP.
Optional Readonlyssl_cert?: string | nullRead-only Not applicable for UDP configs.
Optional Readonlyssl_commonname?: stringRead-only Not applicable for UPD configs.
Optional Readonlyssl_fingerprint?: stringRead-only Not applicable for UDP configs.
Optional Readonlyssl_key?: string | nullRead-only Not applicable for UDP configs.
Optionalstickiness?: "none" | "session" | "source_ip"Controls how session stickiness is handled on this port:
none, connections are assigned a back-end server based on the algorithm configured.session, all packets with the same session identifiers are routed to the same backend server. Two packets are considered part of the same session if they share the same source and destination IP addresses or ports, and are received within a short time window.source_ip, the NodeBalancer uses the client's source IP address to route all packets from the same client to the same backend server.Optionaludp_check_port?: numberUDP NodeBalancers use TCP and HTTP active health checks to ensure back-end nodes can receive traffic. You can specify the health check port that the backend node listens on, which may differ from the UDP port used to serve traffic.
Optional Readonlyudp_session_timeout?: numberRead-only The maximum number of seconds a UDP session can be idle before it's closed.
Optionalalgorithm?: "roundrobin" | "leastconn" | "source"The algorithm this TCP NodeBalancer uses to route traffic to backends.
Optionalcheck?: "none" | "connection" | "http" | "http_body"The type of check to perform against backends to ensure they are serving requests. The check is used to determine if backends are up or down.
none skips the check.connection requires only a connection to the backend to succeed.http and http_body rely on the backend serving HTTP, and that the response returned matches what is expected.Optionalcheck_attempts?: numberHow many times to attempt a check before considering a backend to be down.
Optionalcheck_body?: stringThis value must be present in the response body of the check in order for it to pass. If this value is not present in the response body of a check request, the backend is considered to be down.
Optionalcheck_interval?: numberNumber of seconds between checks to verify that backends are up and serving requests.
Must be greater than check_timeout.
Optionalcheck_passive?: booleanIf true, any response from this backend with a 5xx status code will be enough for it to be considered unhealthy and taken out of rotation.
Optionalcheck_path?: stringThe URL path to check on each backend. If the backend does not respond to this request it is considered to be down.
Optionalcheck_timeout?: numberNumber of seconds to wait for a check attempt before considering it failed.
Must be less than check_interval.
Optional Readonlycipher_suite?: stringRead-only Not applicable for TCP configs.
Optional Readonlyid?: numberRead-only This config's unique ID.
Optional Readonlynodebalancer_id?: numberRead-only The ID for the NodeBalancer this config belongs to.
Optional Readonlynodes_status?: { down?: number; up?: number }Read-only Describes the health of the backends for this port. This data updates periodically as checks are performed against backends.
Optional Readonlydown?: numberRead-only The number of backends considered to be DOWN and unhealthy. These aren't in rotation, and aren't serving requests.
Optional Readonlyup?: numberRead-only The number of backends considered to be UP and healthy, currently serving requests.
Optionalport?: numberThis is the port the NodeBalancer listens on for this configuration. Port numbers must be unique across TCP, HTTP, and HTTPS configurations on a single NodeBalancer. However, ports assigned to TCP, HTTP, or HTTPS configurations can also be reused for UDP configurations. For example, Port 80 can simultaneously serve a TCP and a UDP configuration on the same NodeBalancer, but it can't be shared by both a TCP and an HTTP configuration. Although certain ports are traditionally assigned specific protocols, this isn't strictly enforced, and you may configure your NodeBalancer however you find useful.
Optionalprotocol?: "tcp"The protocol the port is configured to serve, tcp in this case.
Review our guide on Available protocols for information on protocol features.
Optionalproxy_protocol?: "none" | "v1" | "v2"Proxy protocol is a TCP extension that sends initial TCP connection information such as source or destination IPs and ports to backend devices. Proxy protocol preserves initial TCP information that would be lost otherwise. Backend devices must be configured to work with proxy_protocol if enabled.
none, the NodeBalancer doesn't send any auxiliary data over TCP connections. This is the default.v1, the human-readable header format (Version 1) is used. Requires tcp protocol.v2, the binary header format (Version 2) is used. Requires tcp protocol.Optional Readonlyssl_cert?: string | nullRead-only Not applicable for TCP configs.
Optional Readonlyssl_commonname?: stringRead-only Not applicable for TCP configs.
Optional Readonlyssl_fingerprint?: stringRead-only Not applicable for TCP configs.
Optional Readonlyssl_key?: string | nullRead-only Not applicable for HTTP configs.
Optionalstickiness?: "none" | "table"Read-only Controls how session stickiness is handled on this port:
none, connections will always be assigned a backend based on the algorithm configured.table, sessions from the same remote address will be routed to the same backend.Optionalalgorithm?: "roundrobin" | "leastconn" | "source"The algorithm this HTTP NodeBalancer uses for routing traffic to backends.
Optionalcheck?: "none" | "connection" | "http" | "http_body"The type of check to perform against backends to ensure they're serving requests. This determines if backends are up or down.
none, no check is performed.connection requires only a connection to the backend to succeed.http and http_body rely on the backend serving HTTP, and that the response returned matches what is expected.Optionalcheck_attempts?: numberHow many times to attempt a check before considering a backend to be down.
Optionalcheck_body?: stringUse when the active health check type is http_body. This value must be present in the response body of the check in order for it to pass. If this value is not present in the response body of a check request, the backend is considered to be down.
Optionalcheck_interval?: numberNumber of seconds between checks to verify that backends are up and serving requests.
Must be greater than check_timeout.
Optionalcheck_passive?: booleanIf true, any response from this backend with a 5xx status code will be enough for it to be considered unhealthy and taken out of rotation.
Optionalcheck_path?: stringThe URL path to check on each backend. Use when the active health check type is http. If the backend doesn't respond to this request, it's considered to be down.
Optionalcheck_timeout?: numberNumber of seconds to wait for a check attempt before considering it failed.
Must be less than check_interval.
Optional Readonlycipher_suite?: stringRead-only Not applicable for HTTP configs.
Optional Readonlyid?: numberRead-only This config's unique ID.
Optional Readonlynodebalancer_id?: numberRead-only Identifies the NodeBalancer this config belongs to.
Optional Readonlynodes_status?: { down?: number; up?: number }Read-only Describes the health of the backends for this port. This data updates periodically as checks are performed against backends.
Optional Readonlydown?: numberRead-only The number of backends considered to be DOWN and unhealthy. These aren't in rotation, and aren't serving requests.
Optional Readonlyup?: numberRead-only The number of backends considered to be UP and healthy, currently serving requests.
Optionalport?: numberThis is the port the NodeBalancer listens on for this configuration. Port numbers need to be unique across TCP, HTTP, and HTTPS configurations on a single NodeBalancer. However, ports assigned to TCP, HTTP, or HTTPS configurations can also be reused for UDP configurations. For example, Port 80 can simultaneously serve a TCP and a UDP configuration on the same NodeBalancer, but it can't be shared by both a TCP and an HTTP configuration. Although certain ports are traditionally assigned specific protocols, this isn't strictly enforced. You may configure your NodeBalancer however you find useful.
Optionalprotocol?: "http"The protocol the port is configured to serve, http in this case.
Review our guide on Available protocols for information on protocol features.
Optional Readonlyproxy_protocol?: stringRead-only Not applicable for HTTP configs.
Optional Readonlyssl_cert?: string | nullRead-only Not applicable for HTTP configs.
Optional Readonlyssl_commonname?: stringRead-only Not applicable for HTTP configs.
Optional Readonlyssl_fingerprint?: stringRead-only Not applicable for HTTP configs.
Optional Readonlyssl_key?: string | nullRead-only Not applicable for HTTP configs.
Optionalstickiness?: "none" | "table" | "http_cookie"Controls how session stickiness is handled on this port:
none, connections will always be assigned a backend based on the algorithm configured.table, sessions from the same remote address will be routed to the same backend.http_cookie, sessions are routed to the same backend based on a cookie set by the NodeBalancer.Optionalalgorithm?: "roundrobin" | "leastconn" | "source"The algorithm this HTTPS NodeBalancer uses for routing traffic to backends.
Optionalcheck?: "none" | "connection" | "http" | "http_body"The type of check to perform against backends to ensure they are serving requests. The check is used to determine if backends are up or down.
none skips the check.connection requires only a connection to the backend to succeed.http and http_body rely on the backend serving HTTP, and that the response returned matches what is expected.Optionalcheck_attempts?: numberHow many times to attempt a check before considering a backend to be down.
Optionalcheck_body?: stringUse when the active health check type is http_body. This value must be present in the response body of the check in order for it to pass. If this value is not present in the response body of a check request, the backend is considered to be down.
Optionalcheck_interval?: numberNumber of seconds between checks to verify that backends are up and serving requests.
Must be greater than check_timeout.
Optionalcheck_passive?: booleanIf true, any response from this backend with a 5xx status code will be enough for it to be considered unhealthy and taken out of rotation.
Optionalcheck_path?: stringThe URL path to check on each backend. Use when the active health check type is http. If the backend doesn't respond to this request, it's considered to be down.
Optionalcheck_timeout?: numberNumber of seconds to wait for a check attempt before considering it failed.
Must be less than check_interval.
Optionalcipher_suite?: "recommended" | "legacy"What ciphers to use for SSL connections served by this NodeBalancer.
legacy is considered insecure and should only be used if necessary.Optional Readonlyid?: numberRead-only This config's unique ID.
Optional Readonlynodebalancer_id?: numberRead-only The ID for the NodeBalancer this config belongs to.
Optional Readonlynodes_status?: { down?: number; up?: number }Read-only Describes the health of the backends for this port. This data updates periodically as checks are performed against backends.
Optional Readonlydown?: numberRead-only The number of backends considered to be DOWN and unhealthy. These aren't in rotation, and aren't serving requests.
Optional Readonlyup?: numberRead-only The number of backends considered to be UP and healthy, currently serving requests.
Optionalport?: numberThis is the port the NodeBalancer listens on for this configuration. Port numbers must be unique across TCP, HTTP, and HTTPS configurations on a single NodeBalancer. However, ports assigned to TCP, HTTP, or HTTPS configurations can also be reused for UDP configurations. For example, Port 80 can simultaneously serve a TCP and a UDP configuration on the same NodeBalancer, but it can't be shared by both a TCP and an HTTP configuration. Although certain ports are traditionally assigned specific protocols, this isn't strictly enforced, and you may configure your NodeBalancer however you find useful.
Optionalprotocol?: "https"The protocol the port is configured to serve, https in this case.
https protocol is mutually required with ssl_cert and ssl_key.Review our guide on Available protocols for information on protocol features.
Optional Readonlyproxy_protocol?: stringRead-only Not applicable for HTTPS configs.
Optionalssl_cert?: string | nullThe PEM-formatted public SSL certificate (or the combined PEM-formatted SSL certificate and Certificate Authority chain) that should be served on this NodeBalancerConfig's port.
Line breaks must be represented as \n in the string for requests (but not when using the Linode CLI).
Diffie-Hellman Parameters can be included in this value to enable forward secrecy.
The contents of this field will not be shown in any responses that display the NodeBalancerConfig. Instead, <REDACTED> will be printed where the field appears.
The read-only ssl_commonname and ssl_fingerprint fields in a NodeBalancerConfig response are automatically derived from your certificate. Please refer to these fields to verify that the appropriate certificate was assigned to your NodeBalancerConfig.
Optional Readonlyssl_commonname?: stringRead-only The read-only common name automatically derived from the SSL certificate assigned to this NodeBalancerConfig. Please refer to this field to verify that the appropriate certificate is assigned to your NodeBalancerConfig.
Optional Readonlyssl_fingerprint?: stringRead-only The read-only SHA1-encoded fingerprint automatically derived from the SSL certificate assigned to this NodeBalancer configuration. Please refer to the ssl_fingerprint field to verify that the appropriate certificate is assigned to your NodeBalancer configuration.
Optionalssl_key?: string | nullThe PEM-formatted private key for the SSL certificate set in the ssl_cert field.
Line breaks must be represented as \n in the string for requests (but not when using the Linode CLI).
The contents of this field will not be shown in any responses that display the NodeBalancerConfig. Instead, <REDACTED> will be printed where the field appears.
The read-only ssl_commonname and ssl_fingerprint fields in a NodeBalancerConfig response are automatically derived from your certificate. Please refer to these fields to verify that the appropriate certificate was assigned to your NodeBalancerConfig.
Optionalstickiness?: "none" | "table" | "http_cookie"Controls how session stickiness is handled on this port:
none, connections will always be assigned a backend based on the algorithm configured.table, sessions from the same remote address will be routed to the same backend.http_cookie allows sessions to be routed to the same backend based on a cookie set by the NodeBalancer.The ID of the Config to access.
The ID of the NodeBalancer.
Optionalquery
NodeBalancer
configoptions for each protocol.