Skip to end of metadata
Go to start of metadata

Начиная со сборки 5.2.679WCS может быть развернут на Google Cloud Platform как отдельно стоящий медиа сервер, CDN с низкой задержкой и CDN c балансировкой нагрузки между узлами.

В любом случае, прежде, чем начать развертывание, необходимы:

  • активный аккаунт в GCP и проект, созданный в этом аккаунте
  • лицензия WCS для активации на сервере/серверах
  • дополнительно, доменные имена для привязки к экземплярам серверов

Развертывание сервера

Развертывание и запуск экземпляра виртуальной машины

1. В консоли Google Cloud перейдите в раздел "Compute Engine - VM instances" и нажмите "Create VM instance", чтобы начать создание экземпляра сервера. Выберите имя сервера, регион и зону расположения датацентра, а также конфигурацию сервера

2. В разделе "Boot disk" нажмите "Change". Выберите образ на базе CentOS 7.6

3. На вкладке "Security" добавьте публичный ключ для доступа к серверу по SSH, если у Вас нет ключей, привязанных к проекту

4. На вкладке "Network" выберите внешний и внутренний IP адреса:

  • если сервер предполагается использовать как Origin в CDN, рекомендуется выбрать статический внутренний IP адрес;
  • если сервер должен иметь внешние точки входа (например, использоваться для публикаций и воспроизведения), рекомендуется выбрать статический внешний IP адрес для привязки к нему доменного имени

5. Нажмите "Create"

Экземпляр сервера будет создан и запущен

Настройка межсетевого экрана

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

1. Перейдите в раздел "VPC network - Firewall" и создайте правило "wcs-ports"

2. Разрешите входящий трафик с любых узлов

3. Укажите порты, используемые WCS, и нажмите "Create"

Установка и настройка WCS

1. Установите JDK. Для работы в условиях больших нагрузок рекомендуется JDK 12 или 14

#!/bin/bash
sudo rm -rf jdk*
curl -s https://download.java.net/java/GA/jdk12.0.2/e482c34c86bd4bf8b56c0b35558996b9/10/GPL/openjdk-12.0.2_linux-x64_bin.tar.gz | tar -zx
[ ! -d jdk-12.0.2/bin ] && exit 1
sudo mkdir -p /usr/java
[ -d /usr/java/jdk-12.0.2 ] && sudo rm -rf /usr/java/jdk-12.0.2
sudo mv -f jdk-12.0.2 /usr/java
[ ! -d /usr/java/jdk-12.0.2/bin ] && exit 1
sudo rm -f /usr/java/default
sudo ln -sf /usr/java/jdk-12.0.2 /usr/java/default
sudo update-alternatives --install "/usr/bin/java" "java" "/usr/java/jdk-12.0.2/bin/java" 1
sudo update-alternatives --install "/usr/bin/jstack" "jstack" "/usr/java/jdk-12.0.2/bin/jstack" 1
sudo update-alternatives --install "/usr/bin/jcmd" "jcmd" "/usr/java/jdk-12.0.2/bin/jcmd" 1
sudo update-alternatives --install "/usr/bin/jmap" "jmap" "/usr/java/jdk-12.0.2/bin/jmap" 1
sudo update-alternatives --set "java" "/usr/java/jdk-12.0.2/bin/java"
sudo update-alternatives --set "jstack" "/usr/java/jdk-12.0.2/bin/jstack"
sudo update-alternatives --set "jcmd" "/usr/java/jdk-12.0.2/bin/jcmd"
sudo update-alternatives --set "jmap" "/usr/java/jdk-12.0.2/bin/jmap"

2. Установите дополнительные инструменты и библиотеки

sudo yum install -y tcpdump mc iperf3 fontconfig

3. Остановите firewalld (поскольку межсетевой экран был настроен на уровне проекта, нет необходимости в закрытии портов на уровне виртуальной машины)

sudo systemctl stop firewalld
sudo systemctl disable firewalld

4. Отключите SELinux

sudo setenforce 0

5. Установите WCS

curl -OL https://flashphoner.com/downloads/builds/WCS/5.2/FlashphonerWebCallServer-5.2.xxx.tar.gz
tar -xzf FlashphonerWebCallServer-5.2.xxx.tar.gz
cd FlashphonerWebCallServer-5.2.xxx
sudo ./install.sh

Здесь xxx - номер сборки WCS

6. Активируйте Вашу лицензию

cd /usr/local/FlashphonerWebCallServer/bin
sudo ./activation.sh

7. Настройте WCS (пример настроек Origin сервера для публикации WebRTC и RTMP потоков)

Не изменяйте IP адреса в параметрах ip, ip_local и cdn_ip, они будут проставлены автоматически при старте сервера.

Запуск и тест WCS

1. Запустите WCS

sudo systemctl start webcallserver

2. Войдите в веб-интерфейс сервера, откройте пример Two Way Streaming, опубликуйте и проиграйте поток test

Развертывание CDN

1. Разверните и настройте Origin сервер, как описано выше.

2. Разверните и настройте Edge сервер (пример настроек для воспроизведения WebRTC)

Не изменяйте IP адреса в параметрах ip, ip_local и cdn_ip, они будут проставлены автоматически при старте сервера. Укажите в настройке cdn_point_of_entry статический внутренний IP адрес Origin сервера.

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

1. Запустите WCS на Origin и Edge экземплярах ВМ.

2. Войдите в веб интерфейс Origin сервера, опубликуйте поток test в примере Two Way Streaming

3. Войдите в веб интерфейс Edge сервера, проиграйте поток test в примере Player