Beats:在单个服务器上配置多个 Beats 实例

本文档作为如何在同一服务器上配置和运行 Filebeat/Metricbeat/Auditbeat 的多个实例的指南。 当你需要为同一台计算机上的不同应用程序或环境分离数据收集和处理时,此设置特别有用。

在今天的展示中,我们将以 Filebeat 为例来进行展示。此方法也适用于其他的 Beats。

复制 Filebeat 配置目录

要创建 Filebeat 的新实例,我们首先需要复制现有的 Filebeat 配置目录。 这可以使用以下命令来完成:

复制代码
cp -R /etc/filebeat /etc/filebeat_02

此命令创建一个名为 /etc/filebeat_02 的目录,其中包含所有 Filebeat 配置文件的副本。 需要注意的是,Filebeat 的每个实例都应该有自己的配置目录,以避免冲突并确保实例之间的适当隔离。

修改 Filebeat 配置

接下来,在文本编辑器中打开 /etc/filebeat_02/filebeat.yml 文件。 在此文件中,你需要修改 output.elasticsearch 字段以指定要将日志发送到的 Elasticsearch 集群的地址。 此步骤至关重要,因为它将数据流从 Filebeat 引导到适当的 Elasticsearch 实例。

创建新的服务单位

要将新的 Filebeat 实例作为系统服务进行管理,我们需要创建一个新的服务单元。 这可以通过以下命令来完成:

复制代码
cd /usr/lib/systemd/system
cp filebeat.service filebeat_02.service

然后,在文本编辑器中打开 filebeat_02.service 文件并修改以下字段:

复制代码
[Unit]
Description=Filebeat sends log files to Elasticsearch.
Documentation=https://www.elastic.co/beats/filebeat
Wants=network-online.target
After=network-online.target

[Service]
Environment="BEAT_LOG_OPTS="
Environment="BEAT_CONFIG_OPTS=-c /etc/filebeat_02/filebeat.yml"
ExecStart=/usr/share/filebeat/bin/filebeat --environment systemd $BEAT_LOG_OPTS $BEAT_CONFIG_OPTS
Restart=always
[Install]
WantedBy=multi-user.target

此配置可确保新的 Filebeat 实例被系统视为单独的服务,并且可以独立管理。

为数据和日志创建目录

每个 Filebeat 实例都需要自己的数据和日志目录。 可以使用以下命令创建它们:

复制代码
mkdir -p /var/lib/filebeat_02
mkdir -p /var/log/filebeat_02

这些目录将存储新 Filebeat 实例的操作数据和日志,使它们与其他实例分开。

启动第二个 Filebeat 实例

最后,你可以使用以下命令启动第二个 Filebeat 实例:

复制代码
systemctl daemon-reload
systemctl enable filebeat_02
systemctl start filebeat_02

这些命令确保新的 Filebeat 服务加载到系统中,启用开机自启动,并最终启动。

通过执行这些步骤,你可以在单个服务器上运行 Filebeat 的多个实例,每个实例都有自己的配置、数据和日志目录。 此设置为你的数据收集和处理任务提供了高度的灵活性和控制。

相关推荐
问简6 小时前
虚拟化对比
服务器
A__tao7 小时前
Elasticsearch Mapping 一键生成 Java 实体类(支持嵌套 + 自动过滤注释)
java·python·elasticsearch
航Hang*7 小时前
Windows Server 配置与管理——第3章:文件系统管理
运维·服务器·windows·vmware
2501_948114247 小时前
2026年大模型API聚合平台技术评测:企业级接入层的治理演进与星链4SAPI架构观察
大数据·人工智能·gpt·架构·claude
黎阳之光7 小时前
黎阳之光:视频孪生领跑者,铸就中国数字科技全球竞争力
大数据·人工智能·算法·安全·数字孪生
lifewange7 小时前
Linux ps 进程查看命令详解
linux·运维·服务器
功德+n7 小时前
Linux下安装与配置Docker完整详细步骤
linux·运维·服务器·开发语言·docker·centos
人工干智能8 小时前
科普:python中你写的模块找不到了——`ModuleNotFoundError`
服务器·python
杨云龙UP8 小时前
从0到1快速学会Linux操作系统(基础),这一篇就够了!
linux·运维·服务器·学习·ubuntu·centos·ssh