Deploy with Helm#

Prerequisites#

Note If Ubuntu Desktop is not installed on the target system, follow the instructions from Ubuntu to install Ubuntu desktop.

Access to the helm charts - use one of the below options#

  • Use helm charts available at edge-ai-libraries/microservices/time-series-analytics/helm

  • Using pre-built helm charts:

    Follow this procedure on the target system to install the package.

    1. Download the Helm chart with the following command

      helm pull oci://registry-1.docker.io/intel/ia-time-series-analytics-microservice --version 2026.1.0-rc1-helm

    2. Extract the package using the following command

      tar -xvzf ia-time-series-analytics-microservice-2026.1.0-rc1-helm.tgz

    • Get into the Helm directory

      cd ia-time-series-analytics-microservice

Install Helm Charts#

Note:

  • Uninstall the Helm charts if already installed.

  • If the worker nodes are running behind proxy server, then please additionally set env.HTTP_PROXY and env.HTTPS_PROXY env like the way env.TELEGRAF_INPUT_PLUGIN is being set as follows with helm install command

cd edge-ai-libraries/microservices/time-series-analytics/helm # path relative to git clone folder
# Install helm charts
helm install time-series-analytics-microservice . -n apps --create-namespace

Use the following command to verify if all the application resources got installed w/ their status:

   kubectl get all -n apps

Upload the temperature_classifier UDF#

Run the following commands to package and upload the temperature_classifier UDF deployment package to the microservice:

cd edge-ai-libraries/microservices/time-series-analytics/
rm -f temperature_classifier.tar
tar cf temperature_classifier.tar udfs/ tick_scripts/
curl -X POST http://localhost:30002/udfs/package \
  -F "file=@temperature_classifier.tar"

Activate the UDF Deployment Package#

Run the following command to apply the configuration and activate the uploaded UDF:

cd edge-ai-libraries/microservices/time-series-analytics/

curl -s -X POST http://localhost:30002/config \
  -H 'accept: application/json' \
  -H 'Content-Type: application/json' \
  -d @config.json

Ingesting Temperature Data into the Time Series Analytics Microservice#

Run the following script to ingest temperature data into the Time Series Analytics Microservice:

cd edge-ai-libraries/microservices/time-series-analytics # path relative to git clone folder
python3 -m venv venv
source venv/bin/activate
pip3 install -r simulator/requirements.txt
python3 simulator/temperature_input.py --port 30002

Verify the Temperature Classifier Results#

Run following commands to see the filtered temperature results:

POD_NAME=$(kubectl get pods -n apps -o jsonpath='{.items[*].metadata.name}' | tr ' ' '\n' | grep deployment-time-series-analytics-microservice | head -n 1)
kubectl logs -f $POD_NAME -n apps

Uninstall helm charts#

helm uninstall time-series-analytics-microservice -n apps
kubectl get all -n apps # it takes few mins to have all application resources cleaned up

Troubleshooting#

  • Check pod details or container logs to catch any failures:

    POD_NAME=$(kubectl get pods -n apps -o jsonpath='{.items[*].metadata.name}' | tr ' ' '\n' | grep deployment-time-series-analytics-microservice | head -n 1)
    kubectl describe pod $POD_NAME $ -n apps # shows details of the pod
    kubectl logs -f $POD_NAME -n apps | grep -i error
    
    
    # Debugging UDF errors if container is not restarting and providing expected results
    kubectl exec -it $POD_NAME -n apps -- /bin/bash
    $ cat /tmp/log/kapacitor/kapacitor.log | grep -i error