Передайте данные предприятия - крошечные объемы - к AWS S3 для приложения Heroku

Что было бы Вы предлагать, чтобы наилучший вариант состоял в том, чтобы получить данные "предприятия" от клиента в AWS S3, таким образом, мы можем обеспечить, Heroku разместил SaaS?

Объемы данных являются крошечными, это - просто ежедневные записи spreadsheet/csv. Но предоставлять решение для SaaS мы должны заставить данные от клиентской машины до S3 для нашего приложения Heroku использовать. Это, очевидно, должно быть автоматизированным, безопасным процессом.

Возможные варианты, о которых я знаю:

  1. SFTP файлы через сервис как cloudgates.net или cyberduck.io - но это нуждается в процедуре планирования, которая будет настроена так или иначе, и кажется негибким.

  2. Используйте Шлюз устройства хранения данных AWS для перемещения файлов от обособленной машины до S3. Это может быть обреченным на неудачу, поскольку внутренний штат IT не может иметь возможности устанавливать VM, настраивать Шлюз и этажерку.

  3. "Oracle Безопасный Резервный Облачный Модуль для Amazon S3", Если мы могли бы заставить клиент создавать базу данных Oracle, в которую они помещают данные, в которых мы нуждаемся каждый день, Oracle RMAN, могла отправить его в S3. Но мы хотим файлы простого текста в S3, не базу данных Oracle, поэтому возможно, это не имеет смысла (поскольку у нас есть приложение Heroku не экземпляр EC2 с Oracle).

Это кажется мне, единственный подходящий подход к автоматизированной загрузке данных должен написать код с помощью SDK AWS в Java или .NET, который работает на клиентской машине. Это проблематично, если это не что-то в доме, сотрудники IT довольны поддержанием, особенно мудры безопасностью.

Я думал, что спрошу здесь в случае, если я пропускаю простую опцию, это - улучшение по сравнению с Bob из учетных записей, загружающих файлы через наше приложение Heroku к S3 каждое утро?

0
задан 9 March 2015 в 12:42
1 ответ

Я использую SSH (SFTP) для подобных задач. Шаги, чтобы сделать это красивым и безопасным:

  1. Создайте сертификат клиента для ваших нужд загрузки и установите он у вас .ssh / authorized_keys или аналогичный в экземпляре S3.
  2. Используйте sftp -i <открытый ключ> <файл> <удаленное расположение> , чтобы удалить файл там, где вам это нужно.
  3. Поместите команду из шага 2 выше в задание cron - затем порезвитесь.

Это работает очень хорошо для меня почти в каждом случае, когда мне нужно специальное соединение с сервером. Если вы работаете в Windows, использование Putty вместе с Puttygen, Plink и службой планировщика Windows для достижения чего-то подобного должно быть возможным.

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

РЕДАКТИРОВАТЬ: У Amazon есть дружественное руководство по битам сертификата здесь .

1
ответ дан 4 December 2019 в 17:02

Теги

Похожие вопросы