Требования к хранилищу

Сервер Webim размещает накапливаемый при работе контент в двух типах хранилищ:

  • в файловой системе (на файлсервере),
  • в базе данных (на сервере СУБД).

Какой контент мы накапливаем? Это информация о ваших посетителях, операторах, супервизорах и администраторах, настройки системы, история диалогов с ними, передаваемые между операторами и посетителями файлы, статистика и т. д.

Сервер Webim хранит базовые настройки системы, сертификаты, доработки, аватары и передаваемые файлы (загружаемые клиентами и операторами изображения и т. п.) в файловой системе.

Все остальные данные хранятся в базах данных. Каждый аккаунт Webim хранит информацию в двух базах (схемах): если клиент размещён в облаке, это схемы webim_site и webim_service_pro_<account>. Если клиент размещен на мощностях заказчика, это webim_hosted_meta и webim_service_pro_<account>.

Все серверные функции (файловое хранилище, СУБД, сервер Webim) формально могут выполняться и на одном хосте, но такая конфигурация не рекомендуется. Максимальная производительность достигается, когда они распределены на нескольким серверам.

Если на жестком диске создаётся несколько разделов, то самый большой (500GB) должен маппироваться к директории /var (как на сервере приложений, так и СУБД).

Требования к хранилищам данных при размещении сервиса на мощностях заказчика (hosted installation):

Параметр Значение Особенности
СУБД MySQL 5.5, MySQL 5.7 или MariaDB 10.2 PostgreSQL по специальному запросу
Пользователи СУБД webim_site (для webim_site/webim_hosted_meta)
webim_service в облаке и webim_hosted_pro на мощностях заказчика (для webim_hosted_pro)
Создайте два указанных технических аккаунта в БД. Чтобы созданный технический аккаунт имел необходимые доступы к БД, в клиенте СУБД выполните команды:

GRANT ALL PRIVILEGES ON webim_site (или webim_hosted_meta).* TO 'webim_site'@'<db_server_address>';
GRANT ALL PRIVILEGES ON webim_hosted_pro_<account>.* TO webim_service (или webim_hosted_pro@<db_server_address>;
FLUSH PRIVILEGES;
TCP/IP-порт 3306 (по умолчанию для MySQL) Можно использовать любой другой порт. Потребуется перенастройка СУБД, Webim и брандмауэров. Проверить отсутствие конфликтов по новому порту.
Драйвер доступа к БД InnoDB или MyISAM (при выборе MySQL) Разные драйвера применяются к разным таблицам.
Объём места под БД 100ГБ (до 20 операторов) 500ГБ (до 100 операторов)
Объём места под файлохранилище 100ГБ (до 20 операторов) 500ГБ (до 100 операторов)
Файловая система ext3, ext4, NFS В принципе, возможна работа файлового хранилища на других аналогичных fs, однако гарантируется на этих.

Необходимо настроить сервер СУБД, чтобы он принимал запросы от сервера Webim по сети и не принимал анонимных запросов.

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

Webim.Ru рекомендует настроить автоматическое резервирование (back up) своей базы данных. Для высоконагруженных систем для повышения аптайма желательно настроить репликацию на второй сервер СУБД.