Я тестирую виртуальный балансировщик нагрузки, работающий на экземпляре EC2. Я хотел бы иметь возможность изменить настройку и протестировать балансир в различных условиях. Чтобы смоделировать физический балансировщик нагрузки, я назначил экземпляру три сетевых интерфейса:
Чтобы смоделировать физические соединения, я хотел бы применить к этим интерфейсам некоторые правила группы безопасности AWS, чтобы были разрешены только соединения между определенными экземплярами в VPC (IE: они подключены друг к другу). Для этого я создал отдельную группу безопасности для каждого интерфейса (внутреннего, управленческого и внешнего).
Насколько я понимаю, правила внутри группы безопасности применяются ко всему входящему и исходящему трафику на интерфейсах, которые им принадлежат. Поскольку каждый интерфейс в этой настройке выполняет свою роль, я бы хотел, чтобы каждый интерфейс принадлежал одному (и только один) группа безопасности.
Мне неясно, что означает принадлежность самого экземпляра (в отличие от его интерфейсов) к группе безопасности. Я считаю, что, поскольку экземпляр балансировщика нагрузки будет взаимодействовать по всем трем интерфейсам, он должен принадлежать всем трем группам безопасности.
К сожалению, когда я применяю к экземпляру внутренние группы безопасности и группы безопасности управления, внешний интерфейс также должен быть включен во внутренние группы безопасности и группы безопасности управления.
Аналогичным образом, когда я удаляю внутренние группы безопасности и группы безопасности управления из внешнего интерфейса, он также удаляет экземпляр из этих групп безопасности.
Применяются ли группы безопасности к экземпляру как лишний ярлык конфигурации (IE: на самом деле имеют значение только группы безопасности, применяемые к сетевым интерфейсам), есть ли другой способ достичь нужной конфигурации, или я неправильно думаю о проблеме и есть ли причина, по которой AWS предотвращает эту конфигурацию?
Хотя можно предположить, что экземпляры AWS имеют группы безопасности, на практике у сетевых интерфейсов есть группы безопасности. Каждый интерфейс (предоставляется с экземпляром или ENI) может иметь свои собственные группы безопасности. Любую группу безопасности можно применить к сколь угодно большому количеству сетевых интерфейсов.
Потому что так это работает и как это работает задокументировано.
Возможность применить группу безопасности к экземпляру - это просто синтаксический сахар. Как задокументировано, он применяет группу безопасности к основному сетевому интерфейсу этого экземпляра.