Kubernetes - Контейнер знает об узле, на котором он запланирован

Я пытаюсь выяснить, каким образом контейнер или модуль могут знать некоторую конкретную информацию об узле, для которого он запланирован. Например, моему контейнеру может потребоваться знать, присутствует ли на этом узле графический процессор или нет, чтобы решить, включать ли ускорение графического процессора. Другой пример - знать переменную $DISPLAY узла, чтобы знать, на какой X-сервер выводить графику.

Какой лучший подход к этому?

Спасибо

Обновление: если бы я мог получить имя узла из контейнера, я мог бы выполнить поиск во внешней службе, чтобы получить нужную мне информацию. Есть ли способ сделать это?

2 ответа

ОП Здесь. Я нашел довольно приличный способ добиться этого.

При настройке узла с моим кластером я могу установить сценарий для исходных переменных среды в файл, а затем смонтировать этот файл в контейнер.

В качестве альтернативы я мог бы также хранить конфигурацию для каждого ndoe в отдельной службе и вводить nodeName для поиска свойств конкретного узла следующим образом:

https://kubernetes.io/docs/tasks/inject-data-application/environment-variable-expose-pod-information/

Затем, основываясь на имени, мой контейнер может выполнять поиск через службу или конфигурационное сопоставление отображения nodeName с любой информацией, которая мне нужна от узла. Все, что мне нужно сделать, это поддерживать эту карту сервиса / конфигурации в актуальном состоянии с информацией об узле.

Другие вопросы по тегам