Запуск задания потока данных, развернутого через облако, при создании объекта в корзине хранилища GCP

#google-cloud-storage #google-cloud-dataflow #google-cloud-run #dataflow

#google-облачное хранилище #google-cloud-поток данных #google-cloud-run #поток данных

Вопрос:

Я создал конвейер потока данных, который считывает файл из корзины GCS и обрабатывает его. Он работает, когда я выполняю задание из своего локального.

Я развернул задание потока данных в облачном запуске с помощью триггера на storage.object.create.

Но когда я загружаю какой-либо файл в корзину GCS, в журнале не отображается сообщение о запуске или задание потока данных не выполнено.

Конфигурация триггера

 Ingress:Allow traffic
Authentication:Allow authentication
Event source:Cloud Storage
Event type:google.cloud.audit.log.v1.written
Create time:2021-02-12 (16:05:25)
Receive events from:All regions (global)
Service URL path:/
Service account:sdas-pipeline@sdas-demo-project.iam.gserviceaccount.com
Service name:storage.googleapis.com
Method name:storage.objects.create
 

Чего мне здесь не хватает? Пожалуйста, предложите.

Комментарии:

1. Вы можете ознакомиться с этой статьей, если еще не medium.com/@aishwarya.gupta3 /…

2. Привет, ОП, пожалуйста, предоставьте более подробную информацию. Какова ваша конфигурация триггера? Каков регион / местоположение вашей корзины? Как мы можем воспроизвести вашу проблему? Также обратите внимание, что запуск дуги событий может занять до 10 минут после создания. Можно ли снова запустить событие?

3. Я действительно не понимал связи между потоком данных и запуском в облаке. Запускаете ли вы прямой запуск потока данных внутри облачного запуска?

4. @guillaumeblaquiere Я развертываю свое задание конвейера dataflowrunner внутри облачного запуска после создания образа. Мне нужно запустить это задание, когда файл загружается в корзину gcs.

5. @DonnaldCucharo Я ждал 10 минут после создания триггера, но триггер не работает для создания объекта gcs. Конфигурация триггера обновлена в описании вопроса.

Ответ №1:

Причина, по которой ваша служба облачного запуска не запускается, заключается в том, что при создании / загрузке объекта в вашу корзину могут не записываться журналы аудита. Триггер Eventarc инициируется всякий раз, когда событие записывается в журналы аудита, и по умолчанию облачное хранилище отключено:

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

  1. Включите его при первом создании триггера Eventarc. введите описание изображения здесь
  2. Или перейдите в IAM amp; Admin> Журналы аудита и убедитесь, что все поля проверены для облачного хранилища: введите описание изображения здесь

В качестве ссылки журналы аудита можно просмотреть в разделе Главная> Действие, вот пример:

введите описание изображения здесь

Комментарии:

1. Это полезно, и журнал облачного аудита не включен для GCS в моем проекте. Я попробую после его включения. Спасибо за вашу помощь.