Apache Kafka: программный мониторинг групп потребителей

Я хотел бы отслеживать группы потребителей (группы на основе Kafka, а не ZK) в моем кластере Kafka из приложения Python (я готов использовать либо библиотеку Kafka-python, либо слитный клиент Kafka). Цель состоит в том, чтобы запустить больше (или удалить некоторых) потребителей на основе задержки каждой группы потребителей.

Слитный API-интерфейс администратора Kafka, похоже, не имеет возможности Python для этого. Берроу, кажется, вариант. Но это будет дополнительная услуга по настройке и мониторингу.

Любые альтернативные подходы также приветствуются. Я ищу лучшую практику для этого.

Благодарю вас!


person void    schedule 13.08.2018    source источник
comment
Python, вероятно, мог бы делать то же, что и Берроу, если бы кто-то захотел перевести Golang на Python.   -  person OneCricketeer    schedule 09.12.2018


Ответы (1)


Если ваши клиенты и брокеры Kafka достаточно современные, вы можете добиться этого, отслеживая тему __consumer-offsets, определяя некоторый уровень порога задержки, который заставляет вас масштабировать свои группы потребителей. Это выходит за рамки возможностей AdminClient, так как это связано с тем, сколько потребителей вы запускаете на прикладном уровне, и на самом деле не имеет ничего общего с операциями брокера.

Я также хотел бы убедиться, что ваши темы Kafka иметь достаточно разделов, чтобы гибко масштабировать группы потребителей.

person Chris Matta    schedule 13.08.2018