Развертывание Wazuh 4.14 - варианты автоматизации
Помимо ручной установки пакетов , Wazuh 4.14 поддерживает несколько способов автоматизированного развертывания. Выбор инструмента зависит от существующей инфраструктуры, масштаба и требований к воспроизводимости конфигураций.
Сравнение вариантов развертывания
| Критерий | Docker | Kubernetes | Ansible | Puppet | Офлайн |
|---|---|---|---|---|---|
| Сложность начальной настройки | Низкая | Высокая | Средняя | Средняя | Средняя |
| Масштабирование | Ограниченное | Автоматическое | Ручное | Ручное | Ручное |
| Управление конфигурацией | docker-compose.yml | Helm values / manifests | Playbooks / variables | Hiera / class params | Вручную |
| Обновление версий | Замена образов | Rolling update | Повторный запуск playbook | Обновление модуля | Ручная замена пакетов |
| Требования к сети | Интернет для pull | Интернет для pull | Интернет для репозитория | Интернет для Forge | Не требуется |
| Подходит для production | С оговорками | Да | Да | Да | Да |
| Кластеризация Indexer | Multi-node compose | StatefulSet | Multi-host inventory | Multi-node manifest | Ручная настройка |
| Мониторинг состояния | docker compose ps | kubectl / probes | Без встроенного | Puppet reports | Без встроенного |
Варианты развертывания
Docker Compose
Самый быстрый способ развернуть полный стек Wazuh для разработки и тестирования. Официальный репозиторий wazuh-docker предоставляет готовые конфигурации для одноузловой и многоузловой архитектуры.
- Развертывание Wazuh в Docker - docker-compose, сертификаты, тома, переменные окружения
Kubernetes
Развертывание Wazuh в Kubernetes обеспечивает автоматическое масштабирование, самовосстановление и интеграцию с облачными платформами. Используются StatefulSets для компонентов с состоянием и DaemonSets для агентов.
- Развертывание Wazuh в Kubernetes - Helm, манифесты, StatefulSets, DaemonSets, TLS
Ansible
Ansible позволяет декларативно описать конфигурацию всех компонентов Wazuh и развернуть их на любом количестве хостов. Официальные роли покрывают установку индексатора, сервера, дашборда и агентов.
- Развертывание Wazuh через Ansible - роли, playbooks, inventory, переменные
Puppet
Модуль wazuh-puppet предоставляет классы и определенные типы для управления всеми компонентами Wazuh через Puppet. Поддерживается интеграция с Hiera для управления параметрами.
- Развертывание Wazuh через Puppet - модуль, классы, Hiera, агенты
Офлайн-установка
Для изолированных сетей (air-gapped) без доступа в интернет Wazuh предоставляет процедуру офлайн-установки с предварительной загрузкой всех необходимых пакетов и зависимостей.
- Офлайн-установка Wazuh - пакеты, локальный репозиторий, сертификаты
Выбор варианта развертывания
Для тестирования и разработки
Используйте Docker Compose - минимальные требования к инфраструктуре, быстрый запуск и остановка, изоляция от хостовой системы. Подходит для отладки правил, тестирования интеграций и обучения.
Для production-среды на bare-metal или ВМ
Используйте Ansible или Puppet в зависимости от принятого в организации инструмента управления конфигурациями. Обе системы обеспечивают воспроизводимость установки и централизованное управление параметрами.
Для контейнерных платформ
Используйте Kubernetes при наличии существующего кластера. Kubernetes обеспечивает автоматическое восстановление, масштабирование и стандартизированные процедуры обновления.
Для изолированных сетей
Используйте офлайн-установку для сред без доступа в интернет. Все пакеты и зависимости загружаются заранее и переносятся на целевые хосты.
Общие требования
Независимо от выбранного варианта развертывания, требуется:
- 64-битная операционная система из списка поддерживаемых
- Минимум 4 ядра CPU и 8 ГБ RAM для all-in-one, 4 ядра и 4 ГБ RAM на каждый узел для распределенной установки
- Открытые порты: 1514/TCP (агенты), 1515/TCP (регистрация), 9200/TCP (Indexer), 443/TCP (Dashboard), 55000/TCP (API)
- Корректная настройка DNS или /etc/hosts для взаимодействия между узлами