Для мониторинга использования pod gpu с помощью cadvisor нам необходимо смонтировать путь доступа к библиотеке NVML (например, /usr/lib/nvidia-418) к cadvisor.
В настоящее время я создаю набор демонов в кластере k8s для развертывания cadvisor на каждом узле.
Однако мне нужно поддерживать несколько версий пути к библиотеке NVML. Например, некоторые серверы используют /usr/lib/nvidia-418, а другие — /usr/lib/nvidia-410. Непосредственное указание пути nvml становится невозможным.
Итак, какова наилучшая практика в этом случае?
У меня есть несколько идей, но я не уверен, что лучше.
- разделите серверы по пути nvml, все серверы в одном кластере используют одну и ту же версию библиотеки nvml.
2. Создайте программную ссылку на каждом сервере, свяжите /usr/lib/nvidia-418/* с /usr/lib/nvmlpath .
3. добавьте задание инициализации перед запуском cadvisor, создайте мягкую ссылку в задании. но я не уверен, что это сработает.
4. Добавьте коляску cadvisor для создания программной ссылки, но это не может гарантировать завершение коляски до того, как cadvisor получит путь пути nvml.
- создайте образ докера на основе cadvisor, добавьте процесс мягкой ссылки в CMD.