8 commentaires
hello
t'as jeté un œil à la métrique
kafka_broker_network_processor_idle_percentsur tes brokers ? des fois si y'a des pics de connexions ou de requêtes ça peut saturer les threads de traitement réseau même si le cpu global est bas
ok je vais regarder ces métriques. pour le network processor idle il est autour de 90% donc ça me parait pas saturé. pour le log flush j'ai des pics à 200ms parfois alors que d'habitude c'est 1-2ms. ça pourrait être ça
200ms c énorme pour un flush. t'es sur quel type de disque sur tes ec2 ? gp2 gp3 io1 ? et t'es en
syncou
asyncpour le flush ? si t'es en sync ça attend le retour du fs avant de continuer
on est sur du gp3 avec 3000 iops alloués c'est censé être pas mal. on est en flush synchrone oui c'est pour la durabilité. les snapshots ebs c'est une piste intéressante je vais vérifier les logs d'activité aws
si c'est gp3 et que tu as alloué plus d'iops que ce qui est utilisé tu peux augmenter les iops provisionnés voir si ça aide. même si c'est pas saturé des fois le burst du gp3 est pas suffisant pour les pics de kafka. et regarde ton
volume_queue_lengthsur cloudwatch aussi
bingo ! c'était bien les snapshots ebs. ils sont configurés pour tourner toutes les 4 heures et ça correspond pile poil à nos pics de latence. on va décaler les snapshots à des heures creuses ou explorer des options d'iops plus stables. thx pour l'aide
Laisser une réponse
Vous devez être connecté pour poster un message !
salut
on a un cluster kafka qui tourne sur des instances ec2. depuis ce matin on a des pics de latence côté producteurs et consommateurs. ça passe de 5ms à 500ms par intermittence. j'ai checké cpu mémoire réseau sur les brokers ça a l'air ok. pas de saturation disque particulière. les logs kafka sont silencieux. prométhéus montre juste les pics de latence rien d'autre d'anormal