Кластер Slurm в облаке Google: данные в смонтированном каталоге в контроллере / узле входа недоступны на вычислительных узлах - PullRequest
1 голос
/ 07 мая 2020

Я создал кластер slurm, следуя этому руководству. Я также создал корзину данных, в которой хранятся некоторые данные, к которым необходимо получить доступ на вычислительных узлах. Поскольку вычислительные узлы совместно используют домашний каталог узла входа в систему, я смонтировал бакет в моем узле входа, используя gcsfuse . Однако, если я выполню простой скрипт test.py, который печатает содержимое смонтированного каталога, он просто пуст. Папка там же, а также файл python.

Есть ли что-то, что я должен указать в файле конфигурации yaml, что позволяет получить доступ к смонтированному каталогу?

Я написал вниз по шагам, которые я предпринял для монтирования каталога:

При создании кластера Slurm с использованием

gcloud deployment-manager deployments create google1 --config slurm-cluster.yaml

важно, чтобы узел, который должен монтировать каталог хранилища, имел достаточные разрешения . Укажите / добавьте следующее в файл slurm-cluster.yaml, если ваш узел входа должен смонтировать данные. (Сделайте то же самое только с узлом контроллера, если хотите).

login_node_scopes          :
     - https://www.googleapis.com/auth/devstorage.read_write

Затем войдите в узел входа и установите gcsfuse. После установки gcsfuse вы можете смонтировать бакет с помощью следующей команды

gcsfuse --implicit-dirs <BUCKET-NAME> target/folder/

Обратите внимание, что учетная запись службы, которая подключается к вашей виртуальной машине, должна иметь права доступа к корзине. Вы можете найти имя учетной записи службы в сведениях о своей виртуальной машине в облачной консоли или выполнив на виртуальной машине следующую команду:

gcloud auth list
...