6 votes

Kafka Consumer de haut niveau error_code=15

Lors de la tentative de consommation depuis Kafka en utilisant le consommateur de haut niveau (en utilisant un groupe de consommateurs complètement nouveau), le consommateur ne démarre jamais. Quand je passe le niveau de journalisation en mode debug, je peux voir les deux lignes suivantes se répéter sans cesse :

DEBUG [AbstractCoordinator] 09:43:51.192: Envoi de la requête du coordinateur pour le groupe CompletelyNewConsumerGroupThatIneverUsedBefore au courtier 172.30.3.61:30000 (id: 1043 rack: null)
DEBUG [AbstractCoordinator] 09:43:51.306: Réception de la réponse du coordinateur de groupe ClientResponse(receivedTimeMs=1487666631306, disconnected=false, request=ClientRequest(expectResponse=true, callback=org.apache.kafka.clients.consumer.internals.ConsumerNetworkClient$RequestFutureCompletionHandler@58f68932, request=RequestSend(header={api_key=10,api_version=0,correlation_id=197,client_id=consumer-1}, body={group_id=CompletelyNewConsumerGroupThatIneverUsedBefore}), createdTimeMs=1487666631192, sendTimeMs=1487666631192), responseBody={error_code=15,coordinator={node_id=-1,host=,port=-1}})

Tous les 6 nœuds du cluster consomment correctement les données. Même l'ancien consommateur de bas niveau fonctionne. De plus, dans Zookeeper, il n'y a que les 6 nœuds qui devraient être là et leurs fichiers journaux semblent corrects.

En faisant des recherches sur Google, j'ai trouvé que l'error_code=15 signifie que le coordinateur de groupe n'est pas disponible. Je suppose que cela signifie le coordinateur de groupe de consommateurs. Est-ce un problème de rappel ? Pourquoi le consommateur de haut niveau ne fonctionne-t-il pas ?

5voto

xgb84j Points 306

Comme il s'est avéré, toutes les partitions du sujet __consumer_offsets étaient situées sur des nœuds morts (des nœuds que j'ai éteints et qui ne reviendront jamais). J'ai résolu le problème en arrêtant le cluster, en supprimant le sujet __consumer_offsets de Zookeeper, puis en redémarrant le cluster.

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X