Additional Application Features — UCS Tools Documentation
Title: Additional Application Features — UCS Tools Documentation
URL Source: https://docs.nvidia.com/ucf/2.10.0/text/UCS_AppAdditionalFeatures.html
Published Time: Thu, 30 Oct 2025 07:23:03 GMT
Markdown Content: Additional Application Features#
Using the Same Microservice Component Multiple Times in an App#
Since UCS 2.5.0, you can specify the same microservice multiple times in an application manifest. The example below shows an app that uses microservice A twice and microservice B once:
specVersion: '2.5.0'
version: 0.0.1
doc: README.md
name: multiple-same-ms-example
description: MS A is used twice
dependencies:
- ucf.svc.microserviceA:0.0.1
- ucf.svc.microserviceB:0.0.1
components:
- name: microserviceA one
type: ucf.service.microserviceA
parameters:
paramA1: 100
paramA2:
- name: tango imagePullSecrets:
- name: ngc-docker-reg-secret
- name: microserviceA two
type: ucf.service.microserviceA
parameters:
paramA1: 200
paramA2:
- name: waltz imagePullSecrets:
- name: ngc-docker-reg-secret
- name: microserviceB type: ucf.service.microserviceB parameters: paramB1: false secrets: some-secret-name: some-secret
connections: microserviceA one/http: microserviceB/http microserviceA two/http: microserviceB/http
This feature uses Helm Chart aliasing. The resulting Chart.yaml looks like this:
apiVersion: v2 name: multiple-same-ms-example description: MS A is used twice type: application version: 0.1.0 appVersion: '' dependencies:
- name: ucf.svc.microserviceB version: 0.0.1
- name: ucf.svc.microserviceA version: 0.0.1 alias: microserviceA one
- name: ucf.svc.microserviceA version: 0.0.1 alias: microserviceA two
Current limitation: Parameters specified in the first instance of MicroserviceA also apply to the second instance (and third, fourth, etc.). To avoid this behavior, specify the same parameters for all instances of the same microservice with your desired values. Otherwise, the defaults won’t apply.
Interfacing with the NVIDIA K8s RAG Operator#
Since UCS Tools 2.5, a new built-in component called ucf.svc.rag-operator-external is available. This component represents the NVIDIA K8s Operator. It allows microservices in a UCS Application to connect to NeMo microservices managed by the RAG Operator. This simplifies RAG application development in UCS Tools.
You must deploy the RAG Operator to your target K8s platform before deploying your UCS App. The NVIDIA GPU Operator is a dependency and must be running before you install the RAG Operator. Find deployment instructions on the project’s home page.
To deploy the RAG Operator, run these commands:
helm repo add nemollm-ea-rag-examples https://helm.ngc.nvidia.com/ohlfw0olaadg/ea-rag-examples helm install rag-operator nemollm-ea-rag-examples/rag-operator -n rag-operator --create-namespace
You can optionally configure GPU time-slicing.
See an example UCS RAG Application in our UCS-Tools GitLab repository.
Links/Buttons: