F5DiameterEndpoint

Overview

The F5DiameterEndpoint Custom Resource (CR) is used to configure a Diameter endpoint (for example, a PCRF / external policy server) including its origin/destination identity, supported application(s), session ID behavior for Gx, and connection/message retransmission timers.

Parameters

metadata

Parameter Description
name The unique name identifying the resource (Kubernetes object name).
namespace The Kubernetes namespace in which the resource is created.

spec

The CR spec parameters used for configuring the Diameter endpoint are:

Parameter Description Default
productName Specifies the name of the product implementing the Diameter endpoint. Length: 1-255. Pattern: ^[0-9a-zA-Z._-]*$. Required
originHost Specifies the host name of the PCRF or external policy server (for example, pcrf.xnet.com). Length: 1-255. Pattern: ^[0-9a-zA-Z._-]*$. Required
originRealm Specifies the realm name or network in which the PCRF resides (for example, xnet.com). Length: 1-255. Pattern: ^[0-9a-zA-Z._-]*$. Required
destinationHost Specifies the destination host name of the PCRF or external policy server (for example, pcrfdest.net.com). Length: 1-255. Pattern: ^[0-9a-zA-Z._-]*$. Required
destinationRealm Specifies the realm name or network of the PCRF (for example, net.com). Length: 1-255. Pattern: ^[0-9a-zA-Z._-]*$. Required
fatalGraceTime Specifies the time (seconds) a Diameter connection can remain disconnected before the system clears all associated subscriber session data. If reconnected within this period, session data is retained. 0 clears session information immediately upon disconnection. Range: 0-86400. 500
messageRetransmitTime Specifies the number of milliseconds to wait before retransmitting unanswered messages in case of failure from the Diameter client (PCEF) to the Diameter server (for example, PCRF) over the interface. Range: 1-10000. 1500
maxRetransmits Specifies the maximum number of times that messages can be retransmitted from the Diameter client (PCEF) to the Diameter server (for example, PCRF). Range: 0-10. 2
supportedApps Specifies the Diameter application(s) to provision for the endpoint. Currently, only gx is supported. Required
protocolProfile Specifies the Diameter protocol profile to be used for the Diameter endpoint. Max length: 255. Pattern: ^[0-9a-zA-Z._-]*$. ""
gxSessionIdPrefix Specifies the prefix to be used for generating the Gx session IDs. Length: 1-255. Pattern: ^[0-9a-zA-Z._-]*$. Required

The value must match the pattern ^[0-9a-zA-Z._-]*$, meaning it can only contain alphanumeric characters (0-9, a-z, A-Z), periods (.), underscores (_), and hyphens (-).

Sample CR

apiVersion: k8s.f5net.com/v1
kind: F5DiameterEndpoint
metadata:
  name: gx-endpoint-pcrf-1
  namespace: f5-bnk
spec:
  productName: my-diameter-product
  originHost: pcrf.xnet.com
  originRealm: xnet.com
  destinationHost: pcrfdest.net.com
  destinationRealm: net.com

  # Timers / retransmits (optional)
  fatalGraceTime: 500
  messageRetransmitTime: 1500
  maxRetransmits: 2

  # Apps (only 'gx' supported)
  supportedApps:
    - gx

  # Optional profile reference
  protocolProfile: ""

  # Required for Gx
  gxSessionIdPrefix: gx-sess-

Create and apply F5DiameterEndpoint CR

  1. Copy the sample CR into a YAML <diameter-endpoint.yaml> file.

  2. Apply the F5DiameterEndpoint CR:

    kubectl create -f diameter-endpoint.yaml
    
  3. Verify the resource:

    kubectl get -f diameter-endpoint.yaml -n <namespace>
    
  4. (Optional) View details:

    kubectl describe -f diameter-endpoint.yaml -n <namespace>