Я настраиваю свой первый VPC с помощью мастера AWS VPC, и у меня возникли проблемы с пониманием того, какие типы экземпляров следует разместить в общедоступной подсети, а какие - в частной подсети.
Для меня имеет смысл поместить все экземпляры RDS в частный режим, но если у меня есть экземпляр EC2 (например, содержащий сайт WordPress), следует ли мне поместить его в частную подсеть? или, может быть, он должен быть частным, иметь перед ним балансировщик нагрузки в общедоступной подсети, и, если ему нужен контент S3, он должен вызвать NAT?
Каковы лучшие практики или решения, за и против для принятия этого решения?
Экземпляры в общедоступной подсети могут получать входящий трафик непосредственно из Интернета, тогда как экземпляры в частной подсети - нет. Экземпляры в общедоступной подсети могут отправлять исходящий трафик непосредственно в Интернет, а экземпляры в частной подсети - нет. Вместо этого экземпляры в частной подсети могут получить доступ к Интернету с помощью экземпляра преобразования сетевых адресов (NAT), который вы запускаете в общедоступной подсети.
Исходя из вышеизложенного, вам нужно будет создать как частные, так и общедоступные подсети - я обычно создаю одну частную и одну общедоступную для каждой зоны доступности.
Вам также потребуется создать и настроить экземпляр NAT и назначьте его в качестве интернет-шлюза для вашего VPC.
Ваши экземпляры ELB должны быть подключены к вашим общедоступным подсетям и должны иметь возможность балансировать подключения к экземплярам в частных подсетях.
Ваши экземпляры EC2 (в вашем примере WordPress) будут запущены в одном из ваших частный подсети. Обратите внимание, что в идеале должно быть более одного экземпляра в каждой зоне доступности, для которой настроены ваши ELB.
Если вы планируете иметь только один сервер в ELB или запускать все ваши инстансы EC2 в одной зоне доступности, вам нужно будет только настроить свой ELB для общественный подсеть в этой зоне доступности.