Да, вы можете увеличить количество разделов темы с помощью командной строки или AdminClient
без перезапуска процессов кластера.
Пример:
bin/kafka-topics.sh --zookeeper zk_host:port --alter --topic testtopic1
--partitions 20
Обратите внимание, что изменение разделов не меняет разбиение существующих тем.
Кафка позволяет только увеличивать разделы, но вы не можете уменьшить разделы. Если в этом случае вам нужно уменьшить количество разделов, вам нужно удалить и заново создать тему.
На ваш вопрос " что происходит с производителем / потребителем, ведут себя для вновь добавленных разделов "
Кафка имеет свойство metadata.max.age.ms
для производителей и потребителей, по умолчанию 300000.
metadata.max.age.ms: промежуток времени в миллисекундах, после которого мы принудительно обновляем метаданные, даже если мы не видели каких-либо изменений в лидерстве разделов для проактивного обнаружения каких-либо новых брокеров или разделов .
После заданного значения метаданные обновляются, и все новые добавленные разделы будут обнаруживаться производителями / потребителями.