Elastic GPU Agent is a Kubernetes device plugin implement for gpu allocation and use in container. It runs as a Daemonset in Kubernetes node. It works as follows:
- Register gpu core and memory resources on node
- Allocate and share gpu resources for containers
- Support gpu resources qos and isolation with specific gpu driver(e.g. elastic gpu)
For the complete solution and further details, please refer to Elastic GPU Scheduler.
- Kubernetes v1.17+
- golang 1.16+
- NVIDIA drivers
- nvidia-docker
- set
nvidiaas dockerdefault-runtime: add"default-runtime": "nvidia"to/etc/docker/daemon.json, and restart docker daemon.
Run make or TAG=<image-tag> make to build elastic-gpu-agent image
Deploy Elastic GPU Agent as follows:
$ kubectl apply -f deploy/elastic-gpu-agent.yaml
You can find more details on Elastic GPU Scheduler.
Distributed under the Apache License.