在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系統上的性能,并優化內存使用。