Назад | Перейти на главную страницу

Является ли AWS Elastic Load Balancer единственной точкой отказа?

Я собираюсь перенести наше приложение на Amazon Web Services. Планируется, что все экземпляры EC2 будут отражены в двух зонах доступности. Из-за затрат на передачу данных мы будем оставаться в одном регионе AWS (Орегон).

Наличие нескольких зон доступности избавляет от единой точки отказа для наших серверов приложений и баз данных, но как насчет ELB? Если у меня есть один ELB, распределяющий трафик между двумя зонами доступности, будет ли ELB также размещаться в этих двух зонах доступности?

Что делает Amazon, чтобы ELB не стал SPoF?

По сути, ELB - это просто набор экземпляров EC2. Когда ты создать ELB, вы указываете зоны доступности, в которых должен находиться этот балансировщик нагрузки. Затем в этих зонах будут созданы экземпляры, составляющие балансировщик нагрузки. Они избегают единой точки отказа, возвращая несколько IP-адресов при поиске в DNS. Например:

  • Поиск DNS для website.example.com возвращает CNAME website-elb-12345.eu-west-1.elb.amazonaws.com
  • Поиск также возвращает информацию для website-elb-12345.eu-west-1.elb.amazonaws.com. В нем указано, что сайт имеет IP-адрес 1.2.3.4 и IP-адрес 2.3.4.5.

Клиент должен выбрать, какой IP-адрес использовать для соединения. IP-адреса не всегда будут возвращаться в одном и том же порядке при поиске в DNS. Клиент может повторить попытку с альтернативного IP-адреса, если он не может подключиться с первой попытки.

TTL в записях DNS для ELB составляет всего 60 секунд, что означает, что если экземпляр ELB умрет и будет заменен, DNS будет обновляться повсюду довольно быстро.

На самом деле это может быть SPoF, но я считаю, что это будет SPoF только в том же регионе.

Вот почему AWS предлагает использовать проверку работоспособности Route 53, чтобы обнаруживать и перенаправлять трафик, который может попасть в неработоспособный ELB.

Вы можете использовать функции проверки работоспособности Amazon Route 53 и восстановления после отказа DNS, чтобы повысить доступность приложений, работающих за Elastic Load Balancers. Маршрут 53 откажется от балансировщика нагрузки, если в балансировщике нагрузки не зарегистрированы работоспособные экземпляры EC2. или если сам балансировщик нагрузки неисправен.

Источник: http://aws.amazon.com/elasticloadbalancing/

Вы можете обойти свой SPoF с одной зоной доступности, создав группу автомасштабирования, где, если ваш единственный ELB не соответствует X-фактору, будь то загрузка, время отклика и т. Д., Создается новый ELB. ELB - это, по сути, экземпляры EC2, на которых запущен собственный код AWS.