Я немного новичок в Amazon EC2 и сетевых технологиях, поэтому заранее прошу прощения, если это глупый вопрос.
Я хочу создать VPC в EC2 с двумя подсетями: общедоступной для экземпляра веб-приложения и частной для экземпляров баз данных.
Дело в том, что моему приложению требуется несколько внешних IP-адресов. На самом деле мне просто нужно инициировать вызовы curl из частных экземпляров на разные внешние IP-адреса. Каждый частный экземпляр должен иметь доступ ко всем внешним IP-адресам. Для входящего маршрута должно хватить одного IP.
Используя шлюзы VPC и NAT, я смог сделать curl из частного экземпляра на интернет-страницы, но я смог подключить только один эластичный IP-адрес к NAT, и я не нашел способа добавить дополнительные эластичные IP-адреса к существующему NAT.
Я думаю, что могу заставить его работать, поместив два прокси-сервера в экземпляр в общедоступной подсети, прослушивая два порта и перенаправляя на эластичные IP-адреса, но я не мог избавиться от HTTP_X_FORWARDED_FOR в заголовке.
Я полагаю, что это должно быть каким-то образом возможно. Это должно быть похоже на случай нескольких веб-сайтов с разными IP-адресами в одном VPC. Есть ли способ сделать это?
Вы можете добавить несколько эластичные сетевые интерфейсы к экземпляру, хотя чем меньше экземпляр, тем меньше интерфейсов / IP-адресов у вас может быть - где-то есть диаграмма, но я не могу ее найти прямо сейчас. Вы можете присоединить несколько EIP к каждому ENI, и у вас может быть несколько ENI.
Есть два типа экземпляров NAT:
Тип, который вы создаете самостоятельно, будет более гибким, поскольку вы можете добавлять ENI, но, вероятно, менее надежным, чем шлюзы NAT, управляемые AWS. Я думаю, что это тот тип, который вам понадобится с учетом ваших требований.
Этот заголовок обычно добавляется эластичным балансировщиком нагрузки. Не знаю, как его удалить.
Я не уверен в вашем запросе «Это должно быть похоже на случай нескольких веб-сайтов с разными IP-адресами в одном VPC. Есть ли способ сделать это?». Вы можете разместить в VPC столько веб-сайтов, сколько захотите, на одном или нескольких экземплярах. Я размещаю пять доменов / веб-сайтов на одном t2.micro, но большие веб-сайты могут находиться за ELB и могут иметь десятки или сотни серверов, обеспечивающих сайт. Я думаю, вам нужно более конкретно указать, чего вы здесь пытаетесь достичь.