Моя архитектура похожа на
Route53 -> SG -> ALB -> Target Group (IP) -> Task.
В Route 53 у меня определены пространства имен. Один публичный, а другой частный.
domain.io ---- Private
domain.io ---- Public
У меня есть две службы: A и B.
ALB выглядят так:
<DNS of public LB attached to service A> = A-ALB
<DNS of public LB attached to service B> = B-ALB
В частном пространстве имен записи выглядят так:
service-a.domain.io - Type A record - A-ALB
service-b.domain.io - Type A record - B-ALB
В пространстве имен Public записи выглядят так:
service-a.domain.io - Type A record - A-ALB
service-b.domain.io - Type A record - B-ALB
A-ALB и B-ALB имеют прикрепленную к ним группу безопасности. Эта группа безопасности содержит блок CIDR VPC, чтобы разрешить прохождение всего входящего трафика от VPC.
All traffic ---- All ---- All --- 10.0.0.0/16
Задания:
Task Private IP Public IP
A 10.0.0.1 3.0.0.1
B 10.0.0.2 3.0.0.2
Когда служба A вызывает службу B по URL-адресу service-b.domain.io, она берет значение из частного пространства имен и пытается получить доступ к задаче через целевую группу. Но поскольку там указан балансировщик нагрузки, служба A пытается получить доступ к службе B, используя общедоступный IP-адрес службы A. А общедоступный IP-адрес службы A (3.0.0.1) не указан в группе безопасности, время ожидания истекает, и мы не получаем ответа. Но когда я занесу этот IP-адрес в белый список, служба A сможет без проблем получить доступ к службе B.
Поскольку балансировщик нагрузки является общедоступным балансировщиком нагрузки, он разрешает общедоступный IP-адрес задачи. Служба B позволяет мне подключать только один балансировщик нагрузки, частный или общедоступный. Так как эта служба также должна быть доступна публично, мне определенно нужно выбрать общедоступный балансировщик нагрузки.
Я не возражаю добавить IP-адрес в группу безопасности, но каждый раз, когда я повторно развертываю свою службу, а так как это дальняя служба, публичный и частный IP-адреса задачи меняются, и мне нужно добавить новый общедоступный IP-адрес в группу безопасности.
Как следует обслуживать службу доступа A B, чтобы не требовать изменения группы безопасности? Стоит ли вносить изменения в Route 53? ALBs? ТГ? Или сервис?