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

Требования к программному обеспечению сервера

Требования к параметрам программного обеспечения хоста, на котором установлен Webim Server. Требования описаны для текущей версии Webim.

По умолчанию Webim Server разворачивается через Docker.

Общие требования

ПО Версия Обязательность Особенности
Операционная система сервера приложений Любая с поддержкой Docker (за исключением Windows Server) Да
Docker Community Edition 20.10.17 Да Минимально достаточная версия для типового Docker-развёртывания
Python 3.10.12 Да
Интерпретатор Python CPython 3.10.12 Да
Реляционная СУБД PostgreSQL 18.1 либо MySQL 8.0.45 Да Совместим также с MySQL 5.7; эту версию не рекомендуем и на ней не тестируем.
Колоночная СУБД ClickHouse 23.12 Да Используется для работы статистики v2
Резидентная СУБД Redis 7.2.4 Да Требуется для работы микросервисов Speller и data-storager, также используется для Chat Backend и масштабирования Admin Backend
Поисковый движок OpenSearch 3.0.0 Нет Используется в качестве дополнительного хранилища истории чатов
Брокер сообщений Apache Kafka 3.9.0 Нет В базовой конфигурации не требуется. Обязателен для кластера Admin Backend из нескольких узлов, для сервиса data-storager и для интеграции Active Directory; требования см. ниже
Объектное хранилище S3-совместимое API Нет Используется при вынесении файлового хранилища во внешний S3; см. файловое хранилище S3
Система мониторинга Prometheus 3.3.1 Нет

Ниже приведены совместимые и исторически использовавшиеся варианты ПО для альтернативных конфигураций. Эти варианты не входят в базовую поставку Webim Server 10.8+, поэтому перед внедрением нужно отдельно проверить совместимость и ограничения на вашем стенде.

ПО Версии и модификации Особенности
Веб-сервер nginx 1.22.x; исторически также 1.10–1.16; openresty 1.25 В актуальной Docker-поставке — nginx 1.22.x (пакет Debian 12). Более старые версии nginx — для унаследованных конфигураций
Реляционная СУБД MySQL 5.7 Совместимость сохранена для обновлений со старых инсталляций; новая установка на этой версии не рекомендуется
Поисковый движок Elasticsearch 8.17.1 Поддерживается как альтернатива OpenSearch; перед вводом в эксплуатацию проверьте совместимость вашего контура

Требования к серверу реляционной СУБД

В базовой конфигурации Webim Server используйте PostgreSQL 18.1 либо MySQL 8.0.45. При этом сохраняется совместимость с MySQL 5.7, но мы не рекомендуем её использование и не проводим на этой версии тестирование. Поддерживаемые операционные системы, ограничения и требования к окружению проверяйте по документации производителя:

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


Требования к серверу аналитической (колоночной) СУБД

Согласно официальной документации, ClickHouse может быть установлен на любой ОС на базе Linux, FreeBSD или Mac OS X с CPU-архитектурой x86_64, ARM или PowerPC64LE.


Требования к серверу резидентной СУБД

В Webim Server используется резидентная СУБД Redis 7.2.4.

Поддерживаемые операционные системы и требования к окружению для Redis проверяйте по официальной документации


Требования к поисковой системе

В Webim Server 10.8+ поддерживаются OpenSearch и Elasticsearch. В типовой конфигурации рекомендуется OpenSearch 3.0.0; допускается использование Elasticsearch 8.17.1.

Требования к окружению и поддерживаемым операционным системам смотрите в документации выбранного поискового движка:


Требования к Apache Kafka

В базовой конфигурации — один экземпляр Admin Backend, без Active Directory и без выгрузки истории в поисковый движок — Apache Kafka не нужна. Она обязательна в следующих сценариях:

  • кластер Admin Backend из нескольких узлов — синхронизация данных операторов между узлами (вместе с Redis);

  • сервис data-storager — выгрузка истории диалогов в Elasticsearch / OpenSearch и статистики в ClickHouse (режимы producer и consumer);

  • интеграция Active Directory — фоновая и ручная синхронизация операторов.

Необходимо обеспечить:

  • доступ к брокеру/кластеру Kafka (bootstrap servers) из инфраструктуры Webim;

  • наличие топиков и прав на запись/чтение для сервисной учетной записи;

  • при использовании защищенных профилей — корректные параметры авторизации/шифрования (SASL/SSL).

См. также

Инструкции по подключению Elasticsearch или OpenSearch и общие требования к окружению приведены в статье Подключение Elasticsearch или OpenSearch.


Другие требования

Ниже перечислены библиотеки, которые использует Webim Server. Они устанавливаются автоматически при сборке, отдельно ставить их не требуется.

Библиотеки Python 3.10

  • httpx[http2]==0.19.*

  • cryptography==41.0.0

  • pysyge==1.2.0

  • python-dateutil==2.8.1

  • pillow==9.3.0

  • tornado==6.4.0

  • jinja2==3.1.3

  • pytz==2020.1

  • tzlocal==4.2

  • requests==2.32.0

  • idna==3.7

  • pycryptodome==3.9.8

  • ua-parser==0.16.1

  • transliterate==1.10.2

  • aspell-python-py3==1.15

  • markupsafe==2.0.1

  • suds-py3==1.4.1.0

  • pyopenssl==23.2.0

  • ndg-httpsclient==0.5.1

  • pyasn1==0.4.8

  • python-magic==0.4.18

  • rsa==4.9

  • opensearch-py==3.0.0

  • pyfcm==1.4.5

  • sqlalchemy==2.0.23

  • asyncmy==0.2.8

  • asyncpg==0.28.0

  • psycopg2cffi==2.8.1

  • xmltodict==0.12.0

  • pyjwt==2.5.0

  • domain2idna==1.12.0

  • clickhouse-driver==0.2.6

  • clickhouse-sqlalchemy==0.3.0

  • alembic==1.12.0

  • objgraph==3.5.0

  • distro==1.7.0

  • prometheus-client==0.16.0

  • tornado-prometheus==0.1.2

  • orjson==3.8.0

  • pyodbc==5.1.0

  • aioodbc==0.5.0


Библиотеки Webim

  • apns_http2==0.1.0

  • wm_hyper==0.7.0

  • wm_crypto==0.1.0

  • wm_types==0.1.0

  • helpers==0.1.2

  • observer==1.0.10

  • settings==1.0.17

  • specification==0.1.0

  • saext==1.2.1

  • wmdb==0.4.4

  • wm_db_metadata==1.11.14

  • validation_rules==0.1.3

  • error_objects==0.1.0

  • abac==0.2.1

  • abac_expressions==0.2.1

  • validate==0.0.2


  1. За исключением операционных систем, доступ к которым со стороны Webim затруднён (свободный доступ отсутствует, заблокирован для пользователей из РФ и т. п.). ↩