У меня есть 3 узла процессора и 1 узел графического процессора в моем кластере. По умолчанию проекты должны разворачиваться на узлах ЦП и только если они указаны в узлы графического процессора. Я добавил defaultNodeSelector: "graphic=cpu" в раздел projectConfig в master-config.yaml для достижения этой цели.

Проблема теперь, когда я создаю DeploymentConfig и назначаю его графическому процессору узел с помощью селектора узла, я получаю сообщение об ошибке pod node label selector conflicts with its project node label selector.

Я попытался удалить строку defaultNodeSelector и добавил nodeSelectorLabelBlacklist: - graphic=gpu в PodNodeConstraints раздел в master-config.yaml, но это вообще не сработало. Несмотря на это настроить модули проектов по умолчанию, запланированных на узел gpu: /

мастер-config.yaml

Есть ли у кого-нибудь идея, как этого добиться?

0
alixander 9 Окт 2019 в 16:41

1 ответ

Лучший ответ

Вы установили здесь конфигурацию для всего кластера, которую нельзя переопределить на уровне Pod.

Вероятно, самое простое исправление в этом случае, если у вас есть другие проекты, которые хотят использовать конфигурацию всего кластера, - это отредактировать пространство имен для этого конкретного проекта и установить openshift.io/node-selector: "".

Для каждой рабочей нагрузки в этом проекте установите нужный узел в соответствии с каждым развертыванием или конфигурацией развертывания. Это должно решить проблему для вас.

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

1
PhilipGough 9 Окт 2019 в 14:56