分享

5台kafka集群有一台机器的消息流入量远远落后于其他几个机器

我的kafka集群运行一段时间以后就会出现问题
isr就会不正常。正常情况应该是三台,但一段时间以后就会掉一台
而且掉的这一台机器正是远远落后于其他几个机器的
QQ截图20190521175542.png
5台kafka集群有一台机器的消息流入量远远落后于其他几个机器

已有(9)人评论

跳转到指定楼层
s060403072 发表于 2019-5-22 11:11:41
查看下运行日志,跟其他台对比。
回复

使用道具 举报

ighack 发表于 2019-5-22 13:52:45
日志中没有什么ERROR信息
只有正常ISR异常的时候就会不停打印错误日志
回复

使用道具 举报

s060403072 发表于 2019-5-22 15:19:44
ighack 发表于 2019-5-22 13:52
日志中没有什么ERROR信息
只有正常ISR异常的时候就会不停打印错误日志

远远落后,可能跟网络、磁盘、内存、cpu有关系,监控下看看,是否内存或则cpu过高造成的除了硬件接着就是配置了等。

远远落后,按理可以把它给移除。

可以配置下落后时间。
commit策略:
server配置

[mw_shl_code=bash,true] rerplica.lag.time.max.ms=10000
  # 如果leader发现flower超过10秒没有向它发起fech请求,那么leader考虑这个flower是不是程序出了点问题
  # 或者资源紧张调度不过来,它太慢了,不希望它拖慢后面的进度,就把它从ISR中移除。

  rerplica.lag.max.messages=4000 # 相差4000条就移除
  # flower慢的时候,保证高可用性,同时满足这两个条件后又加入ISR中,
  # 在可用性与一致性做了动态平衡   亮点
[/mw_shl_code]

Producer配置
[mw_shl_code=bash,true] request.required.asks=0
  # 0:相当于异步的,不需要leader给予回复,producer立即返回,发送就是成功,
      那么发送消息网络超时或broker crash(1.Partition的Leader还没有commit消息 2.Leader与Follower数据不同步),
      既有可能丢失也可能会重发
  # 1:当leader接收到消息之后发送ack,丢会重发,丢的概率很小
  # -1:当所有的follower都同步消息成功后发送ack.  丢失消息可能性比较低
[/mw_shl_code]







回复

使用道具 举报

ighack 发表于 2019-5-22 16:06:57
本帖最后由 ighack 于 2019-5-22 16:15 编辑

我也在看内存,CPU和IO
但好像CPU也不高。可用内存还很多
[mw_shl_code=applescript,true]%Cpu(s):  8.3 us,  0.4 sy,  0.0 ni, 91.2 id,  0.0 wa,  0.0 hi,  0.0 si,  0.0 st[/mw_shl_code]

[mw_shl_code=applescript,true]
              total        used        free      shared  buff/cache   available
Mem:           125G         17G        8.3G        1.2G         99G        106G
[/mw_shl_code]

[mw_shl_code=applescript,true]TX:             cumm:   138MB   peak:   4.70MB                                                                                                   rates:    445KB  1.17MB  1.15MB
RX:                     100MB           3.14MB                                                                                                             799KB  1.05MB  1.09MB
TOTAL:                  238MB           7.84MB  
[/mw_shl_code]
iftop也没看到很大的流量
kafka进出的数据量也不太大

这是我们设的
request.required.asks=1

我在考虑要不要设这两个东西
rerplica.lag.time.max.ms=10000
rerplica.lag.max.messages=4000
感觉设了也不会解决落后的问题

配制中我的
num.network.threads=8
num.io.threads=16
log.dirs我是分别放在四个磁盘上

5台机器配制是一样的

回复

使用道具 举报

ighack 发表于 2019-5-22 16:18:41
本帖最后由 ighack 于 2019-5-22 16:26 编辑

kafka运行一段时间以后会报这样的错
[mw_shl_code=shell,true][2019-05-07 14:42:42,987] ERROR [ReplicaFetcherThread-0-2], Error for partition [Parallel_Computing_Bill_CS,0] to broker 2:org.apache.kafka.common.errors.NotLeaderForPartitionEx
ception: This server is not the leader for that topic-partition. (kafka.server.ReplicaFetcherThread)
[2019-05-07 14:42:42,987] ERROR [ReplicaFetcherThread-0-2], Error for partition [LMIS_TO_JLP,7] to broker 2:org.apache.kafka.common.errors.NotLeaderForPartitionException: This s
erver is not the leader for that topic-partition. (kafka.server.ReplicaFetcherThread)
[2019-05-07 14:42:42,987] ERROR [ReplicaFetcherThread-0-2], Error for partition [JLP_TO_LMIS_HBNET,1] to broker 2:org.apache.kafka.common.errors.NotLeaderForPartitionException:
This server is not the leader for that topic-partition. (kafka.server.ReplicaFetcherThread)
[2019-05-07 14:42:44,352] ERROR [ReplicaFetcherThread-0-2], Error for partition [Parallel_Computing_Bill_CS,0] to broker 2:org.apache.kafka.common.errors.NotLeaderForPartitionEx
ception: This server is not the leader for that topic-partition. (kafka.server.ReplicaFetcherThread)
[2019-05-07 14:42:44,352] ERROR [ReplicaFetcherThread-0-2], Error for partition [LMIS_TO_JLP,7] to broker 2:org.apache.kafka.common.errors.NotLeaderForPartitionException: This s
erver is not the leader for that topic-partition. (kafka.server.ReplicaFetcherThread)
[2019-05-07 14:42:44,353] ERROR [ReplicaFetcherThread-0-2], Error for partition [JLP_TO_LMIS_HBNET,1] to broker 2:org.apache.kafka.common.errors.NotLeaderForPartitionException:
This server is not the leader for that topic-partition. (kafka.server.ReplicaFetcherThread)
[2019-05-07 14:42:47,714] ERROR [ReplicaFetcherThread-0-2], Error for partition [LMIS_TO_JLP,7] to broker 2:org.apache.kafka.common.errors.NotLeaderForPartitionException: This s
erver is not the leader for that topic-partition. (kafka.server.ReplicaFetcherThread)
[2019-05-07 14:42:47,714] ERROR [ReplicaFetcherThread-0-2], Error for partition [JLP_TO_LMIS_HBNET,1] to broker 2:org.apache.kafka.common.errors.NotLeaderForPartitionException:
This server is not the leader for that topic-partition. (kafka.server.ReplicaFetcherThread)[/mw_shl_code]

zookeeper会发现一些超时的报错
[mw_shl_code=shell,true]stablished session 0x168dcba3f680148 with negotiated timeout 6000 for client /10.3.87.24:14093[/mw_shl_code]
像是这样的6000正好是kafka设的超时 时间
我现在把时间调到了12000

感觉像是选举出现错误了。但是我把掉了的那一台重启也不行
非要把5台机器全部重启一次就好了。一段时间就又报错了


回复

使用道具 举报

jixianqiuxue 发表于 2019-5-22 18:43:00
ighack 发表于 2019-5-22 16:18
kafka运行一段时间以后会报这样的错
[mw_shl_code=shell,true][2019-05-07 14:42:42,987] ERROR [ReplicaF ...

ntp安装了吗,确保时间同步。

另外zookeeper可能出问题了,kafka里面找不到leader了。所以肯定zookeeper出现问题。去看下日志。
回复

使用道具 举报

ighack 发表于 2019-5-23 09:00:54
我们做了ntp。现在就是不知道问题在那里
我们的zookeeper也是5台机器。应该不会都出问题吧
zookeeper建议
dataDir=/Data6/zookeeper-data
dataLogDir=/Data5/zookeeper-logs
这两个分在不同的目录里
我们除了有两台机器在一个目录里。别的都分了
回复

使用道具 举报

ighack 发表于 2019-5-23 09:02:14
还想问一下。怎么删除无用的groupid。网上都说是在zookeeper的consumers里。但我查到的是不在里面,对应不上我的groupid
回复

使用道具 举报

ighack 发表于 2019-5-23 09:32:04
[mw_shl_code=shell,true]avg-cpu:  %user   %nice %system %iowait  %steal   %idle
           2.61    0.00    0.79    0.16    0.00   96.44

Device:         rrqm/s   wrqm/s     r/s     w/s    rMB/s    wMB/s avgrq-sz avgqu-sz   await r_await w_await  svctm  %util
sda               0.00     0.00    0.00    4.67     0.00     0.06    25.64     0.11   23.07    0.00   23.07  11.50   5.37
sdb               0.00     0.00    0.00    5.00     0.00     0.05    19.20     0.24   48.73    0.00   48.73   5.07   2.53
sdg               0.00     0.00    0.00    0.00     0.00     0.00     0.00     0.00    0.00    0.00    0.00   0.00   0.00
sdf               0.00     0.00    0.00    0.00     0.00     0.00     0.00     0.00    0.00    0.00    0.00   0.00   0.00
sdc               0.00     0.00    0.00    0.00     0.00     0.00     0.00     0.00    0.00    0.00    0.00   0.00   0.00
sde               0.00     0.00    0.00    0.00     0.00     0.00     0.00     0.00    0.00    0.00    0.00   0.00   0.00
sdd               0.00     0.00    0.00    0.00     0.00     0.00     0.00     0.00    0.00    0.00    0.00   0.00   0.00
[/mw_shl_code]
以前也是怛心是IO的问题,调了num.network.threads=8,num.io.threads=16分了不同磁盘
但我发现我们的kafka流量并不高
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

关闭

推荐上一条 /2 下一条