阅读量:3
Filebeat在Ubuntu上的部署步骤
1. 部署前准备
- 环境要求:Ubuntu系统(推荐20.04及以上版本);1核CPU+512MB内存(处理中等日志量);网络权限允许Filebeat访问目标输出(如Elasticsearch/Kafka的IP:Port)。
- 版本兼容:Filebeat主版本需与Elasticsearch/Kibana主版本一致(如Filebeat 8.x搭配ES 8.x),避免功能冲突。
2. 安装Filebeat
方式一:通过APT包管理器安装(推荐)
- 更新系统包列表:
sudo apt update - 添加Elastic官方GPG密钥(验证软件包完整性):
wget -qO - https://artifacts.elastic.co/GPG-KEY-elasticsearch | sudo apt-key add - - 添加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 - 再次更新APT包列表:
sudo apt update - 安装Filebeat:
sudo apt install filebeat -y
方式二:手动下载DEB包安装
- 下载对应版本的DEB包(如8.10.0):
curl -L -O https://artifacts.elastic.co/downloads/beats/filebeat/filebeat-8.10.0-amd64.deb - 安装DEB包:
sudo dpkg -i filebeat-8.10.0-amd64.deb
配置文件路径:安装后,默认配置文件位于/etc/filebeat/filebeat.yml;模块配置目录为/etc/filebeat/modules.d/(预定义模块如system、nginx的配置文件存放于此)。
3. 配置Filebeat
3.1 基础配置(必选)
- 编辑主配置文件:
sudo nano /etc/filebeat/filebeat.yml - 配置日志输入(Inputs):
定义要收集的日志文件路径,例如收集系统日志(syslog)和Apache日志(access.log/error.log):filebeat.inputs: - type: log enabled: true paths: - /var/log/syslog - /var/log/apache2/*.log - 配置输出目标(Outputs):
- 输出到Elasticsearch(本地/远程):
若Elasticsearch运行在本地(默认端口9200),配置如下:output.elasticsearch: hosts: ["localhost:9200"] index: "filebeat-%{[agent.version]}-%{+yyyy.MM.dd}" # 动态生成日期索引 - 输出到Logstash(需转发处理):
若需通过Logstash过滤日志,配置如下:output.logstash: hosts: ["localhost:5044"]
- 输出到Elasticsearch(本地/远程):
3.2 高级配置(可选)
- 忽略旧文件/特定行:
避免收集过时或无用日志,减少资源消耗:filebeat.inputs: - type: log enabled: true paths: - /var/log/*.log ignore_older: 72h # 忽略72小时前的文件 exclude_lines: ["ERROR", "WARN"] # 排除包含ERROR/WARN的行 - 添加处理器(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服务
- 启动Filebeat服务:
sudo systemctl start filebeat - 设置开机自启(避免服务器重启后停止):
sudo systemctl enable filebeat - 检查服务状态:
若显示sudo systemctl status filebeatactive (running),则表示服务启动成功。
5. 验证部署
- 查看Filebeat日志:
检查是否有错误信息,确认服务运行正常:sudo journalctl -u filebeat -f # 实时查看日志 - 检查Elasticsearch数据:
若输出到Elasticsearch,可通过以下命令查看索引是否存在:若索引前缀为curl -X GET "localhost:9200/_cat/indices?v" # 查看所有索引filebeat-(如filebeat-8.10.0-2025.10.08),则表示日志已成功发送。
注意事项
- 权限问题:确保Filebeat对日志文件有读取权限(如
/var/log/syslog需root权限,可通过sudo chown调整或以root用户运行)。 - 版本匹配:Filebeat与Elasticsearch/Kibana版本不一致可能导致功能失效,建议使用同一主版本。
- 安全配置:若Elasticsearch启用了SSL/TLS或认证,需在
output.elasticsearch中配置ssl.certificate_authorities、username/password等参数(参考Elastic官方文档)。
以上就是关于“Filebeat在Ubuntu上的部署步骤是什么”的相关介绍,筋斗云是国内较早的云主机应用的服务商,拥有10余年行业经验,提供丰富的云服务器、租用服务器等相关产品服务。云服务器资源弹性伸缩,主机vCPU、内存性能强悍、超高I/O速度、故障秒级恢复;电子化备案,提交快速,专业团队7×24小时服务支持!
简单好用、高性价比云服务器租用链接:https://www.jindouyun.cn/product/cvm