Какой сервис я должен использовать для обработки моих файлов в хранилище Cloud Storage и загрузки результатов? - PullRequest
0 голосов
/ 08 февраля 2019

У меня есть программа, которая обрабатывает некоторые файлы.Мне нужно:

  • запустить изображение по умолчанию в облаке Google (я думаю, что докер должен быть хорошим решением) с помощью API или команды запуска
  • загрузить файлы из хранилища Google
  • обработайте его, запустите мое программное обеспечение, используя эти загруженные файлы
  • загрузите результат в хранилище Google
  • закройте изображение, ожидая, что счет больше не будет выставлен

Что я знаю, так это то, как создать свой образ, хе-хе.Но я не могу найти какую-либо информацию, сообщающую мне, какой облачный сервис Google я должен использовать или даже могу ли я сделать это так, как я думаю.Я думаю, что я не использую правильные ключевые слова, чтобы найти то, что мне нужно.

Я смотрел на Kubernetes, но не мог понять, как манипулировать этими экземплярами для выполнения однократной обработки.

[РЕДАКТИРОВАТЬ]

Объясняя лучше процесс, у меня есть приложение, которое получает изображения и отправляет их в хранилище Google.После этого мне нужно обработать эти изображения, применить фильтры, пространственную привязку, разделить изображение и т. Д. Поэтому я хочу запустить изображение докера для его обработки и снова загрузить результаты в облако Google.

Ответы [ 2 ]

0 голосов
/ 10 февраля 2019

Исходя из ваших правок, в которых вы указали, что у вас уже есть приложение, которое вставляет изображения в Google Cloud Storage, самым простым вариантом будет использование облачных функций, которые запускаются при добавлении, изменении или удалении объектов в корзинах Cloud Storage..

Вы можете следовать учебному пособию Cloud Functions для Cloud Storage , чтобы получить представление об общем процессе, а затем реализовать свой собственный код, который выполняет ваши конкретные задачи.Существуют и другие учебные пособия, такие как Учебник Imagemagick для облачных функций , которые также могут относиться к типу обработки, которую вы собираетесь выполнять.

Облачные функции - это, вероятно, ваш самый легкий подход.Конечно, вы могли бы делать более полнофункциональные приложения, но это, вероятно, излишне, дороже и сложнее.Вы можете написать свой код обработки в Node.js, Python или Go.

0 голосов
/ 08 февраля 2019

Если вы используете любую из сред выполнения, поддерживаемых облачными функциями Google , это самый простой способ выполнить такие операции (например, извлечь что-то из Google Cloud Storage, выполнить некоторые действия с этими файлами и загрузитьих снова).Облачные функции будут вызваны событием по вашему выбору, и после задания оно умрет.

Следующим вариантом по сложности будет развертывание приложения Google App Engine в стандартной среде .Это позволяет вам развернуть свое собственное приложение, написанное на на любом из поддерживаемых языков для этой среды.Несмотря на то, что в вашем приложении есть трафик, у вас будут обслуживать экземпляры, но количество запущенных экземпляров может снизиться до 0, когда они не будут обслуживаться, что будет означать меньшую стоимость.

Другой вариант будет Google App Engine в гибкой среде .Этот продукт позволяет развертывать приложение в любой пользовательской среде выполнения.У этой опции всегда работает хотя бы один экземпляр, поэтому он никогда не выключится.

Наконец, вы можете использовать Google Compute Engine для "создания и запуска виртуальных машин в инфраструктуре Google".В противном случае, чем GAE, это не то, что управляется Google, что означает, что большая часть конфигурации зависит от вас.В этом случае вам потребуется программно указать, что ваша виртуальная машина должна завершить работу после завершения операций.

...