Kafka ISR сократился и не расширяется

У меня есть кластер Kafka из 3 узлов с 1 ZK и 1 брокером на каждом.

Kafka version 0.10.1.1.

В каждой теме есть replication-factor=3 и min.insync.replicas=2. После этого мы проверили, отправив --describe, что темы были успешно созданы с правильными replication-factor и ISR.

Я вижу, что через некоторое время несколько тем сократили свой ISR до одного лидера.

/opt/kafka/bin/kafka-topics.sh --describe --zookeeper zk1:2181,zk2:2181,zk3:2181 --topic topic1
Topic:topic1  PartitionCount:1        ReplicationFactor:1     Configs:
        Topic: topic1 Partition: 0    Leader: 1       Replicas: 1     Isr: 1

/opt/kafka/bin/kafka-topics.sh --describe --zookeeper zk1:2181,zk2:2181,zk3:2181 --topic topic2
Topic:topic2  PartitionCount:1        ReplicationFactor:1     Configs:
        Topic: topic2 Partition: 0    Leader: 1       Replicas: 1     Isr: 1

Когда я подключаюсь к zk Shell. Я вижу, что все узлы работают, а controller находится в broker:2.

/opt/kafka/bin/zookeeper-shell.sh --describe --zookeeper zk1:2181,zk2:2181,zk3:2181
ls /brokers/ids
[0,1,2]

get /controller
{"version":1,"brokerid":2,"timestamp":"1531740996571"}

Даже если я попытаюсь перезапустить Брокеров (Только брокеры или вместе с владельцами зоопарка), Темы не расширятся.

Любой совет высоко ценится!


person Divs    schedule 17.07.2018    source источник


Ответы (1)


Глядя на описания темы, похоже, что эти темы были созданы с коэффициентом репликации 1:

ReplicationFactor:1

Установка default.replication.factor=2 и min.insync.replicas=2 в конфигурациях брокера не препятствует созданию тем с коэффициентом репликации = 1.

Чтобы это исправить, вы можете увеличить коэффициент репликации этих тем с помощью инструмента kafka-reassign-partitions.sh.

Чтобы этого не произошло, вы можете использовать Создать Тема и Изменить конфигурацию Политики отклонения тем с недопустимым коэффициентом репликации.

person Mickael Maison    schedule 17.07.2018
comment
Спасибо. Проверю. Я проверил history команд, и --create четко показал replication-factor=3. - person Divs; 17.07.2018
comment
Команда, используемая для создания: /opt/kafka/bin/kafka-topics.sh --create --zookeeper zk1:2181,zk2:2181,zk3:2181 --replication-factor 3 --partitions 1 --config min.insync.replicas=2 --topic topic1 - person Divs; 17.07.2018
comment
Не могли бы вы рассказать мне о некоторых способах использования политики создания темы и политики изменения конфигурации? - person Divs; 17.07.2018
comment
Они недоступны в 0.10.1. Политика создания тем была добавлена ​​в 0.10.2, а изменение конфигураций — в 0.11. Также политики используются только при создании/изменении тем через Kafka Admin API. Если вы заинтересованы в их использовании, перейдите на более новую версию, проверьте ссылки на javadoc из моего ответа и прочитайте описание конфигурации для create.topic.policy.class.name и alter.config.policy.class.name из kafka.apache.org/documentation/#brokerconfigs - person Mickael Maison; 17.07.2018