Hello, I am planning to deploy a DeepStream 7.1 application on Kubernetes to process multiple RTSP streams. The application will analyze these streams using a YOLO model, generate analytics, and send messages via Kafka using Faust. It will also interface with a small backend.
I would appreciate advice and best practices in the following areas:
Deployment Methodology:
Would you recommend deploying via Helm (e.g., using this example guide NVIDIA Helm chart) or directly creating and managing Kubernetes manifests? What are the pros and cons of each approach for deploying a DeepStream 7.1 application?
System Requirements:
Recommended NVIDIA GPU driver version and CUDA version for compatibility with DeepStream 7.1?
Any specific GPU configuration or hardware tips for better performance?
Application Development:
For developing the application, should I use C or Python bindings (e.g., following these examples deepstream_python_apps)? Are there notable performance differences or limitations with Python bindings?
Best Practices and Plugin Recommendations:
Are there specific plugins you would recommend for processing RTSP streams, running inference with YOLO models, and integrating with Kafka?
For example, I plan to use plugins such as nvstreammux, nvinfer, and nvmsgbroker. Are there any additional or alternative plugins I should consider to optimize my pipeline?
What are the best practices for configuring these plugins to ensure scalability and high performance, especially in a Kubernetes environment?
Additional Documentation/Resources:
Apart from the resources above, are there other guides or documentation that would help optimize this deployment?
I look forward to hearing your suggestions and insights.
Thanks in advance for your help!
Thank you for all the information!
Yes, I’m looking for documentation or guides specifically about deployment with Helm and Kubernetes, especially focused on optimizing setups for DeepStream.
The optimization of the DeepStream pipeline has nothing to do with helm or k8s. DeepStream published its own docker containers DeepStream | NVIDIA NGC.
Okay thanks, I understand that the optimization of the DeepStream pipeline is separate from Kubernetes and Helm. However, I am looking for guides or tutorials specifically on deploying DeepStream applications in Kubernetes clusters. Are there any resources or examples that detail this process?
Additionally, I noticed that for DeepStream 7.1, the requirements specify driver version 535.183.06 and CUDA 12.6, but the maximum supported CUDA version for that driver is 12.2. Could you clarify why?
In my humble opinion, there has always been some ambiguity about how a Deepstream pipeline can be scaled from 10 cameras to 1000 cameras in the cloud. As of today, I am not even sure if it is possible or if it makes sense.
Hello, I deployed a DeepStream 7.1 app into my Kubernetes cluster using the deepstream:7.1-triton-multiarch container.
The GPU I’m using is an NVDIA H100, with Driver version 535.183.06 and CUDA version 12.6.
When i try to execute deepstream-rtsp-in-rtsp-out from DeepStream Python app with the command:
I solved the problem. I was running my pod incorrectly.
However, I noticed an issue: when running my application on a machine with an L40S GPU, everything works fine, but with the H100 GPU, I encounter an encoding problem. Could this be related to the absence of NVENC? How can I work around this issue?
Thanks