GlobalRoutingConfig

The GlobalRoutingConfig resource defines the global base BGP configuration for the cluster.

spec

Field

Type

Required

Description

templateRef

object

Yes

Reference to the RoutingTemplate used to render the configuration.

bgp

object

Yes

BGP configuration settings.

vxlanRef

string

Optional

Soft reference to a VXLAN CR by name. Use this for VXLAN/EVPN overlay scenarios. Must match the pattern ^$|^[a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*$.

neighborSecrets

array

Optional

List of BGP neighbor authentication secrets. Defaults to [].

virtualIpSubnet

string

Optional

Specifies IPv4 or IPv6 subnet from which OcNOS assigns an IP address to each TMM instance to establish BGP-VPN sessions. Minimum length is 2 and maximum length is 39.

virtualIpPrefixlen

integer

Optional

Specifies the prefix length for the virtual ip subnet. Minimum length is 1 and maximum length is 128.

spec.templateRef

Field

Type

Required

Description

name

string

Yes

The metadata.name of the RoutingTemplate CR. Minimum length is 1.

spec.bgp

Field

Type

Required

Constraints

Description

startASN

integer (int64)

Yes

Minimum length is 1 and maximum length is 4294967295

The first Autonomous System Number (ASN) in the range.

endASN

integer (int64)

Optional (nullable)

Minimum length is 1, Maximum length is 4294967295

The last ASN in the range. If set, the controller assigns one ASN per TMM slot. Must be greater than or equal to startASN.

routerIdSubnet

string

Conditional

Minimum length is 1. Must be a valid IPv4 or IPv6 address.

The subnet used for router ID assignment. At least one of routerIdSource or routerIdSubnet + routerIdPrefix must be specified.

routerIdPrefix

integer

Conditional

Valid range for IPv4 is 1 to 32 and IPv6 is 1 to 128.

The prefix length for the router ID subnet. Required when routerIdSubnet is set.

routerIdSource

string

Conditional

—

Alternative source for router ID. At least one of routerIdSource or routerIdSubnet + routerIdPrefix must be specified.

neighbors

array

Optional

—

List of BGP neighbor definitions.

peerGroups

array

Optional

Defaults to [].

BGP peer-group configuration for Top-of-Rack style per-node peering. Replaces the external ConfigMap-based nodeLookup mapping.

Validation rules:

  • endASN must be >= startASN (when set).

  • routerIdPrefix must be 1–32 for IPv4 routerIdSubnet and 1–128 for IPv6 routerIdSubnet.

  • At least one of routerIdSource or routerIdSubnet + routerIdPrefix must be specified.

spec.bgp.neighbors[]

Each neighbor must specify either ip or interface, but not both.

Field

Type

Required

Constraints

Description

ip

string

Conditional

Must be a valid IPv4 or IPv6 address.

The IP address of the BGP neighbor. Use for traditional IP-based BGP peering.

interface

string

Conditional

Minimum length is 1.

The interface name of the BGP neighbor. Use for BGP Unnumbered peering.

remoteAs

integer (int64)

Conditional

Minimum length is 1, Maximum length is 4294967295

The remote ASN of the BGP neighbor. Optional when using interface (unnumbered BGP); required when using ip (numbered BGP).

families

array of strings

Optional

—

The address families to enable for this neighbor.

Note

ip and interface are not mutually exclusive. You can define either one or both for a single neighbor.

spec.bgp.peerGroups[]

Field

Type

Required

Constraints

Description

name

string

Yes

Minimum length is 1

Logical name of the BGP peer-group (for example, “spk-peers”).

asn

integer (int64)

Yes

Minimum length is 1, Maximum length is 4294967295

Remote ASN for this peer-group.

ebgpMultihop

integer (int64)

Optional (nullable)

Minimum length is 1, Maximum length is 255

Enables connectivity between external peers that do not have a direct connection.

acceptsIPv4

boolean

Optional (nullable)

—

Enables advertising IPv4 virtual server addresses to the peer. Defaults to false if not set.

acceptsIPv6

boolean

Optional (nullable)

—

Enables advertising IPv6 virtual server addresses to the peer.

softReconf

boolean

Optional (nullable)

—

Enables BGP4 policies to be activated without clearing the BGP session.

nodePeers

array

Yes

Min items: 1

Per-node BGP peer mapping. The controller binds peers from nodePeers only on nodes where TMM pods are scheduled, replacing the old nodeLookup ConfigMap.

spec.bgp.peerGroups[].nodePeers[]

Field

Type

Required

Constraints

Description

nodeName

string

Yes

Minimum length is 1

Kubernetes node name (for example, “worker1-robin.f5.com”).

addresses

array of strings

Yes

Min items: 1. Each must be a valid IPv4 or IPv6 address.

List of BGP peer IP addresses on this node.

spec.neighborSecrets[]

Field

Type

Required

Description

address

string

Yes

The address of the BGP neighbor to authenticate.

secretRef

object

Yes

Reference to the Kubernetes Secret containing the authentication password.

spec.neighborSecrets[].secretRef

Field

Type

Required

Constraints

Description

name

string

Yes

Minimum length is 1

The metadata.name of the Kubernetes Secret.

key

string

Yes

Minimum length is 1

The key within the Secret that contains the password.