Если у меня работает VPC и некоторые серверы, расположенные в частной части этой сети, которые выполняют внутреннюю обработку, загружая файлы с Amazon s3, могу ли я получить доступ к S3 изнутри, чтобы получить эти файлы? Или мне нужно получить доступ к общедоступному Интернету через NAT, загружать файлы s3 через https и обрабатывать таким образом?
С таким именем пользователя, как «Интернет», я ожидаю, что вы это знаете. Но раз уж вы спросили ...
:)
VPC являются действительно частный. Только трафик, который вы явно разрешаете, может проходить через границы VPC.
Таким образом, внутри VPC экземплярам, которым требуется доступ к внешним ресурсам, либо нужно назначить EIP (в этом случае они могут получить доступ к внешним ресурсам с помощью инфраструктуры AWS), либо вам необходимо предоставить хост NAT (в этом случае весь трафик выходит из строя). VPC через собственный NAT).
Если вы решите предоставить свой собственный узел NAT, помните, что вам необходимо отключить проверку источника / назначения на этом экземпляре, а также добавить маршрут по умолчанию в вашу частную подсеть, указывающий на узел NAT.
ОБНОВЛЕНИЕ (2015-05-10): 11 мая 2015 г. AWS выпустила «Конечная точка VPC» для S3, что позволяет получить доступ к S3 непосредственно из VPC без необходимости проходить через прокси-хост или экземпляр NAT. К счастью, из уважения к действительно частной природе VPC, эта функция по умолчанию отключена, но ее можно легко включить с помощью консоли AWS или их API.
Если ваш экземпляр находится в публичной подсети VPC, тогда:
Если ваш экземпляр находится в частной подсети VPC, тогда:
В итоге, чтобы получить доступ к S3, у вас должен быть доступ в Интернет.
Несколько дней назад вы теперь можете получить доступ к S3 через VPC без использования NAT или общедоступного IP-адреса.
Вам не нужно «выходить» и «возвращаться» или что-либо менять в способе передачи данных в регионах AWS. Без комиссии за перевод в / из ведер в том же регионе. За хранение нужно платить.