Deployment

The repository contains a Helm chart for deploying LowWeatherMonitoring Tango servers. Each individual device server pod configuration has been defined in charts/ska-low-wms/weather_station_config.yaml. By default, 5 devicer server instances are deployed to a Kubernetes cluster but is configurable in charts/ska-low-wms/values.yaml under deviceServers.wms.station_ids - this list corresponds to the simulator instances that will be created.

The LowWeatherMonitoring pods expect Host and Port properties that are used to connect the pod to a weather station server. To connect to hardware simply provide the IP address and port number to connect to in the values file on modbus_server_hostnames and modbus_server_ports respectively. If the WMS simulator is used, the default values are set in the Helm chart and do not need to be changed. The length of these lists must match, and the order of the entries in these lists must correspond to the order of the station IDs in station_ids. In the example below, the station ID is “1”, and will be used to connect to the modbus server running on “1.1.1.1:8080”.

deviceServers:
  wms:
    station_ids: ["1", "2"]
    modbus_server_hostnames: ["1.1.1.1", "2.2.2.2"]
    modbus_server_ports: ["8080", "9000"]

Helm charts describe a Kubernetes configuration. To run a Helm chart locally it is recommended to use Minikube. The Helm chart is available from artefact.skao.int. To check which remote repositories Helm knows of run:

helm repo list

If https://artefact.skao.int/repository/helm-internal is not in the output, it needs to be added e.g.:

helm repo add ska-internal https://artefact.skao.int/repository/helm-internal

Helm also needs to fetch the list of available packages:

helm repo update

A chart can then be pulled locally (to specify a version use the --version option):

helm pull ska-internal/ska-low-wms

With Minikube started the chart can be deployed to the local cluster with:

helm install ska-low-wms ska-internal/ska-low-wms --create-namespace -n ska-low-wms -f charts/ska-low-wms/values.yaml

To redeploy first delete the installation and run the install command again.

helm delete ska-low-wms -n ska-low-wms