ubuntu

Filebeat在Ubuntu上的部署步骤是什么

小樊
39
2025-10-08 11:56:15
栏目: 智能运维

Filebeat在Ubuntu上的部署步骤

1. 部署前准备

2. 安装Filebeat

方式一:通过APT包管理器安装(推荐)
  1. 更新系统包列表
    sudo apt update
    
  2. 添加Elastic官方GPG密钥(验证软件包完整性):
    wget -qO - https://artifacts.elastic.co/GPG-KEY-elasticsearch | sudo apt-key add -
    
  3. 添加Elastic APT仓库(指定版本,如7.x):
    echo "deb https://artifacts.elastic.co/packages/7.x/apt stable main" | sudo tee -a /etc/apt/sources.list.d/elastic-7.x.list
    
  4. 再次更新APT包列表
    sudo apt update
    
  5. 安装Filebeat
    sudo apt install filebeat -y
    
方式二:手动下载DEB包安装
  1. 下载对应版本的DEB包(如8.10.0):
    curl -L -O https://artifacts.elastic.co/downloads/beats/filebeat/filebeat-8.10.0-amd64.deb
    
  2. 安装DEB包
    sudo dpkg -i filebeat-8.10.0-amd64.deb
    

配置文件路径:安装后,默认配置文件位于/etc/filebeat/filebeat.yml;模块配置目录为/etc/filebeat/modules.d/(预定义模块如systemnginx的配置文件存放于此)。

3. 配置Filebeat

3.1 基础配置(必选)
  1. 编辑主配置文件
    sudo nano /etc/filebeat/filebeat.yml
    
  2. 配置日志输入(Inputs)
    定义要收集的日志文件路径,例如收集系统日志(syslog)和Apache日志(access.log/error.log):
    filebeat.inputs:
    - type: log
      enabled: true
      paths:
        - /var/log/syslog
        - /var/log/apache2/*.log
    
  3. 配置输出目标(Outputs)
    • 输出到Elasticsearch(本地/远程)
      若Elasticsearch运行在本地(默认端口9200),配置如下:
      output.elasticsearch:
        hosts: ["localhost:9200"]
        index: "filebeat-%{[agent.version]}-%{+yyyy.MM.dd}"  # 动态生成日期索引
      
    • 输出到Logstash(需转发处理)
      若需通过Logstash过滤日志,配置如下:
      output.logstash:
        hosts: ["localhost:5044"]
      
3.2 高级配置(可选)
  1. 忽略旧文件/特定行
    避免收集过时或无用日志,减少资源消耗:
    filebeat.inputs:
    - type: log
      enabled: true
      paths:
        - /var/log/*.log
      ignore_older: 72h  # 忽略72小时前的文件
      exclude_lines: ["ERROR", "WARN"]  # 排除包含ERROR/WARN的行
    
  2. 添加处理器(Processors)
    预处理日志数据,例如添加云元数据(便于Kibana按云环境分类):
    processors:
      - add_cloud_metadata: ~  # 自动添加云提供商、区域、实例ID等信息
    
3.3 启用预定义模块(简化配置)

Filebeat提供system(系统日志)、nginx(Nginx日志)、mysql(MySQL日志)等预定义模块,一键配置常用日志收集:

sudo filebeat modules enable system  # 启用系统日志模块
sudo filebeat modules enable nginx   # 启用Nginx日志模块(需提前安装Nginx)

启用模块后,会自动生成对应配置文件(位于/etc/filebeat/modules.d/),无需手动编写inputs部分。

4. 启动与启用Filebeat服务

  1. 启动Filebeat服务
    sudo systemctl start filebeat
    
  2. 设置开机自启(避免服务器重启后停止):
    sudo systemctl enable filebeat
    
  3. 检查服务状态
    sudo systemctl status filebeat
    
    若显示active (running),则表示服务启动成功。

5. 验证部署

  1. 查看Filebeat日志
    检查是否有错误信息,确认服务运行正常:
    sudo journalctl -u filebeat -f  # 实时查看日志
    
  2. 检查Elasticsearch数据
    若输出到Elasticsearch,可通过以下命令查看索引是否存在:
    curl -X GET "localhost:9200/_cat/indices?v"  # 查看所有索引
    
    若索引前缀为filebeat-(如filebeat-8.10.0-2025.10.08),则表示日志已成功发送。

注意事项

0
看了该问题的人还看了