В целях обучения я пытаюсь настроить общедоступный / частный VPC в AWS. без с помощью мастера, и я пытаюсь определить, как AWS определяет, является ли подсеть частной или общедоступной.
В качестве аргумента предположим, что у меня в моем vpc 1 ig, 2 таблицы маршрутизации, 2 elbs, 4 экземпляра, 4 подсети и 2 зоны доступности.
[
ig,
routepub,
routepriv (default),
elbpub,
elbpriv,
{ az1: [
subnet1pub: { range: "10.0.0.0/25", instances: [ instance1pub ] },
subnet1priv: { range: "10.0.1.0/25", instances: [ instance1priv ] }
] },
{ az2: [
subnet2pub: { range: "10.0.0.128/25", instances: [ instance2pub ] },
subnet2priv: { range: "10.0.1.128/25", instances: [ instance2priv ] }
] }
]
У меня есть трафик из большого интернета на elbpub
который затем балансирует в моих зонах доступности до instance1pub
и instance2pub
. У меня есть внутреннее приложение (например, база данных или что-то в этом роде) на instance1priv
и instance2priv
который только instance1pub
и instance2pub
могут получить доступ, и трафик к ним сбалансирован через elbpriv
.
Когда я пытаюсь настроить это, мне говорят, что я должен подключить свой ELB с выходом в Интернет к публичной подсети. Итак, как AWS определяет, является ли подсеть публичной или частной?
И, более конкретно, я понимаю, что частный означает, что он должен проходить через NAT, а общедоступный означает, что он проходит через IG, но как мне настроить и / или связать мои таблицы маршрутов / группы безопасности, чтобы отразить это, чтобы это позволило мне получить публичный трафик в мой публичный эльб?
Единственная разница между частными подсетями и общедоступными подсетями состоит в том, что последняя имеет подключение к Интернет-шлюзу, установленное записью таблицы маршрутов подсети [пример: 10.0.10.0/24 ig-abcdef12].
Итак, в вашем примере вы должны поместить ELB перед экземплярами, которые находятся в общедоступной подсети. Для справки, вы также можете создать внутренний балансировщик нагрузки [для таких сценариев, как веб-серверы в общедоступной подсети, общающиеся с серверами приложений, обслуживаемыми ELB, полностью инсайдерскими VPC - частной подсети]