1. 本际云推荐 - 专业推荐VPS、服务器,IDC点评首页
  2. 云主机运维
  3. VPS运维

Kafka宕机故障恢复

故障背景

本际云服务器平台在进行数据采集时,发现平台数据查询异常,经过仔细核查发现后台的kafka连接异常,并且日志文件涨至200G,导致MySQL主机存储溢出,最终导致整个平台使用异常。

Kafka宕机故障恢复

解决方案

经过查询资料发现,大量org.apache.kafka.common.network.Selector异常是由socket.request.max.bytes参数值过低导致,调整到告警值的两倍后重启正常。然而,下午发现平台监控采集数据又中断了,再次检查kafka发现有新的报错信息:(java.lang.OutOfMemoryError:Javaheapspace)。这次错误涉及内存溢出,需要调整kafka启动内存,对kafka的原生start脚本进行调整,重启后发现还是报大量内存溢出。

继续调查,发现kafka的start脚本写的是默认的1G,而该脚本也设置了启动内存,导致设置内存参数一直未生效。经过注释该参数,在kafka-server-start.sh里面加入如下参数,重启后顺利解决故障:

export KAFKA_HEAP_OPTS=”-Xmx6G -Xms6G -XX:MetaspaceSize=96m -XX:+UseG1GC -XX:MaxGCPauseMillis=20 -XX:InitiatingHeapOccupancyPercent=35 -XX:G1HeapRegionSize=16M -XX:MinMetaspaceFreeRatio=50 -XX:MaxMetaspaceFreeRatio=80″

故障总结

整个故障的原因是kafka异常导致数据采集进程异常并出现大量错误日志,以至于撑爆MySQL主机存储。故障的解决方案是进行topic数据保留时间的调整、启动内存的设置以及调整socket.request.max.bytes参数等。最后,我们将topic保留时间修改为12小时,启动内存进行调整,并进行socket.request.max.bytes参数的调整,解除了集群故障。

原创文章,作者:小编小本本,如若转载,请注明出处:https://www.benjiyun.com/yunzhujiyunwei/vps-yunwei/5949.html