Все, что вам нужно знать о Application Load Balancer



Этот блог дает вам подробные сведения о балансировщике нагрузки приложений. Он демонстрирует создание и использование NLB в интересах вашего приложения.

Чем больше улик у детектива, тем легче ему раскрыть дело. Именно так работает балансировщик нагрузки. Чем больше информации имеет балансировщик нагрузки, тем лучше он работает. В этом блоге я собираюсь рассказать о Application Load Balancer и о том, как он распределяет входящий трафик, получая более широкий доступ к заголовкам пакетов, HTTPS и деталям HTTPS.

Темы охватывали:





Что такое Application Load Balancer?

Я уверен, что вы слышали о модели OSI. Это семиуровневая архитектура, в которой каждый уровень выполняет определенную задачу по передаче данных по всему миру. Эти уровни включают в себя - физический уровень, уровень канала передачи данных, сетевой уровень, транспортный уровень, сеансовый уровень, уровень представления и уровень приложений. Application Load Balancer работает на 7-м уровне модели OSI, как следует из названия. Этоимеет возможность исследовать контент на уровне приложений и маршрутизировать трафик на основе полученной информации. Контент уровня приложения включает сведения о пакете, сведения о HTTP и HTTPS. Это делает маршрутизацию проще, быстрее и намного эффективнее. Это один из наиболее широко используемых .

таблица смешивания данных левое соединение

Работа балансировщика нагрузки приложений

Балансировщик нагрузки приложения состоит из слушатели и правила . Когда клиент делает запрос, слушатель его подтверждает. Правила - это руководящие принципы, которые регулируют маршрутизацию каждого клиентского запроса после того, как он услышан слушателем. Правила состоят из трех компонентов - Целевая группа , Приоритет и Условия . Целевые группы состоят из зарегистрированные цели (серверы, на которые будет маршрутизироваться трафик). Каждая целевая группа направляет запросы к одному или нескольким зарегистрированным целям, например экземплярам EC2, с использованием указанного вами протокола и номера порта. Таким образом, когда слушатель получает запрос, он проходит через порядок приоритетов, чтобы определить, какое правило применить, анализирует правила и в зависимости от условия решает, какая целевая группа получит запрос.



ALB - Балансировщик нагрузки приложений - Edureka

Вы всегда можете добавлять или удалять цели из вашего балансировщика нагрузки по мере необходимости, не нарушая общий поток запросов к вашему приложению. ELB динамически масштабирует ваш балансировщик нагрузки, то есть по мере того, как трафик вашего приложения изменяется с течением времени, обеспечивая готовность вашего приложения к различным ситуациям.

Функции, которые делают его лучше, чем классический балансировщик нагрузки

Маршрутизация на основе содержимого: Application Load Balancer должен иметь доступ к заголовкам HTTP и, следовательно, маршрутизировать трафик на их основе.



Поддержка контейнерных приложений: Благодаря мощной концепции контейнеризации большинство пользователей упаковывают свои микросервисы в контейнеры и размещают их на инстансах EC2. Это позволяет одному экземпляру EC2 запускать несколько служб. Application Load Balancer поддерживает эти приложения на основе контейнеров. Один экземпляр может размещать несколько контейнеров и прослушивать несколько портов за одной целевой группой. Он также выполняет детальные проверки работоспособности на уровне портов.

Лучшие показатели: Application Load Balancer выполняет проверки работоспособности для каждого порта, а также создает отчет. Проверка работоспособности определяет диапазон приемлемых HTTP-ответов. Эти проверки работоспособности также сопровождаются подробными кодами ошибок.

Маршрутизация на основе пути: Application Load Balancer поддерживает маршрутизацию на основе путей и узлов, чего нельзя сказать о Classic load balancer. Yвы можете направлять запросы в несколько доменов с помощью одного балансировщика нагрузки.

Зарегистрируйте IP-адрес и лямбда-функции: Помимо регистрации экземпляров EC2, вы также можете зарегистрировать IP-адреса и функции Lambda для своей цели. И, следовательновы также можете регистрировать цели, находящиеся за пределами VPC.

Предоставляет дополнительные протоколы и рабочие нагрузки:

Application Load Balancer предоставляет два дополнительных протокола - HTTP / 2 и WebSocket.

HTTPS / 2: Этот протокол поддерживает мультиплексированные запросы через одно соединение. Это снижает сетевой трафик.

WebSocket: Этот протокол позволяет вам установить длительное TCP-соединение между клиентом и сервером. Этот протокол намного более эффективен по сравнению со старыми методами.

Демонстрация: создание балансировщика нагрузки приложений и демонстрация его работы

Давайте лучше разберемся в Application Load Balancer, создав его и используя. В этой демонстрации я собираюсь создать два экземпляра EC2, развернуть веб-сервер Nginx на обоих из них с разным выводом HTML (их легко различить), создать балансировщик нагрузки приложения, зарегистрировать эти два экземпляра в этом балансировщике нагрузки и проверить если к веб-серверу, развернутому на экземплярах, можно получить доступ через DNS балансировщика нагрузки. Давайте начнем.

Шаг 1: и подключите свои экземпляры к Putty или cmder.

Шаг 2: Установите веб-сервер Nginx на оба экземпляра. Выполните следующие команды для установки Nginx:

$ sudo apt-get update $ sudo apt install nginx $ sudo ufw app list $ sudo ufw allow 'Nginx HTTP' $ sudo ufw status

Скопируйте общедоступный IP-адрес экземпляров и вставьте его в браузер как URL-адрес, чтобы проверить, успешно ли установлен Nginx.

Шаг 3 : Изменить вывод HTML веб-сервера Nginx, чтобы избежать путаницы между развертываниями в обоих экземплярах.

$ cd / var / www / html $ sudo vi index.nginx-debian.html

Измените содержимое тега H1 на «Добро пожаловать в Nginx! - СЕРВЕР 1 ». Сделайте то же самое с другим экземпляром, но измените его на «Добро пожаловать в Nginx! - СЕРВЕР 2 ».

Шаг 4: Создайте балансировщик нагрузки приложения. На панели навигации под БАЛАНСИРОВКИ НАГРУЗКИ , выбирать Балансировщики нагрузки и нажмите на Создайте в Application Load Balancer.

Вы перейдете на другую страницу. Выберите Создать балансировщик нагрузки Там.

Давайте настроим балансировщик нагрузки. В поле «Имя» введите имя, которое должно быть у вашего балансировщика нагрузки. Для «Схема» выберите «Доступ в Интернет» или «Внутренний». В данном случае я выбрал выход в Интернет. Выход в Интернет в основном направляет запросы от клиентов к цели через Интернет.

Для слушателей по умолчанию используется TCP-трафик на порт 80, и я продолжаю использовать ту же конфигурацию слушателя по умолчанию. Если вы хотите добавить еще одного слушателя, вы можете выбрать Добавить слушателя .

Для зоны доступности выберите VPC, который вы использовали для создания инстансов EC2. Выберите зону доступности и подсеть для этой зоны доступности для каждой зоны доступности, используемой для создания экземпляра EC2.

При необходимости вы добавляете теги в свой балансировщик нагрузки. Теги особенно полезны, когда у вас есть несколько балансировщиков нагрузки.

Нажмите на Далее: Настройка параметров безопасности . Вы можете увидеть предупреждение, но можете проигнорировать его.

На этом этапе вы можете настроить безопасность вашего балансировщика нагрузки. Вы можете либо Создать новую группу безопасности или Выберите существующую группу безопасности . В данном случае я выбрал существующую группу безопасности.

как использовать анаконду для Python

После завершения настройки безопасности нажмите Далее: Настроить маршрутизацию . Выберите Новая целевая группа. Добавить имя ты хотел бы дать свой Целевая группа . Выберите Тип цели как Instance, поскольку мы прикрепляем экземпляры. Приложение Load Balancer также позволяет прикреплять IP-адреса и лямбда-функции. Пусть Протокол и Порт быть по умолчанию.

Я ничего не менял в Проверки здоровья и Расширенные проверки здоровья либо. Нам вполне достаточно настроек по умолчанию.

Нажмите на Далее: Зарегистрируйте цели чтобы добавить ваши цели (в данном случае экземпляры) в ваш балансировщик нагрузки.

Выберите экземпляры, которые вы хотите добавить в качестве целей, а затем нажмите Добавить в регистр.

Ваши цели (экземпляры) теперь зарегистрированы в Load Balancer.

Нажмите на Далее: Обзор . Проверьте балансировщик нагрузки и, наконец, нажмите Создайте .

Теперь балансировщик нагрузки создан, и вы можете проверить его статус.

Ура !! Вы успешно создали балансировщик нагрузки приложения. Теперь давайте проверим, действительно ли это работает.

как создать динамический массив в java

Шаг 5: Скопируйте DNS-имя вашего балансировщика нагрузки и вставьте его в браузер как URL-адрес. Вы должны увидеть результат первого экземпляра.

Теперь перейдите в другой браузер и вставьте то же DNS-имя, вы должны увидеть вывод второго экземпляра.

И это показывает, что балансировщик нагрузки балансирует на нем нагрузку двух экземпляров. Нагрузки на оба ваших экземпляра EC2 будут обрабатываться этим балансировщиком нагрузки. Еще один способ проверить работу балансировщика нагрузки - закрыть один экземпляр и проверить, развернуты ли его развертывания на DNS балансировщика нагрузки.

На этом мы подошли к концу этого блога о Application Load Balancer. Я надеюсь, что вы, ребята, поняли концепцию этой удивительной услуги, предоставляемой Amazon. Чтобы узнать больше о таких блогах, посетите сайт « '.

Если вы хотите узнать больше об облачных вычислениях и построить карьеру в облачных вычислениях, ознакомьтесь с нашими который включает в себя живое обучение под руководством инструктора и реальный проектный опыт. Это обучение поможет вам глубже понять облачные вычисления и поможет вам достичь мастерства в этой области.

Есть вопрос к нам? Пожалуйста, укажите это в разделе комментариев, и мы свяжемся с вами или разместим ваш вопрос на . В Edureka Community есть более 1000000 фанатиков, готовых помочь.