Helm chart
This is a summary of the Helm chart parameters that can be used to customise the SDP deployment. The current default values can be found in the chart’s values file.
Configuration database
The configuration database is implemented on top of etcd.
Parameter | Description | Default |
---|---|---|
etcd.image |
etcd container image | quay.io/coreos/etcd |
etcd.version |
etcd container version | 3.3.27 |
etcd.imagePullPolicy |
etcd container image pull policy | IfNotPresent |
etcd.replicas |
Number of etcd server replicas | 1 |
etcd.persistence.enabled |
Enable persistence of etcd database in persistent volume claim | false |
etcd.persistence.size |
Size of persistent volume claim | 1Gi |
etcd.persistence.storageClassName |
Storage class name for persistent volume claim | standard |
etcd.persistence.autoCompaction.retention |
Auto compaction retention for key-value store in hours | 0 |
etcd.persistence.autoCompaction.mode |
Auto compaction mode | periodic |
etcd.persistence.defrag.enabled |
Enable periodic etcd defragmentation | false |
etcd.persistence.defrag.cronjob.schedule |
Schedule in Cron format for etcd defragmentation | 30 23 * * 3,7 |
etcd.persistence.defrag.cronjob.historyLimit |
Number of successful finished jobs to retain | 1 |
etcd.maxTxnOps |
Maximum number of operations per transaction | 1024 |
Console
The console provides a command-line interface to monitor and control the SDP by interacting with the configuration database.
Parameter | Description | Default |
---|---|---|
console.enabled |
Enable the console | true |
console.image |
Console container image | artefact.skao.int/ska-sdp-console |
console.version |
Console container version | See values file |
console.imagePullPolicy |
Console container image pull policy | IfNotPresent |
Processing controller
Parameter | Description | Default |
---|---|---|
proccontrol.image |
Processing controller container image | artefact.skao.int/ska-sdp-proccontrol |
proccontrol.version |
Processing controller container version | See values file |
proccontrol.imagePullPolicy |
Processing controller container image pull policy | IfNotPresent |
proccontrol.loopInterval |
Processing controller idle loop time (seconds) | See values file |
proccontrol.livenessProbe |
Processing controller Kubernetes liveness probe configuration | See values file |
Data Persistent Volume Claim (PVC)
Configure the SDP to use an existing volume or create a new one, and then configure the processing scripts to write the data to that volume. When creating new PVCs, one will be created in the control system namespace and the other in the processing namespace.
Parameter | Description | Default |
---|---|---|
global.data-product-pvc-name |
Name of data product PVC that is set as a global value to allow subcharts to access the same PVC | test-pvc |
data-pvc.create.enabled |
Enable creation of PVCs | false |
data-pvc.create.size |
Size of PVC | 5Gi |
data-pvc.create.storageClassName |
Storage class name for PVC | standard |
Processing scripts
Processing script definitions to be used by SDP. These map the script kind, name and version to a container image. By default the definitions are read from the scripts repository in GitLab. A different URL may be specified. Alternatively a list of script definitions can be passed to the chart.
Parameter | Description | Default |
---|---|---|
scripts.url |
URL from which to read the script definitions | https://gitlab.com/ska-telescope/sdp/ska-sdp-script/-/raw/master/scripts.json |
scripts.definitions |
List of script definitions. If present, used instead of the URL. See the example below | Not set |
Example of script definitions in a values file:
scripts:
definitions:
- type: realtime
id: test-realtime
version: 0.3.0
image: artefact.skao.int/ska-sdp-script-test-batch:0.3.0
- type: batch
id: test-batch
version: 0.3.0
image: artefact.skao.int/ska-sdp-script-test-realtime:0.3.0
Helm deployer
Parameter | Description | Default |
---|---|---|
helmdeploy.image |
Helm deployer container image | artefact.skao.int/ska-sdp-helmdeploy |
helmdeploy.version |
Helm deployer container version | See values file |
helmdeploy.imagePullPolicy |
Helm deployer container image pull policy | IfNotPresent |
helmdeploy.namespace |
Namespace for SDP dynamic deployments | sdp |
helmdeploy.releasePrefix |
Prefix for Helm release names | "" |
helmdeploy.chartPrefix |
Prefix for Helm chart names | "" |
helmdeploy.chartRepo.url |
Chart repository URL | https://gitlab.com/ska-telescope/sdp/ska-sdp-helmdeploy-charts/-/raw/master/chart-repo/ |
helmdeploy.chartRepo.refresh |
Chart repository refresh interval (in seconds) | 0 |
helmdeploy.loopInterval |
Helm deployer idle loop time (seconds) | See values file |
helmdeploy.livenessProbe |
Helm deployer Kubernetes liveness probe configuration | See values file |
LMC (Tango devices)
Parameter | Description | Default |
---|---|---|
lmc.enabled |
Enable the LMC. If set to false , the SDP will run in headless mode |
true |
lmc.image |
LMC container image | artefact.skao.int/ska-sdp-lmc |
lmc.version |
LMC container version | See values file |
lmc.imagePullPolicy |
LMC container image pull policy | IfNotPresent |
lmc.nsubarray |
Number of subarrays to deploy | 1 |
lmc.prefix |
Telescope prefix for Tango device names (e.g. low or mid ) |
test |
lmc.newDeviceNames |
Use new-style Tango device names defined in ADR-9 | true |
lmc.allCommandsHaveArgument |
Enable all Tango device commands to receive a transaction ID | false |
lmc.strictValidation |
Enable strict validation of subarray command schemas | false |
lmc.loopInterval |
LMC devices idle loop time (seconds) | See values file |
lmc.livenessProbe |
LMC devices Kubernetes liveness probe configuration | See values file |
Tango infrastructure
Parameters for the ska-tango-base subchart and Tango dsconfig. The ska-tango-base subchart must be enabled to support the Tango devices when running the SDP stand-alone.
Parameter | Description | Default |
---|---|---|
ska-tango-base.enabled |
Enable the ska-tango-base subchart | true |
ska-tango-base.itango.enabled |
Enable the itango console in the ska-tango-base subchart | false |
dsconfig.image.* |
Tango dsconfig container image settings | See values file |
Proxy settings
Proxy settings are applied to the components that retrieve configuration data via HTTPS: the script definitions and the Helm charts.
Parameter | Description | Default |
---|---|---|
proxy.server |
Address of proxy server | Not set |
proxy.noproxy |
List of addresses or subnets for which the proxy should not be used | Not set |
Example of proxy settings in a values file:
proxy:
server: http://proxy.mydomain
noproxy:
- 192.168.0.1
- 192.168.0.2
Networking Setup (Network Attachment Definition)
A Processing Block using the vis-receive
script that needs to use a Kubernetes Network Attachment
Definition a networking.setup
must be defined here and the following option specified in the
processing block configuration parameters.
"use_network_definition": True
The networking.setup
is only added to SDP etcd when networking.setup.network-attachment-definition
is not empty.
Parameter | Description | Default |
---|---|---|
networking.setup |
Networking setup | |
networking.setup.network-attachment-definition |
As required by Kubernetes to access device | {} |
networking.setup.network-attachment-definition.name |
The name for the Kubernetes network attachment definition | None set |
networking.setup.network-attachment-definition.namespace |
The namespace containing the Kubernetes network attachment definition | None set |
networking.setup.available-ipv4-network |
IP network in CIDR form used to allocate one or more IP network(s) for externally
facing services that directly use host network devices, like
vis-receive . |
None set |
networking.setup.allocate-subnets-cidr-bits |
Number of network bits to use in IP range allocation | None set |
Example of network setup that will NOT not be used due to empty dict in a values file.
Note
If the available-ipv4-network
and allocate-subnets-cidr-bits
are specified
then they will be ignored.
networking:
setup:
network-attachment-definition: {}
Example of networking setup defining a network attachment definition in a values file:
networking:
setup:
network-attachment-definition:
name: ska-low-sdn-static
namespace: kube-system
available-ipv4-network: 192.168.21.0/23
allocate-subnets-cidr-bits: 24