Filebeat安装使用

下载

下载地址,这里我们使用7.4.2版本。

配置控制台输出

FileBeat就是一个采集工具,使用起来很简单,只需要指定input和output,也就是指定输入和输出即可,在这里我们简单使用一下

修改配置文件filebeat.yml

在配置文件中指定输入是键盘输入(标准输入),输出是控制台,也就是接收键盘输入,将接收到的内容打印到控制台

......
- type: stdin
.......
#output.elasticsearch:
  #hosts: ["localhost:9200"]
......
output.console:
  pretty: true

注意:

  1. 冒号右边的空格不能少:
  2. 缩进不能使用制表符,直接使用空格,官方建议使用4个空格,使用2个空格也没问题

启动filebeat

./filebeat -c filebeat.yml

验证

在命令行中输入hello,结果如下

{
  "@timestamp": "2023-05-08T09:20:24.508Z",
  "@metadata": {
    "beat": "filebeat",
    "type": "_doc",
    "version": "7.4.2"
  },
  "log": {
    "offset": 0,
    "file": {
      "path": ""
    }
  },
  "message": "hello",
  "input": {
    "type": "stdin"
  },
  "ecs": {
    "version": "1.1.0"
  },
  "host": {
    "os": {
      "version": "7 (Core)",
      "family": "redhat",
      "name": "CentOS Linux",
      "kernel": "3.10.0-1160.83.1.el7.x86_64",
      "codename": "Core",
      "platform": "centos"
    },
    "name": "bigdata01",
    "id": "a3a39080a3bc477a83bd8e102fa402d7",
    "containerized": false,
    "hostname": "bigdata01",
    "architecture": "x86_64"
  },
  "agent": {
    "hostname": "bigdata01",
    "id": "3f0c084e-40be-416e-b3ce-dba3d1e860a6",
    "version": "7.4.2",
    "type": "filebeat",
    "ephemeral_id": "aefde128-5137-46f2-b6be-c8070e670e7f"
  },
  "cloud": {
    "instance": {
      "id": "a3a39080-a3bc-477a-83bd-8e102fa402d7",
      "name": "instance-bbk6ipuw"
    },
    "machine": {
      "type": "2-8192-40-0"
    },
    "availability_zone": "nova",
    "provider": "openstack"
  }
}

停止filebeat

按ctrl+c停止filebeat。

配置采集日志文件的filebeat

接下来我们需要继续修改配置文件,因为我们是希望filebeta可以采集日志文件中的数据,将数据采集到Kafka中
删除我们刚才在filebeat.yml中添加的输入组件和输出组件的配置。

配置基于log的输入组件

开启基于log的输入组件,设置监控的日志文件路径,这样输入组件就配置好了。

[root@bigdata04 filebeat-7.4.2-linux-x86_64]# vi filebeat.yml
- type: log

  # Change to true to enable this input configuration.
  enabled: true

  # Paths that should be crawled and fetched. Glob based paths.
  paths:
    - /data/log/*.log

配置kafka输出组件

然后是输出组件,添加kafka这个输出组件的配置。
注意,如果你只有一个服务器,把多余的hosts配置删了。

output.kafka:
  # initial brokers for reading cluster metadata
  hosts: ["bigdata01:9092"]
  # message topic selection + partitioning
  topic: 'all_type_data'
  partition.round_robin:
  reachable_only: false
  required_acks: 1
  compression: gzip
  max_message_bytes: 1000000

这样就可以实现日志全部采集到kafka中的all_type_data这个topic中了。

posted @ 2023-06-03 18:29  strongmore  阅读(172)  评论(0编辑  收藏  举报