Graylog 使用sidecar 和filebeat 采集linux日志

#记录工作实践,统一管理采集日志的地址#

Graylog-Sidecar配置

???版本选择

Sidecar version

Graylog server version

1.2.x

3.2.5 or higher

1.1.x

3.2.5 or higher

1.0.x

3.0 or higher

0.1.x

2.2.x, 2.3.x, 2.4.x, 2.5.x, 3.0.x, 4.0.x

0.0.9

2.1.x

官网:https://docs.graylog.org/docs/sidecar

以上对应来自Graylog 配置Sidecar和filebeat_filebeat接入graylog-CSDN博客

我使用的环境

graylog镜像:graylog/graylog:4.2(使用docker-compose快速部署的,具体配置如graylog docker-compose快速部署)

FlowUs 息流 - 新一代生产力工具

graylog-sidecar-1.5.0-1.x86_64.rpm

filebeat-8.12.0-x86_64.rpm

日志在centos6上

首先添加Beats类型的Input

如果存在Beats input就不用创建

1.点击System/inputs,在Select input中选中Beats,点击Launch new input

2.输入Title,其他默认即可

注:

garylog集群时勾选Global

若filebeat、nxlog等采集器里存在自定义参数,且不想自动追加前缀filebeat_*时,勾选底部的"Do not add Beats type as prefix"

??创建graylog-sidecar的token

  1. 登录graylog,点击System/Sidecars,点击**Create or reuse a token for thegraylog-sidecaruser**
  2. 输入Token Name,点击**Create Token**按钮即可。(token相当于sidecar传输到gray上的凭证,多个客户端上的sidecar可通用一个token)
  3. 提示创建成功后,需要及时复制token并保存。再次进入后不再显示token信息。

??配置采集规则

??采集文件配置
  1. System/sidecars界面点击Configuration按钮,进入页面后点击 Create Configuration
  2. 填写必要信息
    # Needed for Graylog
    fields_under_root: true
    fields.collector_node_id: ${sidecar.nodeName}
    fields.gl2_source_collector: ${sidecar.nodeId}
    #用于将sidecar的name作为graylog的日志
    fields.source: ${sidecar.nodeName}
    
    filebeat.inputs:
    - input_type: log
      paths:
        - /var/log/test-log.log
      type: log
    output.logstash:
       hosts: ["192.168.136.128:12201"]
    path:
      data: /var/lib/graylog-sidecar/collectors/filebeat/data
      logs: /var/lib/graylog-sidecar/collectors/filebeat/log
  3. 配置完点击Create保存即可
??配置下发
  1. 进入System/Sidecars,找到对应的fileBeat点击Manage sidecar进行配置下发

配置下发后,就可以直接采集日志文件

变量配置:
可以配置变量,新增的配置直接引用变量即可。

??安装sidecars和filebeat

1.https://github.com/Graylog2/collector-sidecar/releases/tag/1.5.0sidecars下载地址

https://github.com/Graylog2/collector-sidecar/releases/tag/1.5.0

??Linux安装

下载与安装sidecar

#直接下载安装
sudo rpm -Uvh https://github.com/Graylog2/collector-sidecar/releases/download/1.5.0/graylog-sidecar-1.5.0-1.x86_64.rpm

编辑/etc/graylog/sidecar/sidecar.yml文件进行配置
这里只需要配置 graylog地址,token等信息,日志采集路径,不用配置,通过graylog下发配置即可 

# The URL to the Graylog server API.
server_url: "http://127.0.0.1:9009/api/"
#graylog申请的api-token
server_api_token: "217hruuotvci48k7t5ea6mforrc8d1a8jgl69c8b09c9e1o1ctu"
#sidecar 唯一uuid,要保证gray管理下的sidecar node_id唯一
node_id: "192.168.136.128"
#节点名称可填可不填,在graylog sidecar上显示的名称
node_name: "192.168.136.128"
#更新间隔s
update_interval: 10
send_status: true
#收集器tags用于使用匹配的采集器配置
tags:
  - linux_beat_input
注册为服务
# 将sidecar注册为服务
graylog-sidecar -service install
# 启动服务
systemctl start graylog-sidecar
# 开机自启
systemctl enable graylog-sidecar
# 查看服务状态
systemctl status graylog-sidecar
启动后在graylog中就可以看到sidecars在线状态了

修改配置重启服务器生效

# 如果修改配置后,需要重启服务,配置即可生效
systemctl restart graylog-sidecar

 下载与安装filebeat

地址:Download Filebeat ? Lightweight Log Analysis | Elastic

# 下载rpm包
wget https://artifacts.elastic.co/downloads/beats/filebeat/filebeat-8.12.0-x86_64.rpm
# 安装
rpm -ivh filebeat-8.12.0-x86_64.rpm

# 启动filebeat
systemctl start filebeat

 filebeat未启动会有如下报错

参考文献

Graylog 配置Sidecar和filebeat_filebeat接入graylog-CSDN博客

Graylog服务器docker安装_graylog docker-CSDN博客