Система

Для установки WebCallServer потребуется Linux x86_64 сервер со следующими минимальными характеристиками:

На сервере должны быть установлены:

Поддерживаемые дистрибутивы Linux

Для установки подходит любой из дистрибутивов: CentOS, Debian, Ubuntu, RedHat, Fedora.  В настоящее время протестирована и подтверждена работоспособность на следующих версиях дистрибутивов:

Минимально рекомендуемый дистрибутив для ознакомления - CentOS 7.6 или Ubuntu 18.04, работа на более старых дистрибутивах не гарантируется.

Альтернативные ОС на базе Linux

WCS также может быть установлен и запущен на некоторых альтернативных операционных системах на базе Linux после проведении необходимой подготовки. Работа в других редакциях не гарантируется.

Astra Linux SE Орел 1.73

1. Установка зависимостей

sudo apt-get update
sudo apt-get install wget curl

2. Установка JDK

sudo apt install openjdk-11-jdk

RED OS MUROM 7.3 Certified

1. Установка зависимостей

sudo yum update

2. Установка JDK вручную по инструкции (в репозиториях доступны только JRE, по умолчанию в Yandex.Cloud и других облачных провадерах может быть установлена JRE OpenJDK 1.8.0)

ALT Server 10.1

1. Установка зависимостей

sudo apt-get update
sudo apt-get install wget nano fontconfig libGL fonts-ttf-ms fonts-ttf-PTAstra fonts-ttf-paratype-pt-* fonts-ttf-ubuntu-font-family
fc-cache -f -v
sudo fc-cache -f -v

2. Добавление пользователя root в /etc/sudoers

sudo nano /etc/sudoers

Необходимо раскомментировать следующую строку в файле

...
##
## Runas alias specification
##

##
## User privilege specification
##
# Uncomment the following line
root ALL=(ALL:ALL) ALL
...

3. Установка JDK (в репозиториях доступны только JRE)

# Download JDK archive
wget https://download.java.net/java/GA/jdk15.0.2/0d1cfde4252546c6931946de8db48ee2/7/GPL/openjdk-15.0.2_linux-x64_bin.tar.gz
gzip -d openjdk-15.0.2_linux-x64_bin.tar.gz
tar -xf openjdk-15.0.2_linux-x64_bin.tar
# Prepare installation folder
sudo mkdir -p /usr/java
[ -d /usr/java/jdk-15.0.2 ] && sudo rm -rf /usr/java/jdk-15.0.2
 
# Move JDK files to installation folder
sudo mv -f jdk-15.0.2 /usr/java
[ ! -d /usr/java/jdk-15.0.2/bin ] && exit 1
 
# Make /usr/java/default symlink to installation folder for convenience
sudo rm -f /usr/java/default
sudo ln -sf /usr/java/jdk-15.0.2 /usr/java/default
 
# Make the necessary symlinks
sudo ln -sf /usr/java/jdk-15.0.2/bin/java /usr/bin/java
sudo ln -sf /usr/java/jdk-15.0.2/bin/jstack /usr/bin/jstack
sudo ln -sf /usr/java/jdk-15.0.2/bin/jcmd /usr/bin/jcmd
sudo ln -sf /usr/java/jdk-15.0.2/bin/jmap /usr/bin/jmap

Подготовка к установке

Убедитесь, что сервер имеет подключение к сети и у вас есть root - доступ по SSH.

Укажите в /etc/hosts имя сервера

127.0.0.1   localhost localhost.localdomain localhost4 localhost4.localdomain4
::1         localhost localhost.localdomain localhost6 localhost6.localdomain6
192.168.1.5   yourdomain.com

проверьте доступность командой

ping $HOSTNAME

В некоторых дистрибутивах (например, CentOS) по умолчанию может отсутствовать wget. В этом случае установите wget командой

sudo yum install wget

В свою очередь, в некоторых дистрибутивах Ubuntu и Debian может отсутствовать curl. В этом случае установите curl командой

sudo apt update && apt upgrade
sudo apt install curl

Так выглядят сведения о системе на сервере, готовом к установке WCS, в окне SSH-клиента PuTTY. Обратите внимание, что используется 64-разрядная операционная система.

Установка JDK

Часто в дистрибутивах Linux имеется предустановленная JVM.

Рекомендуется установить последнюю версию JDK (Java Development Kit), т.к JDK имеет набор полезных инструментов диагностики, которого нет в JVM.

В настоящее время, к использованию рекомендуются JDK 8, 12, 14, 15, 16, 17. Работа WCS на других версиях JDK может быть нестабильной.

Установка JDK из репозитория

Установка JDK из репозитория на примере CentOS производится командой

sudo yum -y install java-1.8.0-openjdk-devel

Ручная установка

JDK 12

Приведем пример ручной установки OpenJDK 12 с загрузкой дистрибутива с https://download.java.net/java/GA:

# Download JDK package
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

# Prepare installation folder
sudo mkdir -p /usr/java
[ -d /usr/java/jdk-12.0.2 ] && sudo rm -rf /usr/java/jdk-12.0.2

# Move JDK files to installation folder
sudo mv -f jdk-12.0.2 /usr/java
[ ! -d /usr/java/jdk-12.0.2/bin ] && exit 1

# Make /usr/java/default symlink to installation folder for convenience
sudo rm -f /usr/java/default
sudo ln -sf /usr/java/jdk-12.0.2 /usr/java/default

# Make the necessary symlinks
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"

JDK 14

Приведем пример ручной установки OpenJDK 14 с загрузкой дистрибутива с https://download.java.net/java/GA:

# Download JDK package
sudo rm -rf jdk*
curl -s https://download.java.net/java/GA/jdk14.0.1/664493ef4a6946b186ff29eb326336a2/7/GPL/openjdk-14.0.1_linux-x64_bin.tar.gz | tar -zx
[ ! -d jdk-14.0.1/bin ] && exit 1

# Prepare installation folder
sudo mkdir -p /usr/java
[ -d /usr/java/jdk-14.0.1 ] && sudo rm -rf /usr/java/jdk-14.0.1

# Move JDK files to installation folder
sudo mv -f jdk-14.0.1 /usr/java
[ ! -d /usr/java/jdk-14.0.1/bin ] && exit 1

# Make /usr/java/default symlink to installation folder for convenience
sudo rm -f /usr/java/default
sudo ln -sf /usr/java/jdk-14.0.1 /usr/java/default

# Make the necessary symlinks
sudo update-alternatives --install "/usr/bin/java" "java" "/usr/java/jdk-14.0.1/bin/java" 1
sudo update-alternatives --install "/usr/bin/jstack" "jstack" "/usr/java/jdk-14.0.1/bin/jstack" 1
sudo update-alternatives --install "/usr/bin/jcmd" "jcmd" "/usr/java/jdk-14.0.1/bin/jcmd" 1
sudo update-alternatives --install "/usr/bin/jmap" "jmap" "/usr/java/jdk-14.0.1/bin/jmap" 1
sudo update-alternatives --set "java" "/usr/java/jdk-14.0.1/bin/java"
sudo update-alternatives --set "jstack" "/usr/java/jdk-14.0.1/bin/jstack"
sudo update-alternatives --set "jcmd" "/usr/java/jdk-14.0.1/bin/jcmd"
sudo update-alternatives --set "jmap" "/usr/java/jdk-14.0.1/bin/jmap"

JDK 15

Приведем пример ручной установки OpenJDK 15 с загрузкой дистрибутива с https://download.java.net/java/GA:

# Download JDK package
sudo rm -rf jdk*
curl -s https://download.java.net/java/GA/jdk15.0.2/0d1cfde4252546c6931946de8db48ee2/7/GPL/openjdk-15.0.2_linux-x64_bin.tar.gz | tar -zx
[ ! -d jdk-15.0.2/bin ] && exit 1

# Prepare installation folder
sudo mkdir -p /usr/java
[ -d /usr/java/jdk-15.0.2 ] && sudo rm -rf /usr/java/jdk-15.0.2

# Move JDK files to installation folder
sudo mv -f jdk-15.0.2 /usr/java
[ ! -d /usr/java/jdk-15.0.2/bin ] && exit 1

# Make /usr/java/default symlink to installation folder for convenience
sudo rm -f /usr/java/default
sudo ln -sf /usr/java/jdk-15.0.2 /usr/java/default

# Make the necessary symlinks
sudo update-alternatives --install "/usr/bin/java" "java" "/usr/java/jdk-15.0.2/bin/java" 1
sudo update-alternatives --install "/usr/bin/jstack" "jstack" "/usr/java/jdk-15.0.2/bin/jstack" 1
sudo update-alternatives --install "/usr/bin/jcmd" "jcmd" "/usr/java/jdk-15.0.2/bin/jcmd" 1
sudo update-alternatives --install "/usr/bin/jmap" "jmap" "/usr/java/jdk-15.0.2/bin/jmap" 1
sudo update-alternatives --set "java" "/usr/java/jdk-15.0.2/bin/java"
sudo update-alternatives --set "jstack" "/usr/java/jdk-15.0.2/bin/jstack"
sudo update-alternatives --set "jcmd" "/usr/java/jdk-15.0.2/bin/jcmd"
sudo update-alternatives --set "jmap" "/usr/java/jdk-15.0.2/bin/jmap"

JDK 16

Приведем пример ручной установки OpenJDK 16 с загрузкой дистрибутива с https://download.java.net/java/GA:

# Download JDK package
sudo rm -rf jdk*
curl -s https://download.java.net/java/GA/jdk16/7863447f0ab643c585b9bdebf67c69db/36/GPL/openjdk-16_linux-x64_bin.tar.gz | tar -zx
[ ! -d jdk-16/bin ] && exit 1

# Prepare installation folder
sudo mkdir -p /usr/java
[ -d /usr/java/jdk-16 ] && sudo rm -rf /usr/java/jdk-16

# Move JDK files to installation folder
sudo mv -f jdk-16 /usr/java
[ ! -d /usr/java/jdk-16/bin ] && exit 1

# Make /usr/java/default symlink to installation folder for convenience
sudo rm -f /usr/java/default
sudo ln -sf /usr/java/jdk-16 /usr/java/default

# Make the necessary symlinks
sudo update-alternatives --install "/usr/bin/java" "java" "/usr/java/jdk-16/bin/java" 1
sudo update-alternatives --install "/usr/bin/jstack" "jstack" "/usr/java/jdk-16/bin/jstack" 1
sudo update-alternatives --install "/usr/bin/jcmd" "jcmd" "/usr/java/jdk-16/bin/jcmd" 1
sudo update-alternatives --install "/usr/bin/jmap" "jmap" "/usr/java/jdk-16/bin/jmap" 1
sudo update-alternatives --set "java" "/usr/java/jdk-16/bin/java"
sudo update-alternatives --set "jstack" "/usr/java/jdk-16/bin/jstack"
sudo update-alternatives --set "jcmd" "/usr/java/jdk-16/bin/jcmd"
sudo update-alternatives --set "jmap" "/usr/java/jdk-16/bin/jmap"

JDK 17

Приведем пример ручной установки OpenJDK 17 с загрузкой дистрибутива с https://download.java.net/java/GA:

# Download JDK package
sudo rm -rf jdk*
curl -s https://download.java.net/java/GA/jdk17.0.2/dfd4a8d0985749f896bed50d7138ee7f/8/GPL/openjdk-17.0.2_linux-x64_bin.tar.gz | tar -zx
[ ! -d jdk-17.0.2/bin ] && exit 1

# Prepare installation folder
sudo mkdir -p /usr/java
[ -d /usr/java/jdk-17.0.2 ] && sudo rm -rf /usr/java/jdk-17.0.2

# Move JDK files to installation folder
sudo mv -f jdk-17.0.2 /usr/java
[ ! -d /usr/java/jdk-17.0.2/bin ] && exit 1

# Make /usr/java/default symlink to installation folder for convenience
sudo rm -f /usr/java/default
sudo ln -sf /usr/java/jdk-17.0.2 /usr/java/default

# Make the necessary symlinks
sudo update-alternatives --install "/usr/bin/java" "java" "/usr/java/jdk-17.0.2/bin/java" 1
sudo update-alternatives --install "/usr/bin/jstack" "jstack" "/usr/java/jdk-17.0.2/bin/jstack" 1
sudo update-alternatives --install "/usr/bin/jcmd" "jcmd" "/usr/java/jdk-17.0.2/bin/jcmd" 1
sudo update-alternatives --install "/usr/bin/jmap" "jmap" "/usr/java/jdk-17.0.2/bin/jmap" 1
sudo update-alternatives --set "java" "/usr/java/jdk-17.0.2/bin/java"
sudo update-alternatives --set "jstack" "/usr/java/jdk-17.0.2/bin/jstack"
sudo update-alternatives --set "jcmd" "/usr/java/jdk-17.0.2/bin/jcmd"
sudo update-alternatives --set "jmap" "/usr/java/jdk-17.0.2/bin/jmap"

Проверка установки

Для проверки установки JDK введите команду

java -version

Пример выполнения команды:

Так выглядит сервер с установленной JVM / JDK. Обратите внимание на строку: 64-Bit Server VM. Java работает в режиме 64-bit и с серверными настройками.

Установка fontconfig

Если планируется использование MCU микшера для конференций с отображением имени пользователя, и установлен JDK 12 или 14, может быть необходимо установить библиотеку fontconfig:

sudo yum install -y fontconfig