XlbConfig
Title: XlbConfig
|
|
| Type |
object |
| Required |
No |
| Additional properties |
Any type allowed |
Description: The user facing application config
| Property |
Pattern |
Type |
Deprecated |
Definition |
Title/Description |
| - admin |
No |
object |
No |
In |
Local health, readiness, and administrative status API. |
| - listen |
No |
object |
No |
In |
The IP address to "listen" on which is the expected dest IP value for inbound packets of interest. Default to auto which will pick the primary address of the interface associated with the default route. |
| - mode |
No |
object |
No |
In |
Routing mode of either nat or dsr, presently only nat is supported |
| - name |
No |
string or null |
No |
- |
Optional service name attached to OTEL metrics. Defaults to "xlb" when omitted. |
| - orphan_ttl_secs |
No |
integer |
No |
- |
The duration by which an inactive flow, which has not seen any closure, is considered orphaned. Values below five minutes are raised to five minutes at startup. |
| - otel |
No |
Combination |
No |
- |
Optional OpenTelemetry metrics configuration |
| + ports |
No |
array |
No |
- |
The port mappings of inbound to backend dest ports. E.g. [80 -> 8080], [443 -> 443] |
| - proto |
No |
enum (of string) |
No |
In |
The target protocol to proxy to the backends e.g. tcp or udp |
| + provider |
No |
object |
No |
In |
The source of backend hosts to load balance to |
| - resources |
No |
object |
No |
In |
Optional resource-capacity overrides for virtualized environments. |
| - shutdown_timeout |
No |
integer |
No |
- |
Reactive grace period after a shutdown signal. Matching TCP packets that arrive during this window receive a reset before XLB exits. |
1. Property XlbConfig > admin
|
|
| Type |
object |
| Required |
No |
| Additional properties |
Any type allowed |
| Defined in |
|
Description: Local health, readiness, and administrative status API.
| Property |
Pattern |
Type |
Deprecated |
Definition |
Title/Description |
| - address |
No |
string |
No |
- |
Address on which the admin API listens. |
| - auth |
No |
Combination |
No |
- |
Protect the administrative UI and status API with HTTP Basic auth. The password is read from `XLB_ADMIN_PASSWORD` at startup. |
| - port |
No |
integer |
No |
- |
TCP port on which the admin API listens. |
1.1. Property XlbConfig > admin > address
|
|
| Type |
string |
| Required |
No |
| Format |
ip |
| Default |
"127.0.0.1" |
Description: Address on which the admin API listens.
1.2. Property XlbConfig > admin > auth
|
|
| Type |
combining |
| Required |
No |
| Additional properties |
Any type allowed |
Description: Protect the administrative UI and status API with HTTP Basic auth. The password is read from XLB_ADMIN_PASSWORD at startup.
1.2.1. Property XlbConfig > admin > auth > anyOf > AdminAuthConfig
|
|
| Type |
object |
| Required |
No |
| Additional properties |
Any type allowed |
| Defined in |
#/definitions/AdminAuthConfig |
Description: Optional HTTP Basic authentication for administrative routes.
| Property |
Pattern |
Type |
Deprecated |
Definition |
Title/Description |
| - username |
No |
string |
No |
- |
Username accepted by the administrative UI and status API. |
1.2.1.1. Property XlbConfig > admin > auth > anyOf > item 0 > username
|
|
| Type |
string |
| Required |
No |
| Default |
"admin" |
Description: Username accepted by the administrative UI and status API.
1.2.2. Property XlbConfig > admin > auth > anyOf > item 1
1.3. Property XlbConfig > admin > port
|
|
| Type |
integer |
| Required |
No |
| Format |
uint16 |
| Default |
9090 |
Description: TCP port on which the admin API listens.
2. Property XlbConfig > listen
|
|
| Type |
combining |
| Required |
No |
| Additional properties |
Any type allowed |
| Default |
"auto" |
| Defined in |
|
Description: The IP address to "listen" on which is the expected dest IP value for inbound packets of interest. Default to auto which will pick the primary address of the interface associated with the default route.
2.1. Property XlbConfig > listen > oneOf > item 0
|
|
| Type |
enum (of string) |
| Required |
No |
Description: Will attach to the interface and primary ip of associated with the default network route
Must be one of:
* "auto"
2.2. Property XlbConfig > listen > oneOf > item 1
|
|
| Type |
object |
| Required |
No |
| Additional properties |
Not allowed |
Description: Specify an ipv4 listen addr, also used to determine the target interface
| Property |
Pattern |
Type |
Deprecated |
Definition |
Title/Description |
| + ip |
No |
string |
No |
- |
- |
2.2.1. Property XlbConfig > listen > oneOf > item 1 > ip
3. Property XlbConfig > mode
|
|
| Type |
combining |
| Required |
No |
| Additional properties |
Any type allowed |
| Default |
"nat" |
| Defined in |
|
Description: Routing mode of either nat or dsr, presently only nat is supported
3.1. Property XlbConfig > mode > oneOf > item 0
|
|
| Type |
enum (of string) |
| Required |
No |
Description: Packets pass through lb bi-directionally, and is compatible with all deployment environments
Must be one of:
* "nat"
3.2. Property XlbConfig > mode > oneOf > item 1
|
|
| Type |
enum (of string) |
| Required |
No |
Description: Packets are distributed to backends but the client source is maintained, so the backend can skip the lb and respond directly back to the client. This requires vip configuration and arp to be disabled for the vip on the backends
Must be one of:
* "dsr"
4. Property XlbConfig > name
|
|
| Type |
string or null |
| Required |
No |
Description: Optional service name attached to OTEL metrics. Defaults to "xlb" when omitted.
5. Property XlbConfig > orphan_ttl_secs
|
|
| Type |
integer |
| Required |
No |
| Format |
uint32 |
| Default |
300 |
Description: The duration by which an inactive flow, which has not seen any closure, is considered orphaned. Values below five minutes are raised to five minutes at startup.
6. Property XlbConfig > otel
|
|
| Type |
combining |
| Required |
No |
| Additional properties |
Any type allowed |
Description: Optional OpenTelemetry metrics configuration
6.1. Property XlbConfig > otel > anyOf > OtelConfig
|
|
| Type |
object |
| Required |
No |
| Additional properties |
Any type allowed |
| Defined in |
#/definitions/OtelConfig |
Description: OpenTelemetry configuration for metrics export
| Property |
Pattern |
Type |
Deprecated |
Definition |
Title/Description |
| - enabled |
No |
boolean |
No |
- |
Enable/disable OTEL metrics export |
| + endpoint |
No |
string |
No |
- |
OTLP endpoint (e.g., "http://otel-collector:4317" for gRPC) |
| - export_interval_secs |
No |
integer |
No |
- |
Export interval in seconds |
| - headers |
No |
object |
No |
- |
Optional headers for authentication (e.g., API keys) |
| - protocol |
No |
enum (of string) |
No |
In |
Protocol: grpc or http/protobuf |
6.1.1. Property XlbConfig > otel > anyOf > item 0 > enabled
|
|
| Type |
boolean |
| Required |
No |
| Default |
false |
Description: Enable/disable OTEL metrics export
6.1.2. Property XlbConfig > otel > anyOf > item 0 > endpoint
Description: OTLP endpoint (e.g., "http://otel-collector:4317" for gRPC)
6.1.3. Property XlbConfig > otel > anyOf > item 0 > export_interval_secs
|
|
| Type |
integer |
| Required |
No |
| Format |
uint64 |
| Default |
10 |
Description: Export interval in seconds
Description: Optional headers for authentication (e.g., API keys)
| Property |
Pattern |
Type |
Deprecated |
Definition |
Title/Description |
| - |
No |
string |
No |
- |
- |
6.1.5. Property XlbConfig > otel > anyOf > item 0 > protocol
|
|
| Type |
enum (of string) |
| Required |
No |
| Defined in |
|
Description: Protocol: grpc or http/protobuf
Must be one of:
* "grpc"
* "http"
6.2. Property XlbConfig > otel > anyOf > item 1
7. Property XlbConfig > ports
Description: The port mappings of inbound to backend dest ports. E.g. [80 -> 8080], [443 -> 443]
|
Array restrictions |
| Min items |
N/A |
| Max items |
N/A |
| Items unicity |
False |
| Additional items |
False |
| Tuple validation |
See below |
| Each item of this array must be |
Description |
| PortMapping |
Generic port mapping struct representing a port on the local machine and a port on some remote host |
7.1. XlbConfig > ports > PortMapping
|
|
| Type |
object |
| Required |
No |
| Additional properties |
Any type allowed |
| Defined in |
#/definitions/PortMapping |
Description: Generic port mapping struct representing a port on the local machine and a port on some remote host
| Property |
Pattern |
Type |
Deprecated |
Definition |
Title/Description |
| + local_port |
No |
integer |
No |
- |
Port on this local machine e.g. could be the lb listen port, the source port we have assigned |
| + remote_port |
No |
integer |
No |
- |
Port on a remote host e.g. backend node service port, or a src port from a client connection |
7.1.1. Property XlbConfig > ports > ports items > local_port
|
|
| Type |
integer |
| Required |
Yes |
| Format |
uint16 |
Description: Port on this local machine e.g. could be the lb listen port, the source port we have assigned
7.1.2. Property XlbConfig > ports > ports items > remote_port
|
|
| Type |
integer |
| Required |
Yes |
| Format |
uint16 |
Description: Port on a remote host e.g. backend node service port, or a src port from a client connection
8. Property XlbConfig > proto
|
|
| Type |
enum (of string) |
| Required |
No |
| Default |
"tcp" |
| Defined in |
|
Description: The target protocol to proxy to the backends e.g. tcp or udp
Must be one of:
* "tcp"
* "udp"
9. Property XlbConfig > provider
|
|
| Type |
combining |
| Required |
Yes |
| Additional properties |
Any type allowed |
| Defined in |
|
Description: The source of backend hosts to load balance to
9.1. Property XlbConfig > provider > oneOf > item 0
|
|
| Type |
object |
| Required |
No |
| Additional properties |
Not allowed |
| Property |
Pattern |
Type |
Deprecated |
Definition |
Title/Description |
| + static |
No |
object |
No |
- |
- |
9.1.1. Property XlbConfig > provider > oneOf > item 0 > static
|
|
| Type |
object |
| Required |
Yes |
| Additional properties |
Any type allowed |
| Property |
Pattern |
Type |
Deprecated |
Definition |
Title/Description |
| + backends |
No |
array |
No |
- |
- |
9.1.1.1. Property XlbConfig > provider > oneOf > item 0 > static > backends
|
Array restrictions |
| Min items |
N/A |
| Max items |
N/A |
| Items unicity |
False |
| Additional items |
False |
| Tuple validation |
See below |
| Each item of this array must be |
Description |
| Host |
- |
9.1.1.1.1. XlbConfig > provider > oneOf > item 0 > static > backends > Host
|
|
| Type |
object |
| Required |
No |
| Additional properties |
Any type allowed |
| Defined in |
#/definitions/Host |
| Property |
Pattern |
Type |
Deprecated |
Definition |
Title/Description |
| + ip |
No |
string |
No |
- |
- |
| + name |
No |
string |
No |
- |
- |
9.1.1.1.1.1. Property XlbConfig > provider > oneOf > item 0 > static > backends > backends items > ip
|
|
| Type |
string |
| Required |
Yes |
| Format |
ip |
9.1.1.1.1.2. Property XlbConfig > provider > oneOf > item 0 > static > backends > backends items > name
9.2. Property XlbConfig > provider > oneOf > item 1
|
|
| Type |
object |
| Required |
No |
| Additional properties |
Not allowed |
| Property |
Pattern |
Type |
Deprecated |
Definition |
Title/Description |
| + kubernetes |
No |
object |
No |
- |
- |
9.2.1. Property XlbConfig > provider > oneOf > item 1 > kubernetes
|
|
| Type |
object |
| Required |
Yes |
| Additional properties |
Any type allowed |
| Property |
Pattern |
Type |
Deprecated |
Definition |
Title/Description |
| + namespace |
No |
string |
No |
- |
- |
| + service |
No |
string |
No |
- |
- |
9.2.1.1. Property XlbConfig > provider > oneOf > item 1 > kubernetes > namespace
9.2.1.2. Property XlbConfig > provider > oneOf > item 1 > kubernetes > service
10. Property XlbConfig > resources
|
|
| Type |
object |
| Required |
No |
| Additional properties |
Any type allowed |
| Defined in |
|
Description: Optional resource-capacity overrides for virtualized environments.
| Property |
Pattern |
Type |
Deprecated |
Definition |
Title/Description |
| - network_capacity_mbps |
No |
integer or null |
No |
- |
Per-interface network capacity in megabits per second.
Physical NIC drivers usually report this through sysfs. Cloud and virtual NICs commonly report an unknown speed, in which case this value supplies the denominator for network utilization. |
10.1. Property XlbConfig > resources > network_capacity_mbps
|
|
| Type |
integer or null |
| Required |
No |
| Format |
uint64 |
| Default |
null |
Description: Per-interface network capacity in megabits per second.
Physical NIC drivers usually report this through sysfs. Cloud and virtual NICs commonly report an unknown speed, in which case this value supplies the denominator for network utilization.
11. Property XlbConfig > shutdown_timeout
|
|
| Type |
integer |
| Required |
No |
| Format |
uint32 |
| Default |
15 |
Description: Reactive grace period after a shutdown signal. Matching TCP packets that arrive during this window receive a reset before XLB exits.