System requirements¶
Introduction¶
Before installing BIG-IP Next for Kubernetes (Host), make sure your environment meets the requirements in this section.
Important
BNK (Host) requires Red Hat OpenShift Container Platform with SR-IOV support.
The CPUs and SR-IOV virtual functions (VFs) allocated to TMM must share the same NUMA node.
Note
F5 does not validate the accuracy or safety of any third-party links listed below.
Supported host-node CPU architecture¶
The architecture of host-node CPUs must be x86-64 (sometimes referred to as AMD64). Both Intel and AMD host-node CPUs with this architecture are supported.
Minimum number of worker nodes¶
Your cluster must have at least three worker nodes so there are enough F5 Distributed Session State Management (dSSM) database replicas.
Supported NICs for SR-IOV (x86-64)¶
For x86-64 hosts, when SR-IOV is used as the Multus delegated CNI, the following NICs are supported. When SR-IOV is not used, most NICs are supported, but for optimal performance SR-IOV is recommended.
Note
When using OpenShift, you must ensure that your version of OpenShift supports SR-IOV for a given NIC.
NIC |
PF PCI ID |
Linux driver |
Min. kernel version |
Min. NIC firmware version |
|---|---|---|---|---|
Intel XXV710 |
8086:154c |
i40e |
5.14.0‑284.52.1.el9_2 |
9.1 |
Intel E810 |
8086:1889 |
ice |
5.14.0-570.131.1.el9_6 |
4.4 |
Mellanox ConnectX‑5 |
15b3:1018 |
mlx5_core |
4.18.0‑372.58.1.el8_6 |
16.32.3004 |
Mellanox ConnectX‑6 Dx |
15b3:101f |
mlx5_core |
5.14.0‑284.52.1.el9_2 |
22.41.1000 |
Mellanox ConnectX‑7 |
15b3:1021 |
mlx5_core |
5.14.0‑427.97.1.el9_4 |
28.47.1026 |
Mellanox ConnectX-8 |
15b3:1023 |
mlx5_core |
5.14.0‑427.97.1.el9_4 |
40.47.1088 |
Broadcom BCM57414 |
14e4:16d7 |
bnxt_en |
5.14.0‑427.97.1.el9_4 |
227.0.135.0/pkg 227.1.115.0 |
Broadcom BCM57508 |
14e4:1750 |
bnxt_en |
5.14.0‑427.97.1.el9_4 |
226.0.145.1/pkg 226.1.107.1 |
Hardware requirements¶
Category |
Component |
Requirement |
Notes |
|---|---|---|---|
Server |
Architecture |
x86_64 minimum of 3 nodes |
Enable SR‑IOV in BIOS. |
Server |
NICs |
One physical SR‑IOV capable NIC |
Recommended for separating internal and external networks. |
Memory |
Host Memory |
Recommended minimum 256 GB |
For application workloads and TMM. |
Storage |
Storage |
Kubernetes persistent volumes |
Required for F5 TODA Fluentd, F5 dSSM, and the TMM debug sidecar. |
CPU |
NUMA |
CPUs and VFs on the same NUMA node |
Set Performance Profile’s Topology Manager Policy to |
Software requirements¶
Software |
Version |
Notes |
|---|---|---|
Red Hat OpenShift |
See software support table |
Evaluated versions mentioned above. |
Cluster Network Operator |
Included with OpenShift |
Must be installed to manage cluster networks. |
OVN‑Kubernetes CNI |
Included with OpenShift |
Default CNI for OpenShift. Calico (vanilla Kubernetes) also supported. |
Multus |
Included with OpenShift |
Required for multi‑homed pods with SR‑IOV interfaces. |
SR‑IOV Network Operator |
Included with OpenShift |
Manages VFs and network attachment definitions. |
Helm |
v3.x |
Used to install BNK components. |
Minimum Gateway API version¶
When installing a BNK (Host) instance on bare metal or a VM using F5 Lifecycle Operator, you’ll specify in the CNEInstance manifest whether you want to later configure the BNK instance using Gateway API (and the BNK Gateway API supplemental CRDs) or the BNK legacy service-proxy CRDs.
When using Gateway API, BNK requires Gateway API v1.4.1 experimental or later.
If the Gateway API CRDs |
Then F5 Lifecycle Operator |
|---|---|
Are not installed in the cluster |
Will install an appropriate version |
Are already present in the cluster |
Will not alter those CRDs |
Note
You must ensure the Gateway API CRDs are maintained at a version appropriate for BNK.
Pod networking¶
To support low‑latency 5G workloads, BNK relies on Single Root I/O Virtualization (SR‑IOV) and the OVN‑Kubernetes CNI. BNK also supports vanilla Kubernetes with Calico CNI. To ensure the cluster supports multi‑homed pods (the ability to select either the default virtual CNI or the SR‑IOV physical CNI), configure the following:
Cluster Network Operator — Must be installed to manage cluster networks.
SR‑IOV Network Operator — Manages SR‑IOV device plugin and network attachment definitions.
Multus — Enables pods to attach to multiple network interfaces.
Note
The Cluster Network Operator installation on GitHub.
CPU allocation¶
Multiprocessor servers divide memory and CPUs into multiple NUMA nodes, each having a non‑shared system bus. The CPUs and SR‑IOV VFs allocated to TMM must share the same NUMA node. Set the following parameters to ensure proper NUMA alignment:
Parameter |
Value |
Notes |
|---|---|---|
Topology Manager Policy |
|
Set in the Performance Profile. |
CPU Manager Policy |
|
Set in the Kubelet configuration. |
CPU Policy Option |
|
Ensures full physical cores are allocated to TMM. |
Important
When full-pcpus-only is set with static CPU Manager policy, TMM receives both threads of the same core. No thread for the same core is assigned to other workloads.
Simultaneous multithreading (SMT)¶
BNK supports deployments in hyperthreading‑enabled environments, enhancing scalability and resource utilization. TMM can manage logical CPUs for high performance in hyperthreaded setups.
Persistent storage¶
The following components require an available Kubernetes persistent storage to bind to during installation:
Component |
Notes |
|---|---|
F5 TODA Fluentd |
Logging collector |
dSSM |
Distributed session state database |
TMM debug sidecar |
Stores debug and diagnostic data. |
Next steps¶
To continue preparing your cluster, go to Label TMM nodes.