Файл настроек wcs-manager.properties

Основные настройки административного модуля расположены в файле /usr/local/FlashphonerWebCallServer/conf/wcs-manager.properties.


Настройка

Значение по умолчанию

Описание

spring.datasource.url

jdbc:h2:C:/tmp/wcs_manager;FILE_LOCK=NO

JDBC URL базы данных

spring.datasource.driverClassName

org.h2.Driver

Класс драйвера базы данных

spring.datasource.database

org.hibernate.dialect.H2Dialect

Используемый диалект SQL

spring.datasource.username

admin

Имя пользователя

spring.datasource.password

admin

Пароль

spring.datasource.ddlMode

update

Создавать ли необходимые таблицы в базе данных при первом запуске

create - создавать

validate - не создавать, проверить целостность

update - не создавать, обновить схему

spring.jpa.hibernate.ddl-auto

update

Автоматически создавать и заполнять базу при запуске:

create - создавать

validate - не создавать, проверить целостность

update - не создавать, обновить схему

create-drop - создавать, очищать таблицы при завершении сеанса

spring.jpa.hibernate.naming_strategy

org.hibernate.cfg.ImprovedNamingStrategy

Стратегия именования полей в таблицах БД

spring.jpa.database

H2

Использхуемый диалект БД

spring.jpa.show-sql

true

Показывать SQL запросы к базе.

server.port

9091

HTTP порт, на котором WCS Manager будет отвечать на входящие HTTP запросы.

manager.enable_https

true

Включить HTTPS

manager.https_port

8888

HTTPS порт

manager.keystore

wss.jks

Хранилище SSL сертификатов

manager.keystore_password

password

Пароль к хранилищу SSL сертификатов

spring.profiles.active

dev

Активный профиль.

dev - Если включен этот профиль, WCS Manager будет слушать HTTP порт и не будет требовать аутентификации.

production - Если включен этот профиль, то WCS Manager будет слушать HTTPS порт и будет требовать Basic-аутентификации от входящих HTTPS соединений.

Профиль может быть переопределен при запуске сервера, как и другие настройки. См. раздел Параметры запуска.

node_api.port

1098

Локальный порт WCS Core к которому WCS Admin будет подключаться по RMI-интерфейсу для обмена данными.

node_api.service_name

NodeApi

Имя, под которым WCS Core зарегистрирован в RMI-регистре.

node_api.host

localhost

Хост, к которому будет осуществляться обращение по RMI.

rest_template.allow_self_signed

true

При обращении к Web-серверу по HTTPS/REST принимать от Web-сервера самоподписанные сертификаты.

shell.disabled-commands

autoconfig*,beans*,cron*,dashboard*,egrep*,endpoint*,env*,filter*,java*,jmx*,jul*,jvm*,jpa*,jdbc*,jndi*,less*,mail*,metrics*,shell*,sleep*,sort*,system*,thread*,repl*

Отфильтровать ненужные команды

spring.main.show_banner

false

Показывать баннер

node.enable_stdout

false

Писать лог WCS Server в файл logs/server_stdout.log. Может использоваться для отладки.

sun.rmi.dgc.client.gcInterval

36000000000

Задать интервал запуска сборщика мусора для RMI-клиента, мс. Данная настройка позволяет отключить принудительный запуск сборщика мусора, в целях повышения производительности сервера

sun.rmi.dgc.server.gcInterval

36000000000

Задать интервал запуска сборщика мусора для RMI-сервера, мс. Данная настройка позволяет отключить принудительный запуск сборщика мусора, в целях повышения производительности сервера

stream_stat_persist_data

false

Записывать статистику потоков в БД

server.session-timeout

10

Таймаут сессии, в минутах

loggc/usr/local/FlashphonerWebCallServer/logs/gc-manager-Расположение и префикс имени лога сборщика мусора. Имя формируется как /usr/local/FlashphonerWebCallServer/logs/gc-manager-YYYY-MM-DD_HH-MM.log
manager.rest_redirect_http_port8081Порт, на который перенаправляются REST API запросы, поступившие на порт server.port
manager.rest_redirect_https_port8444Порт, на который перенаправляются REST API запросы, поступившие на порт manager.https_port


Файл настроек log4j.properties


Часть настроек административного модуля находится внутри файла wcs_manager-1.0.jar:

Файл log4j.properties содержит настройки логирования WCS Manager. По умолчанию логи WCS Manager пишутся в файл flashphoner_manager.log. См. раздел Логирование для расширенных настроек и управления логами.

Для редактирования этих настроек можно воспользоваться midnight commander под Linux. Просто 'зайдите' в wcs_manager-1.0.jar, отредактируйте в нем файл и сохраните изменения.

Чтобы изменения вступили в силу, потребуется перезагрузка сервера.

Настройка базы данных WCS Manager

Создание базы

WCS Manager по умолчанию использует встроенную (embedded) базу данных H2, которая создается и заполняется при первом запуске WCS-сервера.

При этом файлы базы данных создаются в домашней директории WCS-сервера в каталоге 'database'.

Наполнение базы

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

Миграция на MySQL

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

Установите MySQL (на примере CentOS 7) командами


rpm -Uvh http://dev.mysql.com/get/mysql-community-release-el7-5.noarch.rpm
yum install mysql-server

Запустите MySQL и установите пароль администратора

/sbin/service mysqld start
/usr/bin/mysqladmin -u root password 'rootpassword'

Войдите с правами администратора

mysql -uroot -prootpassword

Создайте базу данных и пользователя, дайте пользователю права на доступ к базе

create database wcs_db;
create user 'webcallserver'@'localhost' identified by 'password';
grant all privileges on wcs_db.* to 'webcallserver'@'localhost';

Настройка WCS

Добавьте следующие строки в файл wcs-manager.properties

-Dspring.datasource.url=jdbc:mysql://localhost/wcs_db
-Dspring.datasource.driverClassName=com.mysql.jdbc.Driver
-Dspring.datasource.database=org.hibernate.dialect.MySQL5Dialect
-Dspring.datasource.username=webcallserver
-Dspring.datasource.password=password

Здесь

Перезапустите WCS сервер

service webcallserver restart

При первом запуске WCS, в wcs-manager.properties нужно выставить spring.datasource.ddlMode=create. В этом случае будут автоматически созданы необходимые таблицы. При повторном запуске нужно переключить настройку в spring.datasource.ddlMode=validate. В результате произойдет подключение к существующей базе данных уже без создания таблиц.

Импорт данных из H2 в MySQL

При миграции с H2 на MySQL данные, экспортированные из базы данных H2, могут быть импортированы в базу данных MySQL:

a) используя SQL скрипт

mysql -uroot -prootpassword wcs_db < wcs_h2_db.sql;

б) загрузив данные в таблицы из CSV файлов:

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

service webcallserver stop

войдите в MySQL

mysql -uroot -prootpassword

выберите базу данных

use wcs_db;

загрузите данные из CSV файлов в таблицы, например

LOAD DATA INFILE "/var/lib/mysql-files/STREAM_INFO_3.csv"
REPLACE INTO TABLE stream_info_3
FIELDS TERMINATED BY ','
OPTIONALLY ENCLOSED BY '"'
LINES TERMINATED BY '\n'
IGNORE 1 LINES;

Отметим, что SQL скрипт и CSV файлы, сгенерированные H2, не полностью совместимы с MySQL и требуют изменений для импорта. Например, для таблицы STREAM_INFO_3 потребуется изменить переменные типа Boolean.