grgalex / nvshare

Practical GPU Sharing Without Memory Size Constraints
Apache License 2.0
229 stars 24 forks source link

Question: How do we deploy on Kubernetes for a specific node #15

Open AMIYAMAITY opened 10 months ago

AMIYAMAITY commented 10 months ago

Hi,

Thank you for your hard work to build a GPU memory sharing package and to make it open for everyone. I have tested locally with multiple processes with different kinds of scenarios. It's working fine as expected. I went through the README file.

-- The Device Plugin runs on every GPU-enabled node in your Kubernetes cluster (currently it will fail on non-GPU nodes but that is OK) and manages a single GPU on every node. It consumes a single nvidia.com/gpu device and advertizes it as multiple (by default 10) nvshare.com/gpu devices. This means that up to 10 containers can concurrently run on the same physical GPU.

So, If we deploy the deployment files it will deploy on every GPU-enabled node, but I want to deploy in a specific node only for now. I was thinking of changing the matchLabels under the selector section to nodeSelector but I see matchLabels' name is using other places as well.

Could you please help me out to deploy the node specifically?

grgalex commented 10 months ago

I'm glad you found this useful!

The label/nodeselector concept that K8s offers looks like a good starting point for what you want: https://kubernetes.io/docs/tasks/manage-daemon/pods-some-nodes/