温馨提示×

centos filebeat怎样接入es

小樊
43
2026-10-20 11:47:38
栏目: 智能运维

在 CentOS 上把 Filebeat 接入 Elasticsearch(ES),通常分为 安装 Filebeat → 配置输出到 ES → 启动并验证 几个步骤。下面给你一套最常用、可直接落地的做法(ES 8.x 也适用,含安全认证说明)。


一、环境说明(示例)

  • OS:CentOS 7 / 8
  • Filebeat:8.x(7.x 配置类似)
  • Elasticsearch:http://192.168.1.100:9200
  • 采集日志:/var/log/*.log

二、安装 Filebeat(CentOS)

方式一:RPM 安装(推荐)

# 导入 GPG
sudo rpm --import https://packages.elastic.co/GPG-KEY-elasticsearch

# 添加 yum 源(以 8.x 为例)
sudo cat > /etc/yum.repos.d/filebeat.repo <<EOF
[elastic-8.x]
name=Elastic repository for 8.x packages
baseurl=https://artifacts.elastic.co/packages/8.x/yum
gpgcheck=1
gpgkey=https://artifacts.elastic.co/GPG-KEY-elasticsearch
enabled=1
autorefresh=1
type=rpm-md
EOF

# 安装
sudo yum install filebeat -y

三、配置 Filebeat 接入 ES

1️⃣ 修改主配置文件

vi /etc/filebeat/filebeat.yml

2️⃣ 配置日志输入

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

3️⃣ 配置输出到 Elasticsearch

✅ 无安全认证(测试环境)

output.elasticsearch:
  hosts: ["http://192.168.1.100:9200"]

✅ 有用户名密码(ES 开启安全)

output.elasticsearch:
  hosts: ["https://192.168.1.100:9200"]
  username: "elastic"
  password: "your_password"
  ssl.verification_mode: none

生产环境建议配置 ssl.certificate_authorities


4️⃣(推荐)加载 ES 模板

filebeat setup --index-management -E output.elasticsearch.hosts=["192.168.1.100:9200"]

四、启动 Filebeat

systemctl enable filebeat
systemctl start filebeat
systemctl status filebeat

五、验证是否接入成功

1️⃣ 查看 Filebeat 日志

journalctl -u filebeat -f

2️⃣ 在 ES 中查看索引

curl http://192.168.1.100:9200/_cat/indices?v

你应该能看到类似:

filebeat-8.x.x-2026.03.19

3️⃣ 查询数据

curl -X GET "http://192.168.1.100:9200/filebeat-*/_search?size=1"

六、常见问题

❌ 连不上 ES

  • 防火墙:9200 是否开放
  • ES 是否只允许 localhost
  • ES 是否开启 xpack.security

❌ 没有数据

  • 日志路径是否真的有文件
  • enabled: true 是否配置
  • 时间是否新生成日志

七、可选:配合 Kibana

setup.kibana:
  host: "http://192.168.1.101:5601"

然后:

filebeat setup

如果你告诉我:

  • ES 版本
  • 是否开启账号密码 / HTTPS
  • 是否用 Kibana

我可以直接给你一份完整可用的 filebeat.yml。

0 踩