Skip to end of metadata
Go to start of metadata

You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 2 Next »

Описание

Экземпляры WCS на Amazon поддерживают балансировку нагрузки при помощи AWS elastic load balancer (ELB).

При этом WebSocket-соединения будут автоматически распределены между активными серверами в балансировщике нагрузки. В случае применения заданной политики масштабирования (если целевой показатель, например, загрузка процессора на сервере, достиг заданного значения) будут запущены новые экземпляры сервера и автоматически добавлены в балансировщик.

Для настройки потребуются следующие компоненты

  • Образ, на основе которого будут создаваться новые экземпляры сервера при масштабировании
  • Балансировщик нагрузки
  • Конфигурация для запуска
  • Группа масштабирования

Запуск балансировщика нагрузки

1. Создание образа

1.1. Создайте экземпляр из готового образа FlashphonerWebCallServer AMI и настройте WCS

  • активируйте лицензию
  • импортируйте SSL сертификат
  • настройте сервер

1.2. В консоли AWS, выберите созданный экземпляр, затем в меню “Actions” | “Image” | “Create Image” создайте новый образ:

2. Создание балансировщика нагрузки

2.1. В консоли AWS, перейдите в пункт “EC2” | “Load Balancers” и нажмите “Create Load Balancer”

2.2 Выберите тип “Classic Load Balancer” (Данный тип позволяет выбрать порты для контроля состояния сервера)

2.3. На первом шаге настройки, добавьте требуемые протоколы. Например TCP, port 8080 для WebSocket соединений (ws:<host>:8080).

2.4. Определите группу безопасности.

2.5. Настройте проверку состояния сервера

Используйте следующие URL для контроля состояния

- по HTTP: http://WCS_ADDRESS:8081/?action=stat

- по HTTPS: https://WCS_ADDRESS:8444/?action=stat

2.6. Добавьте существующие экземпляры сервера, по необходимости

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

2.7. Завершите создание балансировщика нагрузки

3. Создание новой конфигурации запуска

3.1. В консоли AWS, выберите пункт “EC2” | “Launch Configurations” и нажмите “Create launch configuration”

3.2. Выберите образ, созданный на шаге 1, с требуемой настройкой WCS

3.3. Завершите создание конфигурации запуска

В разделе Advanced details может быть настроен мониторинг с периодичностью до 1 минуты.

4. Создание новой группы масштабирования

4.1.В консоли AWS, выберите пункт“EC2” | “Auto Scaling Groups” и нажмите “Create Auto Scaling group”

4.2. Выберите требуемую конфигурацию запуска, или выберите "Create a new launch configuration" для создания новой

4.3. Настройте детали группы масштабирования

  • добавьте требуемые подсети
  • добавьте требуемый балансировщик нагрузки

4.4. Настройте политики масштабирования

4.5. Завершите создание группы масштабирования

Тестирование

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

Если экземпляр сервера (один или более из добавленных в балансировщик) работает, с ним может быть установлено WebSocket соединение, например ws://<Load balancer DNS name>:8080.

Пример Two-way Streaming, (открытый по адресу балансировщика или конкретного экземпляра) может быть использован для установки WebSocket соединения:

Чтобы убедиться, что соединения распределяются между активными экземплярами в балансировщике нагрузки, используйте страницу статистики: http://WCS_ADDRESS:8081/?action=stat

Откройте страницу каждого экземпляра для контроля значения connection_websocket:

  • No labels