Установка IVA CS

Сервер телефонии IVA CS может разворачиваться в следующих конфигурациях:

  • односерверная установка

    • файл дистрибутива (для установки при наличии Интернет-соединения):
      ivacs-A.B.C-YYYY-MM-DD-single.tar.gz

    • файл дистрибутива (для установки при отсутствии Интернет-соединения):
      ivacs-A.B.C-YYYY-MM-DD-single-full.tar.gz

  • многосерверная установка

    • файл дистрибутива (для установки при наличии Интернет-соединения):
      ivacs-A.B.C-YYYY-MM-DD-multi.tar.gz

    • файл дистрибутива (для установки при отсутствии Интернет-соединения):
      ivacs-A.B.C-YYYY-MM-DD-multi-full.tar.gz

где:

  • A.B.C — номер версии IVA CS (например, 1.6.0)

  • YYYY-MM-DD — дата сборки дистрибутива в формате год-месяц-день (например, 2025-04-02)

Установку программного обеспечения сервера телефонии IVA CS должен выполнять технический специалист (администратор), обладающий соответствующими знаниями и навыками.

Требования к техническому специалисту
  • общее понимание о работе IPMI, iLO, DRAC или аналогичных технологий для удаленного управления сервером

  • общие навыки создания и управления виртуальными машинами, настройки CPU, памяти, подключения к LAN

  • общие навыки загрузки с виртуального CD-ROM (ISO-образа)

  • общие навыки создания загрузочного диска / флеш-накопителя

  • базовые знания Linux:

    • удаленный доступ к консоли с помощью протокола SSH

    • понимание файловой структуры и навигации по ней

    • редактирование текстовых файлов с помощью текстовых редакторов (например vi или nano)

    • использование распространенных сетевых утилит ping, ifconfig, traceroute и т. д.

    • знание базовых утилит для System Troubleshooting — top, ps, netstat и т. д.

  • знание параметров сетевых настроек: IP-адрес, маска сети, шлюз

  • общее понимание принципов IP-маршрутизации

  • особенности протоколов TCP и UDP

  • общее представление о протоколах DNS, NTP, SMTP, HTTP

  • понимание принципов работы NAT, межсетевых экранов, прокси-серверов

  • общее представление о протоколе SSL, методах обеспечения защищенного обмена данными с использованием SSL-сертификатов

  • общее понимание протоколов работы телефонии и видеоконференцсвязи: SIP, H.323, WebRTC

  • принципы передачи медиа потоков (SDP, RTP)

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

Если в ходе установки IVA CS возникли сложности, то необходимо обратиться к специалистам технической поддержки компании IVA Technologies через сервисный портал

Установку и настройку ПО IVA CS выполняет пользователь с root-правами администратора операционной системы при помощи командной строки (консоли) ОС сервера — используется консоль Linux с оболочкой bash, а также с помощью веб-интерфейса администратора IVA CS.

Программное обеспечение IVA CS поставляется в виде архива формата tar.gz, в который входят все необходимые модули и компоненты для установки.

Перед началом процесса установки соответствующий файл дистрибутива необходимо загрузить на каждый из серверов в папку /home/ivacs.

Если установка ОС сервера проводилась без подключения к сети Интернет, то после ее завершения и перед началом установки ПО IVA CS необходимо дополнительно выполнить следующие действия:

Все действия необходимо проводить в консоли ОС сервера пользователем с root-правами администратора ОС
  1. установить сервер SSH с помощью команды sudo apt install openssh-server

  2. установить пакет sudo с помощью команды apt install sudo

  3. добавить пользователя, который в дальнейшем будет проводить установку и настройку ПО IVA CS, в группу sudo командой /sbin/usermod -aG sudo <USERNAME_ADMIN>, где <USERNAME_ADMIN> — имя пользователя, проводящего установку и настройку ПО IVA CS

Удаленный доступ в консоль по протоколу SSH по умолчанию запрещен.

При необходимости его можно разрешить следующим образом:

  • открыть в текстовом редакторе файл /etc/ssh/sshd_config выполнив команду nano /etc/ssh/sshd_config

  • изменить значение параметра PasswordAuthentication на значение yes

  • сохранить изменения и закрыть файл

  • произвести рестарт сервиса SSH командой systemctl restart ssh

При установке IVA CS запрещено:

  • самостоятельно устанавливать дополнительное ПО

  • создавать файлы в папках, монтированных в оперативной памяти

  • вносить изменения в файлы или создавать дополнительные файлы в папках, монтированных в оперативной памяти

При первичной установке системы все доступные на момент установки права автоматически назначаются Администратору.
Если при обновлении сервера телефонии IVA CS с предыдущих версий на новую в системе появляется новая функциональность, то вместе с новыми функциями появляются новые права доступа. Эти права не активируются по умолчанию. Администратор IVA CS должен вручную назначить необходимые права на возможность использования данных функций

Вход в консоль управления IVA CS из командной строки

  1. открыть командную строку

  2. ввести следующие данные (с соблюдением указанного регистра):

    • логин: root

    • пароль: пароль, заданный при установке операционной системы

    Ввод логина и пароля
  3. после ввода пароля в консоли ОС появится строка для ввода команд управления

    Консоль для ввода команды управления

Односерверная установка

В консоли управления IVA CS:

  1. перейти в папку, в которой находится файл с программным обеспечением сервера телефонии IVA CS, выполнив команду:

    cd /home/ivacs
  2. вывести список всех файлов, находящихся в данной папке, выполнив команду:

    ls
  3. разархивировать файл, выполнив команду:

    • при наличии Интернет-соединения

      tar -xf ivacs-A.B.C-YYYY-MM-DD-single.tar.gz
    • при отсутствии Интернет-соединения

      tar -xf ivacs-A.B.C-YYYY-MM-DD-single-full.tar.gz

    где

    • A.B.C — номер версии IVA CS (например, 1.6.0)

    • YYYY-MM-DD — дата сборки дистрибутива в формате год-месяц-день (например, 2025-04-02)

  4. процесс выполнения установки программного обеспечения сервера телефонии IVA CS описан в файле README.md.
    Для открытия файла README.md необходимо выполнить команду:

    less README.md
  5. для обновления списка пакетов необходимо выполнить команду:

    sudo apt update
  6. установить обновления пакетов, выполнив команду:

    sudo apt -y upgrade
  7. если в системе отключен протокол IPv6, то необходимо:

    • сделать файл non-ipv6.sh исполняемым, выполнив команду:

      chmod +x ./non-ipv6.sh
    • выполнить файл non-ipv6.sh командой:

      sudo ./non-ipv6.sh
      В процессе выполнения файла non-ipv6.sh могут возникать сообщения об ошибках, которые не влияют на процесс установки
  8. если происходит обновление с одной из предыдущих версий, то необходимо остановить службу ivacs, выполнив команду:

    ivacs-ctl stop all
  9. убедиться, что служба ivacs остановлена, выполнив команду:

    ivacs-ctl status all
  10. сделать файл install.sh исполняемым, выполнив команду:

    chmod +x install.sh
  11. выполнить файл install.sh командой:

    sudo ./install.sh

    В процессе выполнения файла install.sh происходит резервное копирование (backup) файла /etc/apt/sources.list в файл /etc/apt/sources.list.ivacs-bak

    Если установка завершилась штатно, то файл /etc/apt/sources.list.ivacs-bak автоматически удаляется. В случае возникновения ошибок необходимо восстановить исходный файл со списком репозиториев /etc/apt/sources.list из файла /etc/apt/sources.list.ivacs-bak

  12. внести изменения в конфигурацию СУБД PostgreSQL:

    • открыть конфигурационный файл базы данных в текстовом редакторе:

      nano /etc/postgresql/<pg_version>/main/postgresql.conf

      где <pg_version> — значение от 14 до 15 (точное значение определяется по окончании выполнения файла install.sh)

    • в строке max_connections изменить значение на 300

    • в строке shared_buffers изменить значение на 256MB

    • сохранить изменения

  13. выполнить перезапуск СУБД PostgreSQL, выполнив команду:

    systemctl restart postgresql
  14. заполнить базу данных одним из следующих способов:

    После установки сервера телефонии IVA CS и заполнения базы данных, в целях безопасности рекомендуется сменить логин (Username), пароль (Password) и порт (Port) подключения к базе данных
    • при первой установке системы для создания и заполнения базы данных выполнить команду:

      sudo ivacs-init-data
    • при обновлении поверх уже установленной системы необходимо выполнить перенос базы данных с помощью команды:

      swl-db migrate
    • при восстановлении базы данных из резервной копии необходимо выполнить команду:

      sudo ivacs-dump import
      Перед началом выполнения команды восстановления данных необходимо убедиться, что файл дампа ivacs.dump.tar.gz находится в папке /home/ivacs

      Для создания резервной копии базы данных и всех файлов необходимо выполнить команду:

      sudo ivacs-dump export
      После восстановления данных из резервной копии рекомендуется запустить процесс переноса базы данных
  15. выполнить запуск всех сервисов IVA CS командой:

    sudo ivacs-ctl start
  16. проверить статус работы всех сервисов командой:

    sudo ivacs-ctl status
  17. узнать IP-адрес расположения IVA CS, выполнив команду:

    sudo ip a

    По полученному IP-адресу производится вход в веб-панель администрирования IVA CS.

Закрытие командной строки в процессе установки ПО IVA CS может привести к нарушениям при установке и последующей переустановке ПО IVA CS

Многосерверная установка

В консоли управления IVA CS необходимо:

Выполнение команд производится поочередно на каждом сервере
  1. перейти в папку, в которой находится файл с программным обеспечением сервера телефонии IVA CS, выполнив команду:

    cd /home/ivacs
  2. вывести список всех файлов, находящихся в данной папке, выполнив команду:

    ls
  3. разархивировать файл, выполнив команду:

    • при наличии Интернет-соединения

      tar -xf ivacs-A.B.C-YYYY-MM-DD-multi.tar.gz
    • при отсутствии Интернет-соединения

      tar -xf ivacs-A.B.C-YYYY-MM-DD-multi-full.tar.gz

    где

    • A.B.C — номер версии IVA CS (например, 1.6.0)

    • YYYY-MM-DD — дата сборки дистрибутива в формате год-месяц-день (например, 2025-04-02)

  4. процесс выполнения установки программного обеспечения сервера телефонии IVA CS описан в файле README.md.
    Для открытия файла README.md необходимо выполнить команду:

    less README.md
  5. для обновления списка пакетов необходимо выполнить команду:

    sudo apt update
  6. установить обновления пакетов, выполнив команду:

    sudo apt -y upgrade
  7. если в системе отключен протокол IPv6, то необходимо:

    • сделать файл non-ipv6.sh исполняемым, выполнив команду:

      chmod +x ./non-ipv6.sh
    • выполнить файл non-ipv6.sh командой:

      sudo ./non-ipv6.sh
      В процессе выполнения файла non-ipv6.sh могут возникать сообщения об ошибках, которые не влияют на процесс установки
  8. внести изменения в конфигурационный файл config:

    • открыть конфигурационный файл в текстовом редакторе:

      nano ./config
    • ввести IP-адреса каждого сервера в формате:

      ivacs0=10.0.201.77
      ivacs1=10.0.201.87
      ivacs2=10.0.201.88

      где ivacs0 — IP-адрес первого сервера, ivacs1 — IP-адрес второго сервера и т. д.

    • установить часовой пояс:

      timezone=Europe/Moscow
    • сохранить изменения

  9. если происходит обновление с одной из предыдущих версий, то необходимо остановить службу ivacs, выполнив команду:

    ivacs-ctl stop all
  10. убедиться, что служба ivacs остановлена, выполнив команду:

    ivacs-ctl status all
  11. сделать файл install.sh исполняемым, выполнив команду:

    chmod +x ./install.sh
  12. выполнить файл install.sh командой:

    sudo ./install.sh <host-number>

    где <host-number> — порядковый номер сервера, начиная с 0 (для первого сервера ivacs0 — порядковый номер 0, для второго ivacs1 — порядковый номер 1 и т. д.)

    Выполнять команду необходимо поочередно на каждом сервере, не дожидаясь окончания её выполнения, указывая вместо host-number порядковый номер сервера, на котором выполняется файл:

    • на первом сервере ivacs0 с порядковым номером 0 — выполнить sudo ./install.sh 0

    • на втором сервере ivacs1 с порядковым номером 1 — выполнить sudo ./install.sh 1 и т. д.

      Во время установки, при ожидании сборки кластера, в консоли ОС выводится информационное сообщение Waiting for local etcd instance…​

      Ожидание сборки кластера

      При успешном выполнении файла в консоли ОС будет отображаться информация о хостах кластера, после чего процедура установки продолжится на каждом сервере

      Успешное выполнение скрипта
      Процедуру установки прерывать не рекомендуется

      В процессе выполнения файла install.sh происходит резервное копирование (backup) файла /etc/apt/sources.list в файл /etc/apt/sources.list.ivacs-bak

      Если установка завершилась штатно, то файл /etc/apt/sources.list.ivacs-bak автоматически удаляется. В случае возникновения ошибок необходимо восстановить исходный файл со списком репозиториев /etc/apt/sources.list из файла /etc/apt/sources.list.ivacs-bak

  13. заполнить базу данных на сервере ivacs0 одним из следующих способов:

    Необходимо выполнять команды только на одном сервере (по умолчанию сервер ivacs0 — главный хост кластера)
    После установки сервера телефонии IVA CS и заполнения базы данных, в целях безопасности рекомендуется сменить логин (Username), пароль (Password) и порт (Port) подключения к базе данных
    • при первой установке системы для создания и заполнения базы данных выполнить команду:

      sudo ivacs-init-data
    • при обновлении поверх уже установленной системы необходимо выполнить перенос базы данных с помощью команды:

      swl-db migrate
    • при восстановлении базы данных из резервной копии выполнить команду:

      sudo ivacs-dump import
      Перед началом выполнения команды восстановления данных необходимо убедиться, что файл дампа ivacs.dump.tar.gz находится в папке /home/ivacs

      Для создания резервной копии базы данных и всех файлов необходимо выполнить команду:

      sudo ivacs-dump export
      После восстановления данных из резервной копии рекомендуется запустить процесс переноса базы данных
  14. выполнить запуск всех сервисов IVA CS, выполнив команду:

    sudo ivacs-ctl start
    Запуск скрипта необходимо выполнять поочередно на каждом сервере

    или

    sudo ivacs-ctl start all
    Запуск скрипта необходимо выполнять только на одном сервере (по умолчанию сервер ivacs0)
  15. проверить статус работы всех сервисов командой:

    sudo ivacs-ctl status
    Запуск скрипта необходимо выполнять поочередно на каждом сервере

    или

    sudo ivacs-ctl status all
    Запуск скрипта необходимо выполнять только на одном сервере (по умолчанию сервер ivacs0)
  16. узнать IP-адрес расположения IVA CS, выполнив команду:

    sudo ip a

    По данному IP-адресу производится вход в веб-панель администрирования IVA CS.

Закрытие командной строки в процессе установки ПО IVA CS может привести к нарушениям при установке и последующей переустановке ПО IVA CS
Между всеми серверами настроена синхронизация каталогов через systemd и unison для совместного использования файлов

Добавление нового сервера в кластер при многосерверной установке

Добавить новый сервер в кластер можно уже после начала процесса многосерверной установки.

Для этого необходимо:

  1. внести изменения в конфигурационный файл config на каждом из уже запущенных серверов (ivacs0, ivacs1, ivacs2):

    • открыть конфигурационный файл в текстовом редакторе:

      nano ./config
    • добавить IP-адрес нового добавляемого сервера (ivacs3) к указанным IP-адресом уже запущенных серверов (ivacs0, ivacs1, ivacs2):

      ivacs0=10.0.201.77
      ivacs1=10.0.201.87
      ivacs2=10.0.201.88
      ivacs3=10.0.201.89

      где ivacs0 — IP-адрес первого сервера, ivacs1 — IP-адрес второго сервера и т. д.

    • сохранить изменения

  2. внести изменения для поддержки нового сервера, выполнив файл install.sh командой:

    Выполнять файл необходимо поочередно на каждом из запущенных серверов (ivacs0, ivacs1, ivacs2), не дожидаясь окончания его выполнения, кроме добавляемого сервера (ivacs3), указывая вместо host-number порядковый номер сервера, на котором выполняется файл
    sudo ./install.sh <host-number> 1

    где <host-number> — порядковый номер сервера, начиная с 0 (для первого сервера ivacs0 — порядковый номер 0, для второго ivacs1 — порядковый номер 1 и т. д.), а 1 — признак, для внесения изменений для поддержки нового сервера

    В процессе выполнения файла install.sh происходит резервное копирование (backup) файла /etc/apt/sources.list в файл /etc/apt/sources.list.ivacs-bak

    Если установка завершилась штатно, то файл /etc/apt/sources.list.ivacs-bak автоматически удаляется. В случае возникновения ошибок необходимо восстановить исходный файл со списком репозиториев /etc/apt/sources.list из файла /etc/apt/sources.list.ivacs-bak

  3. установить IVA CS на новом добавляемом сервере

    Все операции проводятся на новом добавляемом сервере ivacs3
    • сделать файл install.sh исполняемым, выполнив команду:

      chmod +x ./install.sh
    • выполнить файл install.sh командой:

      sudo ./install.sh <host-number> 2

      где <host-number> — порядковый номер нового добавляемого сервера (в нашем случае новый сервер с именем ivacs3 имеет порядковый номер 3), а 2 — флаг для добавления нового сервера

      В процессе выполнения файла install.sh происходит резервное копирование (backup) файла /etc/apt/sources.list в файл /etc/apt/sources.list.ivacs-bak

      Если установка завершилась штатно, то файл /etc/apt/sources.list.ivacs-bak автоматически удаляется. В случае возникновения ошибок необходимо восстановить исходный файл со списком репозиториев /etc/apt/sources.list из файла /etc/apt/sources.list.ivacs-bak

  4. выполнить запуск всех сервисов IVA CS на новом добавляемом сервере, выполнив команду:

    sudo ivacs-ctl start

Обновление сервера телефонии IVA CS

Особенности обновления поверх уже установленной версии

При обновлении сервера телефонии IVA CS необходимо соблюдать последовательность версий.
Обновление сервера телефонии IVA CS с предыдущих версий на новые выполняется без пропуска промежуточных версий.Например, для обновления сервера телефонии IVA CS с версии 1.5 на версию 1.7 необходимо сперва выполнить обновление на версию 1.6, а затем — с версии 1.6 на 1.7.

При обновлении сервера телефонии IVA CS с предыдущих версий на новую, необходимо убедиться, что текущая лицензия, актуальна и для новой версии — проверить параметр version во вкладке Лицензия.Если лицензия неактуальна, то необходимо заново сгенерировать лицензионный файл.

Версии лицензии

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

Обновление IVA CS без остановки сервисов

Актуально только для многосерверных инсталляций

Обновление IVA CS без остановки сервисов позволяет свести к минимуму время простоя системы.

Для обновления сервера телефонии IVA CS необходимо выполнить следующую последовательность действий:

  1. обновить все двоичные файлы, интерфейсные артефакты и скрипты

    Данную операцию необходимо производить поочередно на каждом сервере
    • сделать файл update.sh исполняемым, выполнив команду:

      chmod +x ./update.sh
    • выполнить файл update.sh командой:

      sudo ./update.sh
  2. обновить и перенести базу данных

    Команду необходимо выполнять только на одном сервере (по умолчанию сервер ivacs0 — главный хост кластера)
    swl-db migrate
  3. выполнить перезапуск сервисов логики (Logic) поочередно на каждом сервере кластера

    sudo ivacs-ctl restart logic
    Прежде чем приступать к обновлению каждого следующего сервера кластера, необходимо дождаться полного запуска сервисов логики на текущем обновляемом сервере
  4. выполнить перезапуск сервисов ITS поочередно на каждом сервере кластера

    sudo ivacs-ctl restart its
    Прежде чем приступать к обновлению каждого следующего сервера кластера, необходимо дождаться полного запуска сервисов ITS на текущем обновляемом сервере

Обновление IVA CS до новой версии при обновлении ОС сервера

При обновлении операционной системы сервера, на котором установлен IVA CS, и последующем обновлении IVA CS до новой версии, необходимо выполнить следующую последовательность действий:

Пример: ОС сервера — Debian 10, установленная версия IVA CS — 1.7, требуется обновление ОС сервера до Debian 13, а IVA CS до 1.8
  1. создать резервную копию базы данный и всех файлов IVA CS, выполнив команду:

    sudo ivacs-dump export
  2. установить / обновить ОС сервера до Debian 13 согласно официальной документации

  3. установить новую версию IVA CS

  4. восстановить базу данных и используемые файлы IVA CS из резервной копии, выполнив команду:

    sudo ivacs-dump import

Настройка автоматического сохранения резервной копии базы данных

С целью восстановления данных в случае сбоев, можно настроить автоматическое создание резервных копий базы данных с помощью планировщика задач cron и скрипта ivacs-dump export.

Периодичность создания резервной копии базы данных устанавливается Администратором IVA CS
В случае возникающих сбоев, для восстановления базы данных, необходимо использовать скрипт ivacs-dump import

Рекомендуемое значение RPO (Recovery point objective, целевая точка восстановления): 1 час

Рекомендуемое значение RTO (Recovery time objective, целевое время восстановления): 1 час