在Ubuntu上优化Filebeat的内存使用可以通过多种配置和系统级调整来实现。以下是一些关键的调优技巧:
multiline.pattern: '^\['
multiline.negate: true
multiline.match: after
multiline.max_lines: 10000
json.keys_under_root: true
json.overwrite_keys: true
json.message_key: log
json.add_error_key: true
queue.type: persisted
queue.max_bytes: 1024mb
flush.min_events: 2048
flush.timeout: 1s
harvester_limit
可以限制同时运行的harvester数量,避免资源过度占用。harvester_limit: 512
bulk_max_size
可以设置每次批量发送的最大文档数,提高发送效率。output.elasticsearch:
hosts: ["localhost:9200"]
bulk_max_size: 2048
output.compression: true
setup.template.settings:
index.number_of_shards: 3
index.codec: best_compression
_source.enabled: true
process.host: { HOSTNAME }
setup.ilm.enabled: false
jvm.options:
-Xms1g
-Xmx1g
filebeat.modules:
- module: system
enabled: false
- module: http
enabled: false
logging.level: warning
queue.mem.events: 4096
setup.monitor.enabled: true
sudo systemctl restart filebeat
通过上述配置和优化措施,可以显著提升Filebeat在Ubuntu系统上的性能,并优化内存使用。