This guide provides step-by-step instructions for deploying the Model-Download Microservice using Helm.
Before you begin, ensure that you have the following prerequisites:
- Kubernetes cluster set up and running.
- The cluster must support dynamic provisioning of Persistent Volumes (PV). Refer to the Kubernetes Dynamic Provisioning Guide for more details.
- Install
kubectlon your system. Refer to Installation Guide. Ensure access to the Kubernetes cluster. - Helm installed on your system: Installation Guide.
Following steps should be followed to deploy Model-Download using Helm. You can install from source code or pull the chart from Docker hub.
Steps 1 to 2 varies depending on if the user prefers to build or pull the Helm details.
Use the following command to pull the Helm chart from Docker Hub:
helm pull oci://registry-1.docker.io/intel/model-download-chart --version <version-no>🔍 Refer to the Docker Hub tags page for details on the latest version number to use for the application.
After pulling the chart, extract the .tgz file:
tar -xvf model-download-chart-<version-no>.tgzThis will create a directory named model-download-chart containing the chart files. Navigate to the extracted directory.
cd model-download-chartClone the repository containing the Helm chart:
# Clone the latest on mainline
git clone https://github.com/open-edge-platform/edge-ai-libraries.git edge-ai-libraries
# Alternatively, Clone a specific release branch
git clone https://github.com/open-edge-platform/edge-ai-libraries.git edge-ai-libraries -b <release-tag>Navigate to the chart directory:
cd edge-ai-libraries/microservices/model-download/chartEdit the values.yaml file located in the chart directory to set the necessary environment variables. Ensure you set the proxy settings as required
Below is a summary of key configuration options available in the values.yaml file:
| Parameter | Description | Example Value | Required |
|---|---|---|---|
env.HUGGINGFACEHUB_API_TOKEN |
Hugging Face access token | hf_xxx |
Yes |
env.GETI_WORKSPACE_ID |
GETI workspace ID | Yes, For GETI connection | |
env.GETI_HOST |
GETI connection host address | Yes, For GETI connection | |
env.GETI_TOKEN |
GETI Personal Access token | Yes, For GETI connection | |
env.GETI_SERVER_API_VERSION |
GETI API version | v1 |
Yes, For GETI connection |
env.GETI_SERVER_SSL_VERIFY |
Enables SSL certificate validation for HTTPS/HTTP GETI hosts | False |
Yes, For GETI connection |
service.nodePort |
Sets the static port (in the 30000–32767 range) | 32000 | Yes |
env.ENABLED_PLUGINS |
Comma-separated list of plugins to enable (e.g., huggingface,ollama,ultralytics, openvino and geti) or all to enable all available plugins |
all |
Yes |
image.repository |
image repository url | intel/model-download | Yes |
image.tag |
latest image tag | latest | Yes |
Note: Refer to the chart's
values.yamlfor a full list of configurable parameters.
Deploy the Model-Download Helm chart:
helm install model-download . -n <your-namespace>Check the status of the deployed resources to ensure everything is running correctly
kubectl get pods -n <your-namespace>
kubectl get services -n <your-namespace>Open the application swagger documentation in a browser at http://<node-ip>:<node-port>/api/v1/docs
To uninstall helm charts deployed, use the following command:
helm uninstall <name> -n <your-namespace>- Ensure that all pods are running and the services are accessible.
- Access the application dashboard and verify that it is functioning as expected.
- If you encounter any issues during the deployment process, check the Kubernetes logs for errors:
kubectl logs <pod-name>
- If the PVC created during a Helm chart deployment is not removed or auto-deleted due to a deployment failure or being stuck, it must be deleted manually using the following commands:
# List the PVCs present in the given namespace kubectl get pvc -n <namespace> # Delete the required PVC from the namespace kubectl delete pvc <pvc-name> -n <namespace>