Я создал кластер 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