centos

如何在CentOS上设置Filebeat的日志轮转

小樊
37
2025-07-16 18:11:24
栏目: 智能运维

在CentOS上设置Filebeat的日志轮转,可以通过配置systemd的定时器和服务来实现。以下是详细的步骤:

1. 安装Filebeat

首先,确保你已经安装了Filebeat。如果没有安装,可以使用以下命令进行安装:

sudo yum install filebeat

2. 配置Filebeat

编辑Filebeat的配置文件 /etc/filebeat/filebeat.yml,确保以下配置项存在并正确设置:

filebeat.inputs:
- type: log
  enabled: true
  paths:
    - /var/log/*.log

output.elasticsearch:
  hosts: ["localhost:9200"]

3. 创建日志轮转配置文件

创建一个systemd服务单元文件来管理Filebeat的日志轮转。创建文件 /etc/systemd/system/filebeat-logrotate.service

[Unit]
Description=Log rotation for Filebeat
After=network.target

[Service]
Type=oneshot
ExecStart=/usr/sbin/logrotate /etc/logrotate.d/filebeat
RemainAfterExit=yes

[Install]
WantedBy=multi-user.target

4. 创建日志轮转配置文件

创建文件 /etc/logrotate.d/filebeat 来定义Filebeat日志的轮转规则:

/var/log/filebeat/*.log {
    daily
    missingok
    rotate 7
    compress
    notifempty
    create 640 root root
}

这个配置表示每天轮转一次日志,保留最近7天的日志,并且压缩旧日志。

5. 重新加载systemd配置

运行以下命令重新加载systemd配置:

sudo systemctl daemon-reload

6. 启动并启用Filebeat服务

启动Filebeat服务并设置开机自启:

sudo systemctl start filebeat
sudo systemctl enable filebeat

7. 启动并启用日志轮转服务

启动并启用日志轮转服务:

sudo systemctl start filebeat-logrotate
sudo systemctl enable filebeat-logrotate

8. 验证配置

确保Filebeat和日志轮转服务都在运行:

sudo systemctl status filebeat
sudo systemctl status filebeat-logrotate

通过以上步骤,你就可以在CentOS上成功设置Filebeat的日志轮转。这样,Filebeat的日志将会按照配置的规则自动轮转和压缩。

0
看了该问题的人还看了