Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/apache-kafka/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Apache kafka 卡夫卡打开的文件太多,日志太小,ulimit很高,大约有5k段_Apache Kafka - Fatal编程技术网

Apache kafka 卡夫卡打开的文件太多,日志太小,ulimit很高,大约有5k段

Apache kafka 卡夫卡打开的文件太多,日志太小,ulimit很高,大约有5k段,apache-kafka,Apache Kafka,它一直让卡夫卡报告“打开的文件太多”。我刚重新开始清理,但大约10分钟后,我最终发现 lsof | grep cp-kafka | wc -l: 454225 工艺限制: Limit Soft Limit Hard Limit Units Max cpu time unlimited unlimited seconds Max file size

它一直让卡夫卡报告“打开的文件太多”。我刚重新开始清理,但大约10分钟后,我最终发现

lsof | grep cp-kafka | wc -l:
454225
工艺限制:

Limit                     Soft Limit           Hard Limit           Units
Max cpu time              unlimited            unlimited            seconds
Max file size             unlimited            unlimited            bytes
Max data size             unlimited            unlimited            bytes
Max stack size            8388608              unlimited            bytes
Max core file size        0                    unlimited            bytes
Max resident set          unlimited            unlimited            bytes
Max processes             96186                96186                processes
Max open files            800000               800000               files
Max locked memory         16777216             16777216             bytes
Max address space         unlimited            unlimited            bytes
Max file locks            unlimited            unlimited            locks
Max pending signals       96186                96186                signals
Max msgqueue size         819200               819200               bytes
Max nice priority         0                    0
Max realtime priority     0                    0
Max realtime timeout      unlimited            unlimited            us
我已将retention.hours设置为-1,因为我希望保留过去的所有日志。在我的server.properties中,我有100mb的段文件,但出于某种原因,Kafka会生成10mb的日志。奇怪的是,我“只”在日志目录中有相对较少的文件

find | wc -l
5884
我不明白我在这里做错了什么

我在Ubuntu 18.04上安装了合流的kafka deb软件包

  • 卡夫卡2.0
  • 每个消息大约有500字节
  • 自动创建主题是正确的
一个目录,我的消息对于时间索引来说是否太小

rw-r--r--  1  2.2K Sep 30 10:03 00000000000000000000.index  
rw-r--r--  1  1.2M Sep 30 10:03 00000000000000000000.log  
rw-r--r--  1  3.3K Sep 30 10:03 00000000000000000000.timeindex  
rw-r--r--  1   560 Sep 30 10:03 00000000000000004308.index  
rw-r--r--  1  293K Sep 30 10:03 00000000000000004308.log  
rw-r--r--  1    10 Sep 30 10:03 00000000000000004308.snapshot  
rw-r--r--  1   840 Sep 30 10:03 00000000000000004308.timeindex  
rw-r--r--  1   10M Sep 30 10:03 00000000000000005502.index  
rw-r--r--  1   97K Sep 30 10:04 00000000000000005502.log  
rw-r--r--  1    10 Sep 30 10:03 00000000000000005502.snapshot  
rw-r--r--  1   10M Sep 30 10:03 00000000000000005502.timeindex
在服务器配置中还添加了以下行:;索引保持最大10Mb

log.segment.bytes=1073741824
log.segment.index.bytes=1073741824

顺便说一句,我在发送过去带有时间戳的邮件,日志保留时间为1000年。

一个可能的问题是,您的制作人正在为每条邮件创建新的连接。您可以检查到Kafka服务器的打开连接数吗?如果它们太高,请考虑合并批处理消息。小日志似乎用DATME默认的消息来固定(默认为C i)。我现在还没有小日志。如何查看传入的连接?我在这里逗留了2秒钟来批处理消息。使用当前时间戳后没有问题了,可能是某个地方的卡夫卡bug?