温馨提示×

centos extract配置如何优化

小樊
40
2026-08-04 04:19:49
栏目: 智能运维

CentOS 下提到 extract 配置优化,通常是指 日志采集(如 rsyslog / journald / filebeat / logstash)压缩解压(tar/zip) 场景。下面我按最常见的几种情况分别说明,你可以对照使用;如果指的是某个具体软件(如 Elasticsearch、Logstash、Filebeat、rsyslog),可以再告诉我。


一、如果是 rsyslog extract / 模板 / 规则优化(最常见)

1️⃣ 减少不必要的日志解析

默认 rsyslog 会做大量字符串解析,影响性能。

# 关闭 DNS 反向解析(非常重要)
echo '$ActionFileDefaultTemplate RSYSLOG_TraditionalFileFormat' >> /etc/rsyslog.conf
echo '$PreserveFQDN off' >> /etc/rsyslog.conf

2️⃣ 使用高性能队列(生产环境必开)

module(load="imuxsock")
module(load="imjournal")

$WorkDirectory /var/lib/rsyslog
$ActionQueueType LinkedList
$ActionQueueFileName rsyslog_queue
$ActionResumeRetryCount -1
$ActionQueueSaveOnShutdown on

✅ 防止日志丢失
✅ 提高并发吞吐


3️⃣ 减少 extract 规则复杂度

❌ 避免复杂正则
✅ 使用字段匹配而不是全文解析

if $programname == 'nginx' then /var/log/nginx/access.log
& stop

4️⃣ 调整系统限制

vim /etc/security/limits.conf
* soft nofile 65535
* hard nofile 65535

二、如果是 Filebeat / Logstash extract 配置优化

Filebeat 优化(CentOS 常见)

filebeat.inputs:
- type: log
  enabled: true
  paths:
    - /var/log/*.log
  scan_frequency: 10s
  harvester_buffer_size: 16384

queue.mem:
  events: 4096
  flush.min_events: 512
  flush.timeout: 1s

processors:
  - drop_fields:
      fields: ["agent", "ecs"]

✅ 减少 CPU
✅ 减少磁盘 IO


三、如果是 tar / unzip extract 性能优化

1️⃣ 使用多线程解压(推荐)

yum install pigz -y
tar -I pigz -xf file.tar.gz

2️⃣ 避免解压到慢磁盘

tar -xf file.tar.gz -C /fast_disk/

3️⃣ 关闭 SELinux(临时)

setenforce 0

四、如果是 Elasticsearch / 数据 extract 优化

JVM 参数

vim /etc/elasticsearch/jvm.options
-Xms4g
-Xmx4g

索引优化

"refresh_interval": "30s",
"number_of_replicas": 0

五、通用 CentOS 系统级优化(强烈推荐)

systemctl disable firewalld
systemctl stop firewalld

echo 'vm.swappiness=10' >> /etc/sysctl.conf
echo 'fs.file-max=1000000' >> /etc/sysctl.conf
sysctl -p

六、快速判断你该优化哪一块

场景 优化重点
日志量大 rsyslog 队列 + 规则精简
CPU 高 减少正则 / 减少字段
IO 高 换 SSD / 解压到 tmpfs
丢日志 rsyslog 队列 + disk assistant

七、下一步建议 ✅

你可以直接告诉我:

  1. extract 来自哪个软件?
  2. CentOS 版本(7 / 8 / Stream?)
  3. 你看到的问题(慢 / 丢数据 / CPU 高 / IO 高)

我可以给你一套 精准配置方案(可直接复制使用)。

0