0

У меня есть 2 экземпляра AWS EC2, живущих внутри 2 разные подсети моего vpc.aws ec2 экземпляры в разных подсетей vpc друг к другу

Я хотел бы, чтобы приложение рубин работает по первой инстанции (например App # 1), чтобы вызвать конечные точки приложения (скажем App # 2) работает на 2-й инстанции.

Я также хотел бы, чтобы мои пользователи напрямую вызывали конечные точки Приложение № 2 в своем браузере.


Вот что я пытался (и в основном не удался):

  1. [Sucess!] Я добавил известный IP-адрес своих пользователей к входящим правилам Load Balancer группы безопасности от Приложение № 2 и подтвердили, что они могут получить доступ к своим конечным точкам App # 2.

  2. [Отказ] Я добавил Load Balancer Security Group ID из App # 1 к входящих правил для балансировки нагрузки Группа безопасности App # 2. Но мои журналы говорят мне Приложение № 1 не может получить доступ к конечным точкам Приложение № 2.

  3. [! Нормально] Я добавил Группа VPC безопасности идентификатор App # 1 к входящих правил балансировки нагрузки группы безопасности App # 2 - Нету, по-прежнему не работает. (Как-то, когда я запустил экземпляр для App # 1, aws автоматически создал 2 группы безопасности для этого экземпляра - один для VPC и один для балансировки нагрузки ... Я понятия не имею, почему и как это произошло ...)

  4. [Отказ] Я добавил CIDR для подсети App # 1 был в к входящих правил балансировки нагрузки группы безопасности App # 2. Еще нет радости.

  5. [Success ... Роду] Я назначил упругий IP для экземпляра, запускаемого App # 1 и добавил, что в входящих правил балансировки нагрузки группы безопасности App # 2. Это работает, но я бы предпочел не использовать этот метод, так как хотел бы в будущем увеличить масштаб своего App # 1, и я не знаю, как автоматически назначать более эластичные IP-адреса для новых экземпляров, когда они разворачиваются, добавляют их в входящие правила, а затем как-то удалите их, когда они закрываются.

Я чувствую, что должно быть действительно чистое решение этой проблемы, и я, вероятно, пропустил что-то больно очевидное. Может кто-нибудь, пожалуйста, дайте мне подсказку?

Любая помощь будет оценена!

ответ

0

Похоже, что вы можете использовать общедоступный IP-адрес своего балансировочного устройства, поэтому он выглядит так, как будто трафик поступает извне. Попробуйте использовать частный IP/DNS, если он есть, или настройте второй, балансировщик нагрузки, ориентированный на внутреннюю сторону.

+0

Да, вы абсолютно правы. Моя команда в конечном итоге решила использовать другой тип процесса аутентификации/авторизации, который дает нам больше контроля, чем настройка группы безопасности на AWS, поэтому мы не стали заниматься этим вопросом дальше. Но, насколько мы наблюдали, да, трафик считался прибывающим извне, хотя все экземпляры были в пределах одного и того же VPC. Я обязательно буду помнить ваше предложение в следующий раз, когда я столкнусь с чем-то подобным! Благодаря! :) – charint

1

Так App # 2 находится в публичной подсети, App # 1 находится в частной подсети. Например, диаграмма будет выглядеть примерно так:

Internet => LB # 2 => Приложение № 2: 80 (в открытой подсети) => LB # 1 => Приложение № 1: 4567 (в частной подсети)

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

Сообщите мне, какой уровень имеет проблему.