Балансировщик нагрузки AWS со статическим IP-адресом
У меня есть настройка, работающая на облаке Amazon с несколькими экземплярами EC2, проходящими через балансировщик нагрузки.
Важно, чтобы сайт имел уникальный (статический) IP или набор IP-адресов, поскольку я подключаю сторонние API-интерфейсы, которые принимают только запросы, сделанные из IP-адресов, добавленных в их белый список.
В принципе, если мы не можем предоставить этим сторонним сторонам статический IP-адрес или диапазон IP-адресов, из которых всегда будут поступать запросы с сайта, мы не сможем сделать с ними никаких вызовов.
Кто-нибудь знает, как достичь этого, поскольку я знаю, что Эластичные IP-адреса не совместимы с балансировщиками нагрузки?
Если бы я искал IP-адрес DNS-сервера балансировки нагрузки (например, dualstack.awseb-BAMobile-ENV-xxxxxxxxx.eu-west-1.elb.amazonaws.com разрешает до 200.200.200.200), будет ли это IP-адрес Статическая?
Любая помощь/рекомендации очень ценится. Ребята.
Ответы
Ответ 1
IP-адреса вашего балансира нагрузки не являются статическими. В любом случае ваш входящий балансировщик нагрузки не будет использоваться для исходящих соединений.
Вы можете назначить эластичные IP-адреса фактическим экземплярам балансировки нагрузки, которые затем будут использоваться для исходящих запросов. Вы получаете 5 бесплатных эластичных ips, и я считаю, что вы можете подать заявку на получение большего количества, если вам это нужно.
Кроме того, если вы используете VPC, и если ваши экземпляры находятся в частной подсети, они смогут получить доступ к Интернету только через выбранный вами экземпляр NAT, и вы, конечно же, можете назначить эластичный IP для экземпляров NAT
Ответ 2
Вы можете атташе добавить дополнительный ENI (Elastic Network Interface) к экземпляру вашего VPC. Таким образом, ELB (балансировщик эластичной нагрузки) направляет входящие запросы Интернета на веб-сервер, а дополнительный ENI будет использоваться для подключения к вашим сторонним (или внутренним) запросам (сеть управления).
Более подробную информацию об этом можно найти в документах VPC
Ответ 3
На самом деле единственный способ, которым я знаю, - это настроить свои экземпляры в VPC и иметь выделенные NAT-экземпляры, с помощью которых маршрутизируется весь исходящий трафик.
Вот ссылка на документацию AWS о том, как настроить экземпляры NAT:
http://docs.amazonwebservices.com/AmazonVPC/latest/UserGuide/VPC_NAT_Instance.html
Ответ 4
Вы можете присоединить эластичный IP к экземплярам, но не к ELB (это то, что видит клиент).
Вы можете использовать полный балансировщик остального уровня прокси-уровня 7, например HAProxy:
Или коммерческая реализация, такая как Loadbalancer.org или Riverbed (Zeus)
Они оба находятся в AWS Marketplace:
Ответ 5
Это старый вопрос, но теперь все изменилось.
Теперь вы можете создать сетевой ELB для получения LB со статическим IP-адресом.
from https://docs.aws.amazon.com/elasticloadbalancing/latest/network/introduction.html
- Поддержка статических IP-адресов для балансировки нагрузки. Вы также можете
назначить один Эластичный IP-адрес для каждой подсети, включенной для загрузки
балансир.
https://aws.amazon.com/blogs/aws/new-network-load-balancer-effortless-scaling-to-millions-of-requests-per-second/
Ответ 6
Вы можете использовать службу DNS, такую как DNSMadeeasy, которая позволяет записывать записи "ANAME". Они действуют как запись A, но могут указываться на FQDN или IP. Поэтому в этом случае вы можете указать его на ELB DNS.
Dave
Ответ 7
Вы можете использовать как уже упомянутое приложение loadbalancer.org в AWS. Он заменит экземпляр AWS NAT и предоставит большую функциональность и включит как Layer4, так и Layer7 вместе с завершением SSL и WAF.
Лучше всего вы получите бесплатную поддержку в своей 30-дневной пробной версии в AWS, чтобы помочь вам встать и работать.
Да, я предвзятый, поскольку я работаю для loadbalancer.org, но я бы сказал, что ничто не осмелилось ничего выиграть.