Сообщение об ошибке, относящееся к учетной записи службы, а также тот факт, что проект уже существует, указывает на то, что googlecloudapiclient, используемый Ray Autoscaler, аутентифицирован для учетной записи службы, которая не имеет доступа к проекту.
Если это правда, то вот то, во что я верю.Обычно при запуске Ray GCP Autoscaler сначала проверяется, существует ли проект с данным идентификатором.В вашем случае этот запрос возвращает «not found», потому что нет проекта с данным идентификатором, связанным с учетной записью службы.Теперь, когда проект не существует, Рэй автоматически попытается создать его для вас.Как правило, если мы создали новый проект GCP с учетной записью пользователя (то есть не обслуживающей учетной записью), вновь созданный проект будет связан с организацией по умолчанию учетной записи пользователя.Однако учетные записи служб должны явно указывать родительскую организацию при создании нового проекта.Если мы посмотрим на функцию ray.autoscaler.config._create_project , то увидим, что аргументы, передаваемые методу projects.create
, опускают аргумент 'parent', который объясняет, почему вы видите ошибку.
Чтобы убедиться, что это правда (и, надеюсь, решить проблему), вы можете изменить учетную запись, используемую для аутентификации с помощью googlecloudapiclient.Я считаю, что учетные данные, используемые для запросов googlecloudapiclient, такие же, как и в Google Cloud SDK, поэтому вы должны иметь возможность настраивать учетные записи с помощью команды gcloud auth login .
IЯ думаю, что Ray Autoscaler можно улучшить, позволив пользователю явно указать родительскую организацию при создании нового проекта, или, по крайней мере, предоставив более подробное сообщение об ошибке для этого конкретного случая.
Надеюсь, это решит вашу проблему,Если это не так, и вы считаете, что это проблема Autoscaler, не стесняйтесь открыть запрос о проблеме или функции на странице Ray Issues !