Требования к программному обеспечению сервера
Требования к параметрам программного обеспечения хоста, на котором установлен 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
-
За исключением операционных систем, доступ к которым со стороны Webim затруднён (свободный доступ отсутствует, заблокирован для пользователей из РФ и т. п.). ↩