SKA PST Helm Chart Parameters

This is a summary of the Helm chart parameters that can be used to customise PST deployment, configuration, and integration. The default values can be located in the chart’s values file.

Parameter Descriptions

CORE

These parameters are used for configuring deployments of the core PST signal processing chain.

Parameter Description Default
core.enabled Enable/Disable PST.CORE deployment true
core.initContainers.wait.image Common image used by init containers used to wait for desired state of kubernetes resources artefact.skao.int/ska-ser-utils:0.1.0
core.affinity Affinity applied to the ska-pst deployment {}
core.applications Application specific configuration that overrides container level configuration
core.applications.recv Contains RECV configuration
core.applications.recv.dataNic Overrides the PodIP with the provided IP. Used with core.hostNetwork=true ""
core.applications.recv.image Container image ska-pst-core
core.applications.recv.command Container commands ["bash"]
core.applications.recv.args Container command arguments, see ska_pst_recv_udpdb usage. ["-c","ska_pst_recv_udpdb ${POD_IP} -p ${RECV_DATASTREAM_PORT} -c ${RECV_MGMT_PORT} -w"]
core.applications.recv.resources Container resource allocations
core.applications.recv.resources.limits Container resource limits
core.applications.recv.resources.limits.cpu Container CPU limit 1600m
core.applications.recv.resources.limits.memory Container memory limit 6400Mi
core.applications.recv.resources.requests Container resource requests
core.applications.recv.resources.requests.cpu Container CPU request 1600m
core.applications.recv.resources.requests.memory Container memory request 6400Mi
core.applications.recv.ports RECV port configurations
core.applications.recv.ports.mgmt RECV management port configurations. Used for communication with LMC.
core.applications.recv.ports.mgmt.lmcPropertyName Device property name configured in beam device configuration RecvProcessApiEndpoint
core.applications.recv.ports.mgmt.port PST service port for RECV management port 28080
core.applications.recv.ports.mgmt.protocol PST service port protocol for RECV management port TCP
core.applications.recv.ports.mgmt.targetPort Pod exposed port used by RECV 28080
core.applications.recv.ports.mgmt.datastream RECV data stream port configurations. Used for receiving data sent by CBF
core.applications.recv.ports.datastream.port PST service port for RECV datastream port 28080
core.applications.recv.ports.datastream.protocol PST service port protocol for RECV datastream port UDP
core.applications.recv.ports.datastream.targetPort Pod exposed port used by RECV 28080
core.applications.recv.resources Optional resources configuration specific to RECV container {}
core.applications.smrb Contains SMRB configuration
core.applications.smrb.image Container image ska-pst-core
core.applications.smrb.command Container commands ["bash"]
core.applications.smrb.args Container command arguments, see ska_pst_smrb_core usage ["-c","ska_pst_smrb_core -c ${SMRB_MGMT_PORT}"]
core.applications.smrb.resources Container resource allocations
core.applications.smrb.resources.limits Container resource limits
core.applications.smrb.resources.limits.cpu Container CPU limit 1600m
core.applications.smrb.resources.limits.memory Container memory limit 6400Mi
core.applications.smrb.resources.requests Container resource requests
core.applications.smrb.resources.requests.cpu Container CPU request 1600m
core.applications.smrb.resources.requests.memory Container memory request 6400Mi
core.applications.smrb.ports SMRB port configurations
core.applications.smrb.ports.mgmt SMRB management port configurations. Used for communication with LMC.
core.applications.smrb.ports.mgmt.lmcPropertyName Device property name configured in beam device configuration SmrbProcessApiEndpoint
core.applications.smrb.ports.mgmt.port PST service port for SMRB management port 28081
core.applications.smrb.ports.mgmt.protocol PST service port protocol for SMRB management port TCP
core.applications.smrb.ports.mgmt.targetPort Pod exposed port used by SMRB 28081
core.applications.smrb.resources Optional resources configuration specific to SMRB container {}
core.applications.stat Contains STAT configuration
core.applications.stat.image Container image ska-pst-core
core.applications.stat.command Container commands ["bash"]
core.applications.stat.args Container command arguments, see ska_pst_stat_core usage ["-c","ska_pst_stat_core -d ${PST_DSP_MOUNT} -c ${STAT_MGMT_PORT}"]
core.applications.stat.resources Container resource allocations
core.applications.stat.resources.limits Container resource limits
core.applications.stat.resources.limits.cpu Container CPU limit 1600m
core.applications.stat.resources.limits.memory Container memory limit 6400Mi
core.applications.stat.resources.requests Container resource requests
core.applications.stat.resources.requests.cpu Container CPU request 1600m
core.applications.stat.resources.requests.memory Container memory request 6400Mi
core.applications.stat.ports STAT port configurations
core.applications.stat.ports.mgmt STAT management port configurations. Used for communication with LMC.
core.applications.stat.ports.mgmt.lmcPropertyName Device property name configured in beam device configuration StatProcessApiEndpoint
core.applications.stat.ports.mgmt.port PST service port for STAT management port 28083
core.applications.stat.ports.mgmt.protocol PST service port protocol for STAT management port TCP
core.applications.stat.ports.mgmt.targetPort Pod exposed port used by RECV 28083
core.applications.stat.resources Optional resources configuration specific to STAT container {}
core.applications.dsp_disk Contains DSP Voltage recorder mode configuration
core.applications.dsp_disk.image Container image ska-pst-core
core.applications.dsp_disk.command Container commands ["bash"]
core.applications.dsp_disk.args Container command arguments, see ska_pst_dsp_disk usage ["-c","ska_pst_dsp_disk -d ${PST_DSP_MOUNT} -c ${DSP_DISK_MGMT_PORT}"]
core.applications.dsp_disk.resources Container resource allocations
core.applications.dsp_disk.resources.limits Container resource limits
core.applications.dsp_disk.resources.limits.cpu Container CPU limit 1600m
core.applications.dsp_disk.resources.limits.memory Container memory limit 6400Mi
core.applications.dsp_disk.resources.requests Container resource requests
core.applications.dsp_disk.resources.requests.cpu Container CPU request 1600m
core.applications.dsp_disk.resources.requests.memory Container memory request 6400Mi
core.applications.dsp_disk.ports DSP Voltage recorder mode port configurations
core.applications.dsp_disk.ports.mgmt DSP Voltage recorder mode management port configurations. Used for communication with LMC. DspDiskProcessApiEndpoint
core.applications.dsp_disk.ports.mgmt.lmcPropertyName Device property name configured in beam device configuration ``
core.applications.dsp_disk.ports.mgmt.port PST service port for DSP Voltage recorder mode management port 28082
core.applications.dsp_disk.ports.mgmt.protocol PST service port protocol for DSP Voltage recorder mode management port TCP
core.applications.dsp_disk.ports.mgmt.targetPort Pod exposed port used by DSP Voltage recorder 28082
core.applications.dsp_disk.resources Optional resources configuration specific to DSP_DISK container {}
core.applications.dsp_ft Contains DSP Flow through mode configuration
core.applications.dsp_ft.image Container image ska-pst-core
core.applications.dsp_ft.command Container commands ["bash"]
core.applications.dsp_ft.args Container command arguments, see ska_pst_dsp_ft usage. Optional flag of -g $gpu_id can be used where $gpu_id is replaced with numerical value of a CUDA capable gpu device id ["-c","ska_pst_dsp_ft -d ${PST_DSP_MOUNT} -c ${DSP_FT_MGMT_PORT}"]
core.applications.dsp_ft.resources Container resource allocations
core.applications.dsp_ft.resources.limits Container resource limits
core.applications.dsp_ft.resources.limits.cpu Container CPU limit 1600m
core.applications.dsp_ft.resources.limits.memory Container memory limit 6400Mi
core.applications.dsp_ft.resources.requests Container resource requests
core.applications.dsp_ft.resources.requests.cpu Container CPU request 1600m
core.applications.dsp_ft.resources.requests.memory Container memory request 6400Mi
core.applications.dsp_ft.ports DSP Flow Through mode port configurations
core.applications.dsp_ft.ports.mgmt DSP Flow Through mode management port configurations. Used for communication with LMC.
core.applications.dsp_ft.ports.mgmt.lmcPropertyName Device property name configured in beam device configuration DspFlowThroughProcessApiEndpoint
core.applications.dsp_ft.ports.mgmt.port PST service port for DSP Flow Through mode management port 28084
core.applications.dsp_ft.ports.mgmt.protocol PST service port protocol for DSP Flow Through mode management port TCP
core.applications.dsp_ft.ports.mgmt.targetPort Pod exposed port used by DSP Flow Through mode 28084
core.applications.dsp_ft.resources Optional resources configuration specific to DSP_FT container {}
core.affinity Affinity assigned to the ska-pst-core deployment {}
core.podAnnotations Annotations assigned to the ska-pst-core pod {}
core.podSecurityContext Security context assigned to the ska-pst-core pod {}
core.replicaCount Number of ska-pst-core pod replicas generated by the ska-pst-core deployment 1
core.runtimeClassName RuntimeClass object used to run the core pod. The core pod will not run if the configured runtimeclass does not exist. Used concurrently with core.applications.dsp_ft.resources.requests=nvidia.com/gpu: 1 with a configuration of core.runtimeClassName=nvidia to utilise an nvidia gpu resource ``
core.nodeSelectorTerms Ensures ska-pst-core resources deployed on nodes with declared labels kubernetes.io/os=linux
core.nodeSelector Selector which must match a node's labels for the pod to be scheduled on that node. {}
core.podInstanceOverrides Used for overriding ska-pst-core configurations. Keys should match the elements of deviceServers.pstLmc.instances. {}
core.probes Configurations for ska-pst-core readiness and liveliness probes
core.probes.legacyMode Enables readiness and liveliness probes using port listeners true
core.probes.readiness.initialDelaySeconds Number of seconds after the container has started before readiness probes are initiated. Minimum value is 1 5
core.probes.readiness.periodSeconds How often (in seconds) to perform the probe. Minimum value is 1 10
core.probes.liveliness.initialDelaySeconds Number of seconds after the container has started before liveliness probes are initiated. Minimum value is 1 5
core.probes.liveliness.periodSeconds How often (in seconds) to perform the probe. Minimum value is 1 10
core.primaryVolumeMount The required storage configuration used by DSP to write files
core.primaryVolumeMount.name Name of the persistentVolumeClaim used across the ska-pst chart ska-pst-lfs
core.primaryVolumeMount.type The storage class used. Available options involve local-storage (hostPath), cephfs (nfss1), block (bds) local-storage
core.primaryVolumeMount.hostPath Baremetal host path. Used concurrently with core.primaryVolumeMount.type-local-storage /tmp
core.primaryVolumeMount.containerBasePath Container mount path used across the ska-pst chart /mnt/pst/
core.primaryVolumeMount.containerDataPath Container mount path used for storing PST data products that are still being processed. /mnt/pst/data
core.primaryVolumeMount.containerDlmPath Container mount path used for storing PST data products that are ready for file transfers /mnt/pst/dlm
core.primaryVolumeMount.permission The permission applied to folders created in core.primaryVolumeMount.containerBasePath 0764
core.primaryVolumeMount.readOnly Permission assigned when the volume is assigned to a pod false
core.primaryVolumeMount.size The size requested by the persistentVolumeClaim. Acts as a label when core.primaryVolumeMount.type=local-storage 10Gi
core.extraVolumeMounts List of additional mounts used across the ska-pst chart. Fields are the same as core.primaryVolumeMount []
core.selftest Configurations applied to the ska-pst-selftest Job
core.selftest.enabled Feature flag that toggles the ska-pst-selftest Job false
core.selftest.image Container image ska-pst-selftest
core.selftest.securityContext Holds container-level security attributes applied to the ska-pst-selftest initContainer. Supersedes podSecurityContext privileged: true
core.send Configurations applied to the ska-pst-send pod
core.send.enabled Feature flag that enables or disables the ska-pst-core-send pod true
core.send.resources Resources allocated to the ska-pst-core-send pod {}
core.send.image Container image ska-pst-send
core.send.command Container commands ["bash"]
core.send.args Container command arguments, see dlm_transfer usage. ["-c","dlm_transfer $PST_DSP_MOUNT/product $PST_DSP_MOUNT/staging $DLM_STG_MOUNT/product $PST_SUBSYSTEM_ID"]
core.send.podSecurityContext Holds pod-level security attributes and common container settings. {}
core.service Contains the kubernetes service configurations for the ska-pst-core deployment
core.service.enabled Feature flag that enables or disables the kubernetes service for the ska-pst-core deployment true
core.service.type The kubernetes service type. Available options are ClusterIP LoadBalancer, and NodePort ClusterIP

LMC

These parameters are used for configuring deployments of the local monitoring and control (LMC) part of the PST deployment.

Parameter Description Default
system SW-infrastructure
subsystem ska-pst-lmc
telescope SKA-low
deviceServers.pstLmc Contains device service configuration for the PST.BEAM
deviceServers.pstLmc.enabled Enable/Disable PST.BEAM LMC deployment true
deviceServers.pstLmc.serverName The server name assigned to the PST.BEAM low-pst-beam for SKA-Low
mid-pst-beam for SKA-Mid
deviceServers.pstLmc.image Container image ska-pst-lmc
deviceServers.pstLmc.instances Beam instances list ["01"]
deviceServers.pstLmc.file File path containing the beam template configuration "data/beam.yaml"
deviceServers.pstLmc.simulationMode Run Beam logical device in simulation (0) or non simulation (1) mode 0
deviceServers.pstLmc.monitor_polling_rate Monitor polling rate (in milliseconds) used by the beam server 5000
deviceServers.pstLmc.health_check_interval The health check interval (in milliseconds) used by the beam server to the PST subcomponents 1000
deviceServers.pstLmc.scanOutputDirPattern Relative path pattern concerning data files product/<eb_id>/<subsystem_id>/<scan_id>
deviceServers.pstLmc.volume.readOnly Pod permission assigned to volume mount concerning the shared pst volume false
loggingLevel The logging level assigned by the beam server to the PST.CORE applications 4
labels Labels assigned to the beam server app: ska-pst-lmc
annotations Annotations assigned to the beam server
annotations.app.gitlab.com/app The gitlab source code repository for the pst beam server CI_PROJECT_PATH_SLUG
annotations.app.gitlab.com/env The environment concerning the kubernetes cluster CI_ENVIRONMENT_SLUG
resources.requests.cpu Defines the minimum amount of compute resources required 50m
resources.requests.memory Defines the minimum amount of memory resources required 50Mi
resources.limits.cpu Defines the maximum amount of compute resources allowed 100m
resources.limits.memory Defines the maximum amount of memory resources allowed 150Mi
livenessProbe Probe applied to the beam server. Periodic probe of container liveness. Container will be restarted if the probe fails
livenessProbe.initialDelaySeconds Number of seconds after the container has started before liveness probes are initiated 0
livenessProbe.periodSeconds How often (in seconds) to perform the probe. Minimum value is 1 10
livenessProbe.timeoutSeconds Number of seconds after which the probe times out. Minimum value is 1. 3
livenessProbe.successThreshold Minimum consecutive successes for the probe to be considered successful after having failed. Must be 1 for liveness and startup. Minimum value is 1. 1
livenessProbe.failureThreshold Minimum consecutive failures for the probe to be considered failed after having succeeded. Minimum value is 1 3
readinessProbe Probe applied to the beam server. Periodic probe of container service readiness. Container will be removed from service endpoints if the probe fails
readinessProbe.initialDelaySeconds Number of seconds after the container has started before liveness probes are initiated 0
readinessProbe.periodSeconds How often (in seconds) to perform the probe. Minimum value is 1 10
readinessProbe.timeoutSeconds Number of seconds after which the probe times out. Minimum value is 1. 3
readinessProbe.successThreshold Minimum consecutive successes for the probe to be considered successful after having failed. Must be 1 for liveness and startup. Minimum value is 1. 1
readinessProbe.failureThreshold Minimum consecutive failures for the probe to be considered failed after having succeeded. Minimum value is 1 3
securityContext.runAsNonRoot Indicates that the beam server container must run as a non-root user. If true, the Kubelet will validate the image at runtime to ensure that it does not run as UID 0 (root) and fail to start the container if it does. If unset or false, no such validation will be performed. true
securityContext.runAsUser The UID to run the entrypoint of the beam server container process 1000
securityContext.runAsGroup The GID to run the entrypoint of the beam server container process 1000
tolerations The beam server pod this Toleration is attached to tolerates any taint that matches the triple using the matching operator . []

Jupyterlab

These parameters are used for configuring deployment of a JupyterLab pod within the PST deployment. This should only be enabled in a testing environment.

Parameter Description Default
jupyterlab Contains configuration concerning jupyterlab deployment
jupyterlab.enabled Feature flag to enable or disable jupyterlab deployment false
jupyterlab.image Container image ska-pst-jupyterlab
jupyterlab Container commands ["jupyter"]
jupyterlab Container command arguments ["lab", "--no-browser", "--ip=0.0.0.0", "--notebook-dir=/app/notebooks", "--IdentityProvider.token=''", "--ServerApp.password=''"]
jupyterlab.service Contains kubernetes service configuration for the ska-pst-jupyterlab pod
jupyterlab.service.enabled Feature flag that enables or disables the kubernetes service for the ska-pst-jupyterlab pod true
jupyterlab.service.type The kubernetes service type. Available options are ClusterIP LoadBalancer, and NodePort ClusterIP
jupyterlab.service.ports.jupyterlab Jupyterlab service port configurations
jupyterlab.service.ports.jupyterlab.port The port that will be exposed by the jupyterlab service 8888
jupyterlab.service.ports.jupyterlab.protocol The IP protocol for the exposed port. Supports TCP, UDP, and SCTP. TCP
jupyterlab.service.ports.jupyterlab.targetPort Number or name of the port to access on the pods targeted by the jupyterlab service 8888
jupyterlab.resources Resources allocated to the ska-pst-jupyterlab pod
jupyterlab.resources.requests.cpu Defines the minimum amount of compute resources required 2000m
jupyterlab.resources.requests.memory Defines the minimum amount of memory resources required 4Gi
jupyterlab.resources.limits.cpu Defines the maximum amount of compute resources allowed 2000m
jupyterlab.resources.limits.memory Defines the maximum amount of memory resources allowed 4Gi

Override Examples

Use gitlab registry and override storage configuration

image:
  registry: &SkaPstRepository "registry.gitlab.com/ska-telescope/pst/ska-pst"

ska-pst:
  image:
    registry: *SkaPstRepository

  core:
    primaryVolumeMount:
      type: nfs

Increase resource allocated to PST.CORE and PST.LMC pods

ska-pst:

  telescope: SKA-Mid

ska-pst:
  telescope: SKA-Mid

  core:
    # Override each container separately.
    # The overall pod quota is the sum of the per‑container values below.
    # Example: total CPU limit = 2000m (recv) + 1500m (smrb) + 1000m (stat) +
    #            1500m (dsp-disk) + 1500m (dsp-ft) = 7500m
    applications:
      recv:
        resources:
          limits:
            cpu: 2000m          # default 1600m
            memory: 5120Mi      # default 6400Mi
          requests:
            cpu: 2000m          # default 1600m
            memory: 5120Mi      # default 6400Mi
      smrb:
        resources:
          limits:
            cpu: 1500m          # default 1600m
            memory: 4000Mi      # default 6400Mi
          requests:
            cpu: 1500m          # default 1600m
            memory: 4000Mi      # default 6400Mi
      stat:
        resources:
          limits:
            cpu: 1000m          # default 1600m
            memory: 3000Mi      # default 6400Mi
          requests:
            cpu: 1000m          # default 1600m
            memory: 3000Mi      # default 6400Mi
      dsp-disk:
        resources:
          limits:
            cpu: 1500m          # default 1600m
            memory: 4000Mi      # default 6400Mi
          requests:
            cpu: 1500m          # default 1600m
            memory: 4000Mi      # default 6400Mi
      dsp-ft:
        resources:
          limits:
            cpu: 1500m          # default 1600m
            memory: 4000Mi      # default 6400Mi
            nvidia.com/gpu: 1   # GPU requirement (unchanged)
          requests:
            cpu: 1500m          # default 1600m
            memory: 4000Mi      # default 6400Mi
            nvidia.com/gpu: 1

  # The LMC device server can still be tuned separately
  deviceServers:
    pstLmc:
      resources:
        limits:
          cpu: 200m
          memory: 300Mi
        requests:
          cpu: 100m
          memory: 100Mi

Enable jupyterlab for manual testing of PST

ska-pst:
  jupyterlab:
    enabled: true

Deploy ska-pst to pst-beam2 in PSI Low environment

ska-pst:

  telescope: SKA-Low

  # Applied across pst pods
  tolerations:
    - effect: NoExecute
      key: nvidia.com/gpu
      value: "true"

  core:
    # Required for pod deployments
    nodeSelector:
      kubernetes.io/hostname: pst-beam2

    # Required for persistentvolume deployments
    nodeSelectorTerms:
      - matchExpressions:
        - key: kubernetes.io/hostname
          operator: In
          values:
          - "pst-beam2"

Deploy ska-pst with cuda enabled dsp_ft

image:
  registry: &SkaPstRepository "registry.gitlab.com/ska-telescope/pst/ska-pst"


ska-pst:
  image:
    registry: *SkaPstRepository

  tolerations:
    - effect: NoExecute
      key: nvidia.com/gpu
      value: "true"

  core:
    applications:
      dsp_ft:
        resources:
          requests:
            nvidia.com/gpu: 1
          limits:
            nvidia.com/gpu: 1
    nodeSelector:
      kubernetes.io/hostname: pst-beam2

    nodeSelectorTerms:
      - matchExpressions:
        - key: kubernetes.io/hostname
          operator: In
          values:
          - "pst-beam2"

    primaryVolumeMount:
      type: local-storage
      hostPath: /data

Enable ska-pst selftest to check k8s node configuration compatibility

ska-pst:
  core:
    selftest:
      enabled: true

    primaryVolumeMount:
      type: local-storage
      hostPath: /data

Deploy ska-pst with multiple beams in non simulation mode

  # Common k8s tolerations on ska-pst resources
  tolerations:
    - effect: NoExecute
      key: nvidia.com/gpu
      value: "true"
    - effect: NoSchedule
      key: skao.int/dedicated
      value: "pst"

  deviceServers:
    ## controller has only one instance
    pstLmc:
      enabled: true
      serverName: ""
      image: ska-pst-lmc
      instances: ["01", "02"]
      file: "data/beam.yaml"
      simulationMode: 0
      monitor_polling_rate: 5000
      health_check_interval: 1000
      scanOutputDirPattern: product/<eb_id>/<subsystem_id>/<scan_id>
      resources:
        limits:
          cpu: 100m
          memory: 150Mi
        requests:
          cpu: 0.5
          cpu: 50m
          memory: 50Mi
      volume:
        readOnly: false

  core:
    runtimeClassName: nvidia

    applications:
      # Allocate gpu resource to DSP.FT
      dsp_ft:
        command: ["bash"]
        args:
          - "-c"
          - "ska_pst_dsp_ft -d ${PST_DSP_MOUNT} -g 0 -c ${DSP_FT_MGMT_PORT}"
        resources:
          limits:
            nvidia.com/gpu: "1"
          requests:
            nvidia.com/gpu: "1"
      stat:
        resources:
          limits:
            cpu: 0.5
            memory: 800Mi
          requests:
            cpu: 0.5
            memory: 800Mi

    nodeSelectorTerms:
      - matchExpressions:
          - key: nvidia.com/gpu.count
            operator: In
            values:
              - "1"

    primaryVolumeMount:
      type: local-storage

  # LMC
  telescope: SKA-low

bootstrapMount:
  enabled: true

Deploy ska-pst with multiple beams in non simulation mode and with beam specific configurations.

  # Common k8s tolerations on ska-pst resources
  tolerations:
    - effect: NoExecute
      key: nvidia.com/gpu
      value: "true"
    - effect: NoSchedule
      key: skao.int/dedicated
      value: "pst"

  deviceServers:
    ## controller has only one instance
    pstLmc:
      enabled: true
      instances: ["01", "02"]

  core:
    runtimeClassName: nvidia

    applications:
      recv:
        resources:
          limits:
            cpu: 0.5
            memory: 800Mi
          requests:
            cpu: 0.5
            memory: 800Mi
      smrb:
        resources:
          limits:
            cpu: 0.5
          requests:
            cpu: 0.5
      dsp_disk:
        resources:
          limits:
            cpu: 0.5
            memory: 800Mi
          requests:
            cpu: 0.5
            memory: 800Mi
      dsp_ft:
        command: ["bash"]
        resources:
          limits:
            cpu: 0.5
          requests:
            cpu: 0.5
      stat:
        resources:
          limits:
            cpu: 0.5
            memory: 800Mi
          requests:
            cpu: 0.5
            memory: 800Mi

    podInstanceOverrides:
      # Ensure that pods are scheduled on nodes with GPUs
      "01":
        applications:
          # let beam-01 recv use interface name as the datastream network interface
          recv:
            dataNic: "enp226s0"
          # let beam-01 dsp_ft use gpu
          dsp_ft:
            args:
            - "-c"
            - "ska_pst_dsp_ft -d ${PST_DSP_MOUNT} -g 0 -c ${DSP_FT_MGMT_PORT}"
        nodeSelector:
          kubernetes.io/hostname: "pst-beam2"
      "02":
        applications:
          # let beam-02 recv use ipv4 address as the datastream network interface
          recv:
            dataNic: "202.9.15.141"
          # let beam-02 dsp_ft use cpu
          dsp_ft:
            args:
            - "-c"
            - "ska_pst_dsp_ft -d ${PST_DSP_MOUNT} -c ${DSP_FT_MGMT_PORT}"
        nodeSelector:
          kubernetes.io/hostname: "pst-beam2"


    nodeSelectorTerms:
      - matchExpressions:
          - key: kubernetes.io/hostname
            operator: In
            values:
              - "pst-beam2"

    primaryVolumeMount:
      type: local-storage

  # LMC
  telescope: SKA-low

bootstrapMount:
  enabled: true