Я давно узнал, что если вы хотите, чтобы экземпляр EC2 мог взаимодействовать с сервисами AWS, такими как SQS, Kinesis и т. Д., Экземпляр должен иметь либо общедоступный IP-адрес, либо что-то внутри VPC должно выполнять NAT. .
Когда я впервые услышал о Конечные точки VPC Ранее в этом году казалось, что это изменит правила игры - способ доступа к этим сервисам из экземпляров, у которых были только частные IP-адреса. Но тот факт, что единственная поддерживаемая служба - это S3, кажется действительно ограничивающим. Каждый экземпляр EC2, которым я в настоящее время управляю, имеет другую зависимость от ресурса AWS, отличного от S3, который требует, чтобы трафик проходил через общедоступный IP-адрес.
Мне любопытно, есть ли какие-либо другие преимущества от использования конечной точки VPC для S3, при том понимании, что остальная часть стека по-прежнему будет зависеть от общедоступных IP-адресов и будет в течение некоторого времени. Есть ли какое-либо измеримое улучшение скорости / пропускной способности или любое другое преимущество, которое может перевесить накладные расходы на управление?
Это старая ветка, но они только что выпустили Конечные точки VPC для DynamoDB. Надеюсь, они добавят их для SQS. Прямо сейчас, поскольку функции Lambda, запущенные в VPC, не имеют доступа к Интернету, они не могут получить доступ к каким-либо общедоступным сервисам AWS без настройки шлюза NAT. Поэтому, если вы хотите, чтобы ваши функции Lambda обращались к ресурсу в VPC, например RDS, и отправляли что-то в SQS, SNS, SES, любой другой общедоступный сервис AWS без конечной точки VPC или вызывали другую функцию Lambda, вы не можете.
Если они добавили конечные точки VPC для SQS, вы могли бы получить доступ к своим ресурсам VPC с помощью лямбда-функции VPC, отправить результаты в очередь SQS, затем иметь общедоступную функцию Lambda и использовать сообщения очереди, получая доступ к любой общедоступной службе AWS (SNS, SES) как необходимо. В настоящее время я застрял «наблюдая» за S3 / DynamoDB, так как не хочу нести расходы на управляемый шлюз NAT.
Узлы VPC без общедоступного IP-адреса должны пройти либо через экземпляр шлюза NAT, либо через службу NAT, чтобы достичь S3 (на мгновение игнорируя конечные точки VPC). Первое - это ограничение доступности и полосы пропускания, второе - стоимость использования байта.
С конечной точкой VPC вашим частным хостам не нужно проходить ни один из них, чтобы добраться до S3, и это может быть дешевле и потенциально быстрее.
Преимущество конечных точек VPC - это прежде всего безопасность. Возможность хранить / извлекать данные в S3 в закрытом частном VPC является привлекательной для тех, кто не использует AWS для общедоступных целей.