2017-07-30 2 views
0

Nous testons un scénario de défaillance d'un nœud, sur un cluster de kafka 3 instance, avec un facteur de réplication de 2.erreur de consommateur Kafka après l'échec du noeud

Après suppression d'une instance, le consommateur est constamment défaillante.

Le consommateur utilise kafka flux pour lire les messages

Merci

C'est le journal d'échec des consommateurs:

08:09:19.667 [ComponentsActivityEventsStream-608b9f05-0911-4b14-a1b1-37247747686a-StreamThread-2] ERROR o.a.k.c.c.i.ConsumerCoordinator - User provided listener org.apache.kafka.streams.processor.internals.StreamThread$RebalanceListener for group ComponentsActivityEventsStream failed on partition assignment 

org.apache.kafka.streams.errors.StreamsException: Store ComponentsActivityStore's change log (ComponentsActivityEventsStream-ComponentsActivityStore-changelog) does not contain partition 0 

    at org.apache.kafka.streams.processor.internals.StoreChangelogReader.validatePartitionExists(StoreChangelogReader.java:87) 

    at org.apache.kafka.streams.processor.internals.ProcessorStateManager.register(ProcessorStateManager.java:165) 

    at org.apache.kafka.streams.processor.internals.AbstractProcessorContext.register(AbstractProcessorContext.java:100) 

    at org.apache.kafka.streams.state.internals.RocksDBSegmentedBytesStore.init(RocksDBSegmentedBytesStore.java:110) 

... 
08:09:19.673 [ComponentsActivityEventsStream-608b9f05-0911-4b14-a1b1-37247747686a-StreamThread-2] INFO o.a.k.s.p.i.StreamThread - stream-thread [ComponentsActivityEventsStream-608b9f05-0911-4b14-a1b1-37247747686a-StreamThread-2] Shutting down 

08:09:19.674 [ComponentsActivityEventsStream-608b9f05-0911-4b14-a1b1-37247747686a-StreamThread-2] INFO o.a.k.c.p.KafkaProducer - Closing the Kafka producer with timeoutMillis = 9223372036854775807 ms. 

08:09:19.681 [ComponentsActivityEventsStream-608b9f05-0911-4b14-a1b1-37247747686a-StreamThread-2] INFO o.a.k.s.p.i.StreamThread - stream-thread [ComponentsActivityEventsStream-608b9f05-0911-4b14-a1b1-37247747686a-StreamThread-2] Removing all active tasks [] 

08:09:19.681 [ComponentsActivityEventsStream-608b9f05-0911-4b14-a1b1-37247747686a-StreamThread-2] INFO o.a.k.s.p.i.StreamThread - stream-thread [ComponentsActivityEventsStream-608b9f05-0911-4b14-a1b1-37247747686a-StreamThread-2] Removing all standby tasks [] 

08:09:19.681 [ComponentsActivityEventsStream-608b9f05-0911-4b14-a1b1-37247747686a-StreamThread-2] INFO o.a.k.s.p.i.StreamThread - stream-thread [ComponentsActivityEventsStream-608b9f05-0911-4b14-a1b1-37247747686a-StreamThread-2] Removing all standby tasks [] 

08:09:19.681 [ComponentsActivityEventsStream-608b9f05-0911-4b14-a1b1-37247747686a-StreamThread-2] INFO o.a.k.s.p.i.StreamThread - stream-thread [ComponentsActivityEventsStream-608b9f05-0911-4b14-a1b1-37247747686a-StreamThread-2] Stream thread shutdown complete 

08:09:19.681 [ComponentsActivityEventsStream-608b9f05-0911-4b14-a1b1-37247747686a-StreamThread-2] WARN o.a.k.s.p.i.StreamThread - stream-thread [ComponentsActivityEventsStream-608b9f05-0911-4b14-a1b1-37247747686a-StreamThread-2] Unexpected state transition from ASSIGNING_PARTITIONS to DEAD. 

08:09:19.681 [ComponentsActivityEventsStream-608b9f05-0911-4b14-a1b1-37247747686a-StreamThread-2] WARN i.a.k.BaseEventsStream - uncaught exception in stream thread ComponentsActivityEventsStream 

org.apache.kafka.streams.errors.StreamsException: stream-thread [ComponentsActivityEventsStream-608b9f05-0911-4b14-a1b1-37247747686a-StreamThread-2] Failed to rebalance. 

    at org.apache.kafka.streams.processor.internals.StreamThread.pollRequests(StreamThread.java:589) 

    at org.apache.kafka.streams.processor.internals.StreamThread.runLoop(StreamThread.java:553) 

    at org.apache.kafka.streams.processor.internals.StreamThread.run(StreamThread.java:527) 

Caused by: org.apache.kafka.streams.errors.StreamsException: Store ComponentsActivityStore's change log (ComponentsActivityEventsStream-ComponentsActivityStore-changelog) does not contain partition 0 

    at org.apache.kafka.streams.processor.internals.StoreChangelogReader.validatePartitionExists(StoreChangelogReader.java:87) 

    at org.apache.kafka.streams.processor.internals.ProcessorStateManager.register(ProcessorStateManager.java:165) 
+0

Cette application dispose-t-elle des trois courtiers dans sa liste de serveurs bootstrap? –

+0

C'était la liste de bootstrap-serveurs en effet, merci –

+0

Ok Je posterai comme une réponse plutôt qu'un commentaire et s'il vous plaît acceptez comme la solution correcte –

Répondre

1

Vérifiez que les trois courtiers sont énumérés dans la liste bootstrap serveurs. Si vous ne faites que lister un courtier et que c'est lui qui est en panne, il n'y a aucun moyen pour le consommateur d'obtenir les méta-données dont il a besoin pour savoir lequel des nœuds est le leader pour chaque partition de votre sujet. S'il ne peut pas obtenir une réponse de métadonnées valide, il ne se connectera à aucun des deux autres courtiers, même s'il a des copies actives des données.