Перейти к содержанию

Требования и подготовка к установке

Система

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

  • 2 гигабайта оперативной памяти
  • 10 гигабайт места на диске
  • 1 ядро процессора

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

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

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

  • CentOS 7.6, 7,8, 8, Stream
  • Ubuntu 18.04, 20.04
  • Fedora 31, 32, 33
  • Debian 9, 10
  • Amazon Linux 2

Минимально рекомендуемый дистрибутив для ознакомления - 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

    • из репозиториев (доступен только JDK 11)
      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, 21. Работа 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 21

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

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

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

# Move JDK files to installation folder
sudo mv -f jdk-21.0.2 /usr/java
[ ! -d /usr/java/jdk-21.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-21.0.2 /usr/java/default

# Make the necessary symlinks
sudo update-alternatives --install "/usr/bin/java" "java" "/usr/java/jdk-21.0.2/bin/java" 1
sudo update-alternatives --install "/usr/bin/jstack" "jstack" "/usr/java/jdk-21.0.2/bin/jstack" 1
sudo update-alternatives --install "/usr/bin/jcmd" "jcmd" "/usr/java/jdk-21.0.2/bin/jcmd" 1
sudo update-alternatives --install "/usr/bin/jmap" "jmap" "/usr/java/jdk-21.0.2/bin/jmap" 1
sudo update-alternatives --set "java" "/usr/java/jdk-21.0.2/bin/java"
sudo update-alternatives --set "jstack" "/usr/java/jdk-21.0.2/bin/jstack"
sudo update-alternatives --set "jcmd" "/usr/java/jdk-21.0.2/bin/jcmd"
sudo update-alternatives --set "jmap" "/usr/java/jdk-21.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