Как предоставить учетные данные в Apache Beam Python программно? - PullRequest
0 голосов
/ 05 декабря 2018

Мы используем Apache луч через воздушный поток.Для учетной записи GCS по умолчанию задана переменная среды GOOGLE_APPLICATION_CREDENTIALS.Мы не хотим изменять переменную среды, так как это может повлиять на другие процессы, запущенные в это время.Я не смог найти способ изменить учетную запись службы облачных потоков данных Google программным способом.Мы создаем конвейер следующим образом: p = beam.Pipeline (argv = self.conf)

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

1 Ответ

0 голосов
/ 05 декабря 2018

Вы можете указать служебную учетную запись при запуске задания с базовым флагом: --serviceAccount=my-service-account-name@my-project.iam.gserviceaccount.com

Этой учетной записи потребуется присоединенная роль Dataflow Worker плюс все, что вы хотите (GCS / BQ / Etc). Подробности здесь .Вам не нужно, чтобы SA был сохранен в GCS, или ключи локально, чтобы использовать его.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...