AWS - Настройка доступа к экземпляру EC2 из приложения Beanstalk - PullRequest
10 голосов
/ 09 января 2012

Так что по причинам, которые я бы не стал использовать, моя БД находится на экземпляре EC2 в eu-west-1, и я создал приложение beanstalk на us-east-1. Мне бы хотелось, чтобы мое приложение общалось с этим экземпляром EC2 через порт MySQL (3306).

Может кто-нибудь помочь с тем, как Id настроить это, какие правила входа мне нужно настроить в группе безопасности EC2? Учитывая, что у меня будет несколько версий приложения в beanstalk, IP-адрес может регулярно меняться (после перестройки среды и т. Д.).

1 Ответ

13 голосов
/ 19 января 2012

Важная концепция, касающаяся Правил групп безопасности , которая может отсутствовать, заключается в том, что вы не обязательно указываете IP-адреса в качестве одних только источников трафика, скорее регулярно будут ссылаться и на другие группы безопасности:

Источником может быть индивидуальный IP-адрес (203.0.113.1), диапазон адреса (например, 203.0.113.0/24), или группа безопасности EC2 . группа безопасности может быть другой группой в вашем аккаунте AWS, группой в другая учетная запись AWS или сама группа безопасности.

Указав группу безопасности в качестве источника, вы разрешаете входящий трафик от всех экземпляров, принадлежащих к исходной группе безопасности . [...] Вы можете указать другую группу безопасности в своей учетной записи, если вы создаете трехуровневый веб-сервис (см. раздел «Создание трехуровневого веб-сервиса»).

[Акцент шахты]

Следовательно, вам просто нужно добавить группу безопасности экземпляров приложения Beanstalk в качестве источника трафика для TCP-порта 3306 в группе безопасности экземпляра MySQL.


Продолжая это

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

Например, рекомендуемая практика для больших архитектур предлагает указывать выделенную группу безопасности для «роли», которую имеют ваши экземпляры (вместо того, чтобы накапливать несколько правил в одной группе безопасности, как обычно), например, у нас есть группы безопасности, такие как 'role-ssh' (TCP-порт 22) и 'role-mysql' (TCP-порт 3306), которые назначаются экземплярам EC2 по мере необходимости. Вы можете прочитать больше об этой концепции, например, в Группы безопасности - наиболее недооцененная функция Amazon EC2 .

...