Service Proxy for Kubernetes (SPK) is a cloud-native application traffic management solution, designed for communication service provider (CoSP) 5G networks. SPK integrates F5’s containerized Traffic Management Microkernel (TMM), Ingress Controller, and Custom Resource Definitions (CRDs) into the OpenShift container platform, to proxy and load balance low-latency 5G workloads.
This document describes the SPK features and software components for the OpenShift container platform.
SPK supports the following protocols and features:
- Flexible consumption licensing bills monthly only for features used.
- TCP, UDP, SCTP, HTTP/2, NGAP, Diameter and GTP application workloads.
- OVN-Kubernetes CNI with SR-IOV interface networking.
- Multiple dual-stack IPv4/IPv6 capabilities.
- Egress request routing with NAT for internal Pods.
- Pod telemetry collection and visualization.
- Redundant data storage with persistence.
- Diagnostics with iHealth integration.
- Application health monitoring.
- Calico CNI with egress gateway.
- Centralized logging.
- Canary deployment strategy.
- Blue-Green deployment strategy.
- Deployment on VMware Tanzu application platform.
- Secure SPK Deployment - L4 Network Firewall.
- CRD Conversion Webhook.
SPK software comprises three primary components:
The SPK Controller watches the Kube-API for Custom Resource (CR) update events, and configures the Service Proxy Pod based on the update. The Controller also monitors Kubernetes Service object Endpoints, to dynamically update Service Proxy TMM’s load balancing pool member list and member status.
Custom Resource Definitions¶
Custom Resource Definitions (CRDs) extend the Kubernetes API, enabling Service Proxy TMM to be configured using SPK’s Custom Resource (CR) objects. CRs configure TMM to proxy and load balance 5G workloads over UDP, TCP, SCTP, NGAP and Diameter. SPK CRs also configure TMM’s networking components such as self IP addresses and static routes.
The Service Proxy Pod comprises F5’s containerized TMM to proxy and load balance low-latency application traffic, and optional containers to assist with dynamic routing, statistic reporting, and debugging.