Могу ли я использовать создание общего ресурса между экземплярами EC2 и моей локальной машиной?

Просто чтобы дать вам контекст ... Я новичок в мире AWS и всех услуг, которые предоставляет.

У меня есть унаследованное приложение, в котором мне нужно поделиться некоторыми binarys с клиентом, и я пытался использовать экземпляр ec2 (Amazon Linux AMI) с samba, чтобы отобразить его на локальной машине Windows. Я был в состоянии установить соединение с другими экземплярами ec2 (тот же vpc), просто как попытка. Но я не смог этого сделать с моей машиной Windows или даже с Linux Linux VM. Правила входа для этого концепта ec2 был полностью открыт (весь трафик разрешен).

Главный вопрос

Возможно ли это сделать? Совместно использовать файловую систему между экземплярами ec2 на локальном компьютере (через Интернет)?


Просто сказать: S3 хранилище не вариант. И в моем регионе FSX все еще не реализован, и по причинам задержки это не пойдет.

Пожалуйста, задавайте столько вопросов, сколько вы хотите, я постараюсь ответить на них как можно быстрее. Доброго времени суток.

Всего 1 ответ


TL; DR - это возможно, но не существует «простого» решения (на мой взгляд).

Я подумал о двух возможных решениях, которые вы можете реализовать, здесь мы идем ...

1: AWS EFS, AWS Direct Connect и докер

Возможным решением будет использование AWS Elastic File System (EFS), AWS Direct Connect и контейнера Docker Linux.

Недостатки

  1. Если вы впервые столкнетесь с вышеперечисленными сервисами AWS или Docker, узнайте о них.
  2. Цены EFS - это не так дешево, и вам также нужно учитывать входящий и исходящий трафик, лучше всего использовать калькулятор, который находится на странице цен
  3. Производительность EFS - если вы только обмениваетесь файлами, то все должно быть в порядке, но если вы ожидаете получить высокие скорости, помните, что это не том EBS, поэтому для более высоких скоростей вам нужно платить больше денег
  4. Ценообразование в AWS Direct Connect - это также необходимо учитывать
  5. Безопасность - я не уверен, насколько важны ваши данные, но вам нужно убедиться, что вы создаете очень строгий VPC с правилами групп безопасности и списками доступа к сети - читайте о рекомендациях по безопасности VPC.

Шаги для реализации решения

Следуйте пошаговому руководству: создание и монтирование файловой системы на месте с помощью AWS Direct Connect и VPN , а также пошаговые инструкции по ее объединению с Docker

  1. (Необязательно) Чтобы сделать это немного проще - для того, чтобы Windows «поддерживала» файловую систему Linux, вы должны использовать Windows Git Bash . Если вы не уверены, как использовать установку сторонних приложений в Windows Git Bash (например, aws-vault ), прочтите это сообщение в блоге.
  2. Создайте EFS в AWS и подключите его к своему экземпляру EC2, подробнее об этом здесь
  3. Используйте AWS Direct Connect для подключения к VPC с локального компьютера с Windows
  4. Установите Docker для Windows на свой локальный компьютер
  5. Создайте том Docker и подключите к нему тот же EFS - хороший пример для этого шага
  6. Проверьте это - SSH к вашему экземпляру EC2, создайте файл на томе EFS и затем проверьте в локальном контейнере Docker Linux, что этот файл появляется на томе EFS

Я пропустил меры безопасности, потому что от вас зависит, насколько строго вы хотите, чтобы ваше решение было.

2: Использование S3 в качестве общей файловой системы

Вы можете попробовать этот инструмент s3fs-fuse , но вам все равно нужно будет использовать контейнер Docker Linux, поскольку вы работаете в Windows. Я не проверял это, но это выглядит многообещающим. Вы можете прочитать этот пост в блоге , это пошаговое руководство о том, как это сделать, а также поделиться некоторыми другими возможными решениями.


Есть идеи?

10000