Docker部署Wazuh中如何启用Anomaly Detection插件?
Wazuh Docker环境:启用Anomaly Detection插件+修复DNS解析错误
一、先搞定getaddrinfo ENOTFOUND wazuh.indexer错误
这个问题是Dashboard容器无法解析Indexer的服务名,按以下步骤排查:
- 检查容器网络归属:Wazuh组件必须在同一Docker网络才能互相解析。先列出当前Docker网络:
再分别查看Indexer和Dashboard的网络信息:docker network lsdocker inspect <indexer-container-id> | grep Networks docker inspect <dashboard-container-id> | grep Networks - 若不在同一网络,将Dashboard容器加入Indexer所在网络:
docker network connect <wazuh-network-name> <dashboard-container-id> - 临时应急方案:手动在Dashboard容器的hosts文件添加IP映射。先获取Indexer容器的IP:
进入Dashboard容器后执行:docker inspect <indexer-container-id> | grep "IPAddress"echo "<indexer-ip> wazuh.indexer" >> /etc/hosts - 验证环境变量:确认Dashboard容器的
WAZUH_INDEXER_URL配置为https://wazuh.indexer:9200,自定义网络场景下需对应调整服务名。
二、启用Anomaly Detection插件
Wazuh基于OpenSearch生态,插件需在Indexer和Dashboard两端分别安装:
1. 为Wazuh Indexer安装插件
- 进入运行中的Indexer容器:
docker exec -it <indexer-container-id> bash - 使用OpenSearch插件管理器安装:
/usr/share/opensearch/bin/opensearch-plugin install opensearch-anomaly-detection - 安装完成后重启Indexer容器:
docker restart <indexer-container-id>
2. 为Wazuh Dashboard安装对应插件
- 确保Dashboard已能正常连接Indexer(先解决上述DNS问题),进入Dashboard容器:
docker exec -it <dashboard-container-id> bash - 安装Dashboard端的插件:
/usr/share/wazuh-dashboard/bin/opensearch-dashboards-plugin install opensearch-anomaly-detection - 重启Dashboard容器:
docker restart <dashboard-container-id>
3. 界面配置使用
- 登录Wazuh Dashboard,在左侧菜单栏找到OpenSearch Plugins -> Anomaly Detection
- 按照界面指引创建检测器,关联Wazuh告警索引(如
wazuh-alerts-*)即可启用异常检测功能
关键提醒
- 插件版本必须与Indexer内置的OpenSearch版本完全匹配,先查看版本:
若自动安装版本不匹配,可手动指定版本号安装,例如:docker exec <indexer-container-id> /usr/share/opensearch/bin/opensearch --version/usr/share/opensearch/bin/opensearch-plugin install opensearch-anomaly-detection:<version> - 操作前建议备份Wazuh配置及索引数据,避免意外数据丢失。
内容的提问来源于stack exchange,提问作者Raja
相关产品推荐
相关产品推荐

