Skip to content

Install Helm charts#

Make sure you are in the working directory with the Kubernetes files:

cd /var/lib/luna/current/extras/k8s/

Helm chart setting#

The supplied Helm charts are not suitable for full operation in the production loop. You need to customize the charts according to your business logic before installing them.

Configure in the luna-<service-name>/values.yaml files all the necessary parameters, especially paying attention to:

  • resources section for specifying resources (e.g. CPU and memory) for the service containers.
  • ingress section to configure routing of incoming traffic to the service.
  • pullSecrets parameter in the image section to specify the secret to be used when extracting the container image from the registry (see "Create Docker registry authentication secret" in the "Additional information" section).

Note: It is recommended to configure the nginx.ingress.kubernetes.io/proxy-body-size annotation to the API service (or any other service to which image requests are sent) depending on the size requirements of the images being transmitted. The API service Helm chart gives an example of how to use this annotation.

These settings play an important role in ensuring the performance and availability of your application in a productive environment.

GPU setup for Remote SDK and Video Agent#

Note: Skip this section if you do not intend to use the GPU.

GPU usage for the Remote SDK and Video Agent service is enabled by passing the appropriate key in the resources section of the values.yaml file of the corresponding Helm chart.

For example, you can configure access to a single GPU as follows:

resources:
  limits:
    cpu: 5000m
    memory: 10Gi
    nvidia.com/gpu: 1
  requests:
    cpu: 5000m
    memory: 10Gi
    nvidia.com/gpu: 1

Note: Also, to enable estimations/detections on the GPU, the necessary settings must be set (see "GPU settings"). If necessary, you can use the EXTEND_CMD variable to pass the tagged settings.

env: 
  - name: EXTEND_CMD
    value: " --LUNA_REMOTE_SDK_RUNTIME_SETTINGS gpu"

Start installation of Helm charts#

Run the Helm charts installation for the required services using the following commands:

helm install --wait --timeout 10m luna-configurator ./luna-configurator
helm install --wait --timeout 10m luna-image-store ./luna-image-store
helm install --wait --timeout 10m luna-licenses ./luna-licenses
helm install --wait --timeout 10m luna-faces ./luna-faces
helm install --wait --timeout 10m luna-events ./luna-events
helm install --wait --timeout 10m luna-python-matcher ./luna-python-matcher
helm install --wait --timeout 10m luna-remote-sdk ./luna-remote-sdk
helm install --wait --timeout 10m luna-handlers ./luna-handlers
helm install --wait --timeout 10m luna-sender ./luna-sender
helm install --wait --timeout 10m luna-tasks-worker ./luna-tasks-worker
helm install --wait --timeout 10m luna-tasks ./luna-tasks
helm install --wait --timeout 10m luna-accounts ./luna-accounts
helm install --wait --timeout 10m luna-video-manager ./luna-video-manager
helm install --wait --timeout 10m luna-video-agent ./luna-video-agent
helm install --wait --timeout 10m luna-api ./luna-api
helm install --wait --timeout 10m luna-admin ./luna-admin

After installing Helm charts, it is recommended that you thoroughly test LUNA PLATFORM in an environment that meets your performance and security requirements.