Управление с помощью командной строки (CLI)#

Все перечисленные утилиты, кроме crx-auto-reassign-partitions.sh, crx-encoding.sh, crx-get-log.sh, crx-password-encrypt.sh, crx-schema-registry-data-import.sh поддерживают параметр --help (-h) для вывода детальной информации об утилите и всех параметрах.

Распределение партиций#

crx-auto-reassign-partitions.sh#

Утилита автоматической балансировки распределения партиций в кластере Kafka.

Параметры:

  • --bootstrap-server — адрес брокеров Kafka. Обязательный параметр;

  • --update-history — проверяет топологию кластера и при необходимости добавляет новое состояние в историю;

  • --print-history — распечатывает историю на консоль и в лог:

    • --from — дата и время в формате «yyyy-MM-dd’T’HH:mm:ss» (например, 2023-07-27T11:30:40), будут отображены все события истории, произошедшие с этого момента включительно;

    • --to — дата и время в формате «yyyy-MM-dd’T’HH:mm:ss», будут отображены все события истории, произошедшие до этого момента включительно;

    • аргументы --from и --to можно использовать как вместе, так и раздельно;

  • --print-topics-to-reassign — находит и распечатывает на консоль и в лог список топиков, для которых требуется изменить распределение;

  • --generate — генерирует и сохраняет в указанный файл новое распределение для топиков, нуждающихся в перераспределении:

  • --reassignment-json-file — файл для сохранения нового распределения;

  • --remove-broker-ids — Id брокеров, которые необходимо исключить из нового распределения;

  • --execute — генерирует и применяет новое распределение для топиков, нуждающихся в перераспределении:

    • --remove-broker-ids — Id брокеров, которые необходимо исключить из нового распределения;

  • --auto — полностью автоматический режим работы:

    • --remove-broker-ids — Id брокеров, которые необходимо исключить из нового распределения;

    • обновляет историю;

    • при наличии топиков, нуждающихся в перераспределении, генерирует и применяет новое распределение;

  • --command-config — property-файл, содержащий конфигурацию, которую использует Admin Client для подключения к Kafka-брокеру (настройки SSL и тому подобное).

Пример команды:

./bin/crx-auto-reassign-partitions.sh --bootstrap-server localhost:9092 --command-config ./config/crx-auto-reassign-partitions.properties

crx-check-reassignment-progress.sh#

Утилита для проверки статуса текущего прогресса распределения партиций между брокерами кластера.

Параметры:

  • --bootstrap-server (-bs) — адрес брокеров Kafka. Обязательный параметр;

  • --command-config (-cfg) — property-файл, содержащий конфигурацию, которую использует Admin Client для подключения к Kafka-брокеру (настройки SSL и тому подобное).

Пример команды:

./bin/crx-check-reassignment-progress.sh -bs localhost:9092

crx-check-replicas-rack-assignment.sh#

Утилита для проверки, что все партиции распределены по брокерам в разных ЦОД (rack).

Печатает список топиков, которые распределены по брокерам в одном ЦОД (rack).

Примечание

Подробнее о распределении партиции по брокерам в разных ЦОД в официальной документации Apache Kafka.

Параметры:

  • --bootstrap-server (-bs) — адрес брокеров Kafka. Обязательный параметр;

  • --topics — список топиков, для которых выполняется проверка. По умолчанию — для всех топиков;

  • --single-replica — проверяет топики с фактором репликации, равным 1. Если ключ указан, то фактор репликации 1 считается ошибкой распределения. По умолчанию — топики с фактором репликации 1 игнорируются;

  • --assign-to-all-racks — проверяет, что реплики каждой партиции располагаются на всех существующих rack в кластере. По умолчанию проверка отключена;

  • --json-file-to-reassign — записывает в файл партиции топиков, которые не удовлетворяют условию проверки. Формат файла совместим с форматом распределения, принимаемого на вход утилитой kafka-reassign-partitions.sh;

  • --verbose — выводит для каждого топика список партиций, которые не удовлетворяют критерию проверки;

  • --command-config (-cfg) — property-файл, содержащий конфигурацию, которую использует Admin Client для подключения к Kafka-брокеру (настройки SSL и тому подобное).

Пример команды:

./bin/crx-check-replicas-rack-assignment.sh -bs localhost:9092

crx-full-reassignment.sh#

Утилита для запуска полного перераспределения партиций между брокерами кластера.

Параметры:

  • --bootstrap-server (-bs) — адрес брокеров Kafka. Обязательный параметр;

  • --topics (-t) — имена топиков, партиции которых будут перераспределены между брокерами кластера. Если не указано, используются все топики в кластере;

  • --save-current-partition-assignment-path (-scp) — путь, куда будет сохранена текущая конфигурация распределения партиций по брокерам кластера (может использоваться для восстановления начальной конфигурации распределения партиций);

  • --save-target-partition-assignment-path (-stp) — путь, куда будет сохранена конфигурация, в соответствии с которой будет производиться перераспределение партиций;

  • --command-config (-cfg) — property-файл, содержащий конфигурацию, которую использует Admin Client для подключения к Kafka-брокеру (настройки SSL и тому подобное).

Пример команды:

./bin/crx-full-reassignment.sh -bs localhost:9092 -t topicName

crx-reassign-by-file.sh#

Утилита для запуска перераспределения партиций между брокерами кластера на основе конфигурации из файла.

Параметры:

  • --bootstrap-server (-bs) — адрес брокеров Kafka. Обязательный параметр;

  • --file (-f) — путь к файлу с конфигурацией, в соответствии с которой будет производиться перераспределение партиций между брокерами кластера. Обязательный параметр;

  • --command-config (-cfg) — property-файл, содержащий конфигурацию, которую использует Admin Client для подключения к Kafka-брокеру (настройки SSL и тому подобное).

Пример команды:

./bin/crx-reassign-by-file.sh -bs localhost:9092 -f ./configs.conf

crx-new-broker-partition-reassignment.sh#

Утилита для перераспределения партиций в кластере с учетом нового брокера.

Параметры:

  • --bootstrap-server (-bs) — адрес брокеров Kafka. Обязательный параметр;

  • --brokerid (-b) — Id брокера, на который нужно перераспределить партиции. Обязательный параметр;

  • --command-config (-cfg) — property-файл, содержащий конфигурацию, которую использует Admin Client для подключения к Kafka-брокеру (настройки SSL и тому подобное).

Пример команды:

./bin/crx-new-broker-partition-reassignment.sh -bs localhost:9092 -b 3

crx-check-broker-started.sh#

Утилита для проверки того, что брокер содержит синхронизированные реплики для партиций топиков

Параметры:

  • --bootstrap-server (-bs) — адрес брокеров Kafka. Обязательный параметр;

  • --brokerid (-b) — Id брокера, корректность запуска которого проверяется. Обязательный параметр;

  • --command-config (-cfg) — property-файл, содержащий конфигурацию, которую использует Admin Client для подключения к Kafka-брокеру (настройки SSL и тому подобное).

Пример команды:

./bin/crx-check-broker-started.sh -bs localhost:9092 -b 3

crx-full-revoke-broker.sh#

Утилита для перераспределения партиций с указанного брокера на остальные, удаления информации о брокере из ZooKeeper.

Если указанный брокер является контроллером кластера, то происходит перевыбор контроллера.

Параметры:

  • --bootstrap-server (-bs) — адрес брокеров Kafka. Обязательный параметр;

  • --brokerid (-b) — Id брокера, с которого требуется перенести партиции. Обязательный параметр;

  • --save-target-partition-assignment-path (-stp) — путь к файлу, в котором будет сохранена конфигурация, в соответствии с которой будет производиться перенос партиций;

  • --save-current-partition-assignment-path (-scp) — путь к файлу, в котором будет сохранена текущая конфигурация распределения партиций по брокерам кластера (может использоваться для восстановления начальной конфигурации распределения партиций);

  • --command-config (-cfg) — property-файл, содержащий конфигурацию, передаваемую Admin Client для подключения к Kafka-брокеру (настройки SSL и тому подобное).

Пример команды:

./bin/crx-full-revoke-broker.sh -bs localhost:9092 -b 1

crx-revoke-broker.sh#

Утилита для перераспределения партиций с указанного брокера на остальные брокеры в кластере.

Параметры:

  • --bootstrap-server (-bs) — адрес брокеров Kafka. Обязательный параметр;

  • --brokerid (-b) — Id брокера, с которого требуется перенести партиции. Обязательный параметр;

  • --save-target-partition-assignment-path (-stp) — путь к файлу, в котором будет сохранена конфигурация, в соответствии с которой будет производиться перенос партиций;

  • --save-current-partition-assignment-path (-scp) — путь к файлу, в котором будет сохранена текущая конфигурация распределения партиций по брокерам кластера (может использоваться для восстановления начальной конфигурации распределения партиций);

  • --topics (-t) — имена топиков, партиции которых будут распределены между остальными брокерами кластера;

  • --ignore-topics (-it) — имена топиков, партиции которых НЕ будут распределены между остальными брокерами кластера;

  • --fast-revoke (-fr) — параметр, указывающий, что нужно перераспределить только лидерские партиции (в этом случае следует передать значение true). Значение по умолчанию false;

  • --command-config (-cfg) — property-файл, содержащий конфигурацию, которую использует Admin Client для подключения к Kafka-брокеру (настройки SSL и тому подобное).

Пример команды:

./bin/crx-revoke-broker.sh -bs localhost:9092 -b 1

crx-setup-partitions.sh#

Утилиты для перераспределения партиций между брокерами, а также для увеличения числа партиций в топике с возможностью указания расположения.

Параметры:

  • --bootstrap-server (-bs) — адрес брокеров Kafka. Обязательный параметр;

  • --file (-f) — путь к файлу, описывающему требуемые изменения в кластере. Обязательный параметр;

  • --command-config (-cfg) — property-файл, содержащий конфигурацию, которую использует Admin Client для подключения к Kafka-брокеру (настройки SSL и тому подобное).

Пример команды:

./bin/crx-setup-partitions.sh -bs localhost:9092 -f ./config/utils/setup-partitions.yaml

Пример файла setup-partitions.yaml:

topics:
  - topicName: <topicName>
    partitions:
      existing:
        - leader: 2
          removeFrom: [1]
          addTo: [2]
          number: 2
        - auto: true
          number: 0
      adding:
        - leader: 3
          brokers: [2,3]
          number: 3
        - auto: true
          number: 4

crx-increase-replica-factor.sh#

Утилита для увеличения фактора репликации топиков.

Параметры:

  • --bootstrap-server (-bs) — адрес брокеров Kafka. Обязательный параметр;

  • --topics (-t) — имена топиков для увеличения фактора репликации. Если не указано, используются все топики на кластере;

  • --replication-factor (-rf) — требуемое значение фактора репликации, значение по умолчанию — 2;

  • --ignore-broker-rack (-ibr) — игнорирование информации о rack-серверах брокеров. Если требуется фактор репликации больше, чем количество rack-серверов брокеров передаем true. По умолчанию false;

  • --command-config (-cfg) — property-файл, содержащий конфигурацию, которую использует Admin Client для подключения к Kafka-брокеру (настройки SSL и тому подобное).

Пример команды:

./bin/crx-increase-replica-factor.sh -bs localhost:9092 -t topicName -rf 3

crx-get-consumer-groups-offsets.sh#

Утилита для получения текущего смещения у активных членов группы читателей для указанного топика.

Параметры:

  • --bootstrap-server (-bs) — адрес брокеров Kafka. Обязательный параметр;

  • --topic (-t) — имя топика, для которого нужно вывести информацию о смещении читающих его consumer-групп Обязательный параметр;

  • --thread-pool-size (-tps) — размер пула потоков, который используется для параллельной обработки информации о потребителях. Если не указано, используется значение по умолчанию 4;

  • --command-config (-cfg) — property-файл, содержащий конфигурацию, которую использует Admin Client для подключения к Kafka-брокеру (настройки SSL и тому подобное).

Пример команды:

./bin/crx-get-consumer-groups-offsets.sh -bs localhost:9092 -t topicName

Работа с конфигурацией#

crx-save-cluster-topic-partition-configs.sh#

Утилита для сохранения конфигураций топиков кластера в файл.

Два варианта использования:

  1. Передавать с флагом --properties (-p) путь к файлу properties со следующими настройками:

    • dest.file.path — путь к файлу, куда будет сохранена конфигурация топиков. Обязательный параметр;

    • bootstrap.server — адрес брокеров Kafka. Обязательный параметр;

    • without.replication.assignment — параметр для сохранения конфигурации топиков без указания схемы назначения партиций (значение true): на какие конкретно брокеры будет назначен лидер или фолловер указанной партиции. Значение по умолчанию false;

    Внимание!

    Формат выгрузки отличается от формата с указанием схемы назначения.

    Данная опция доступна только при сохранении конфигураций в формате json.

    • save.console.commands — параметр для сохранения настроек в виде консольных команд (значение true). Значение по умолчанию false;

    • dest.bootstrap.server — адрес брокеров Kafka, на которых будут запускаться команды. Требуется, если save.console.commands=true;

    • command.config — путь к property-файлу c конфигурацией, передаваемой Admin Client для подключения к Kafka-брокеру (настройки SSL и тому подобное).

    Также файл может содержать все свойства для конфигурации Kafka клиента вместо указания отдельного файла свойств command.config.

Пример команды:

./bin/crx-save-cluster-topic-partition-configs.sh -p /KAFKA/config/utils/save-cluster-topic-partitions-configs.properties
  1. Передавать с флагом --bootstrap-server (-bs) <host:port> брокера Kafka и с флагом --dest-file-path (-d) путь к файлу для сохранения конфигурации топиков.

    Дополнительные опции:

    • --without-replication-assignment (-wra) — параметр для сохранения конфигурации топиков без указания схемы назначения партиций (значение true): на какие конкретно брокеры будет назначен лидер или фолловер указанной партиции. Значение по умолчанию false;

    Внимание!

    Формат выгрузки отличается от формата с указанием схемы назначения.

    Данная опция доступна только при сохранении конфигураций в формате json.

    • --save-console-commands (-scc) — параметр для сохранения настроек в виде консольных команд, используя параметр --bootstrap-server (значение true). Настройки топика сохраняются в формате --config <property 1> --config <property 2> --config <property3>. Значение по умолчанию false;

    • --dest-bootstrap-server (-dbs) — адрес брокеров Kafka, на которых будут запускаться команды. Требуется, если --save-console-commands true;

    • --command-config (-cfg) — property-файл, содержащий конфигурацию, которую использует Admin Client для подключения к Kafka-брокеру (настройки SSL и тому подобное).

    Пример команды:

    ./bin/crx-save-cluster-topic-partition-configs.sh -bs localhost:9092 -d ./saveClusterTopicPartitionsConfigs.conf
    

crx-restore-cluster-topic-partition-configs.sh#

Утилита для восстановления конфигурации топиков из файла на указанном кластере.

Два варианта использования:

  1. Передавать с флагом --properties (-p) файл properties со следующими настройками:

    • source.file.path — путь к файлу с конфигурацией топиков для установки на кластер. Обязательный параметр;

    • bootstrap.server — адрес брокеров Kafka. Обязательный параметр;

    • without.replication.assignment — параметр для восстановления конфигурации топиков вне зависимости от схемы назначения партиций (значение true): на какие конкретно брокеры будет назначен лидер или фолловер указанной партиции. Данная опция доступна только при восстановлении конфигураций в формате json. Значение по умолчанию false;

    • force — параметр для принудительной перезаписи настроек топиков на кластере, если указанные в файле топики уже существуют (значение true). Значение по умолчанию false;

    • command.config — путь к property-файлу c конфигурацией, передаваемой Admin Client для подключения к Kafka-брокеру (настройки SSL и тому подобное).

    Также файл может содержать все свойства для конфигурации Kafka-клиента вместо указания отдельного файла свойств command.config.

    Пример команды:

    ./bin/crx-restore-cluster-topic-partition-configs.sh -p /KAFKA/config/utils/restore-cluster-topic-partitions-configs.properties
    
  2. Передавать с флагом --bootstrap-server (-bs) host:port брокера Kafka и с флагом --source-file-path (-s) путь к файлу, с конфигурацией топиков для установки на кластер.

    Дополнительные опции:

    • --without-replication-assignment (-wra) — параметр для восстановления конфигурации топиков вне зависимости от схемы назначения партиций (значение true): на какие конкретно брокеры будет назначен лидер или фолловер указанной партиции. Данная опция доступна только при восстановлении конфигураций в формате json. Значение по умолчанию false.

    • --force (-f) — параметр для принудительной перезаписи настроек топиков на кластере, если указанные в файле топики уже существуют (значение true). Значение по умолчанию false;

    • --command-config (-cfg) — property-файл, содержащий конфигурацию, которую использует Admin Client для подключения к Kafka-брокеру (настройки SSL и тому подобное).

    Пример команды:

    ./bin/crx-restore-cluster-topic-partition-configs.sh -bs localhost:9092 -s ./topicPartitionConfigs.conf
    

crx-save-cluster-acl-configs.sh#

Утилита для сохранения конфигурации ACL кластера в файл.

Два варианта использования:

  1. Передавать с флагом --properties (-p) файл properties со следующими настройками:

    • dest.file.path — путь к файлу, куда будет сохранена конфигурация ACL. Обязательный параметр;

    • bootstrap.server — адрес брокеров Kafka. Обязательный параметр;

    • save.console.commands — параметр для сохранения настроек в виде консольных команд (значение true). Значение по умолчанию false;

    • dest.bootstrap.server — адреса брокеров Kafka, на которых будут запускаться команды. Требуется, если save.console.commands=true;

    • command.config — путь к property-файлу c конфигурацией, передаваемой Admin Client для подключения к Kafka-брокеру (настройки SSL и тому подобное).

    Также файл может содержать все свойства для конфигурации Kafka клиента вместо указания отдельного файла свойств command.config.

Пример команды:

./bin/crx-save-cluster-acl-configs.sh -p /KAFKA/config/utils/save-cluster-acl-configs.properties
  1. Передавать с флагом --bootstrap-server (-bs) host:port брокера Kafka и с флагом --dest-file-path (-d) файл для сохранения конфигурации ACL.

    Дополнительные опции:

    • --save-console-commands (-scc) — параметр для сохранения настроек в виде консольных команд, используя параметр --bootstrap-server (значение true). Значение по умолчанию false;

    • --dest-bootstrap-server (-dbs) — адреса брокеров Kafka, на которых будут запускаться команды. Требуется, если --save-console-commands true;

    • --command-config (-cfg) — property-файл, содержащий конфигурацию, которую использует Admin Client для подключения к Kafka-брокеру (настройки SSL и тому подобное).

    Пример команды:

    ./bin/crx-save-cluster-acl-configs.sh -bs localhost:9092 -d ./saveClusterAclConfigs.conf`
    

crx-get-acl-by-filters.sh#

Утилита для вывода и сохранения конфигурации ACL с указанными фильтрами поиска по топикам и/или принципалам в файл.

Параметры:

  • --bootstrap-server (-bs) — адрес брокеров Kafka. Обязательный параметр;

  • --dest-file-path (-d) — путь к файлу, в котором будет сохранена конфигурация ACL. Обязательный параметр;

  • --topic (-t) — имя топика, для которого нужно вывести и сохранить конфигурацию ACL. Если не указано, сохраняется конфигурация для всех топиков в кластере;

  • --principal-regex (-pr) — поиск ACL будет производиться с использованием регулярного выражения принципала. Если не указано, сохраняется конфигурация для всех принципалов;

  • --principal-substr (-ps) — поиск ACL будет производиться по указанной подстроке принципала. Если не указано, сохраняется конфигурация для всех принципалов;

  • --command-config (-cfg) — property-файл, содержащий конфигурацию, которую использует Admin Client для подключения к Kafka-брокеру (настройки SSL и тому подобное).

Пример команды:

./bin/crx-get-acl-by-filters.sh -bs localhost:9092 -d ./aclConfigsByFilters.conf`

crx-remove-acl-configs.sh#

Основной класс утилиты для удаления в кластере конфигурации ACL указанного принципала или всех ACL, если принципал не указан.

Параметры:

  • --bootstrap-server (-bs) — адрес брокеров Kafka. Обязательный параметр;

  • --principal (-p) — Принципал, для которого необходимо удалить ACL. Если не указан, удаляются все ACL в кластере;

  • --command-config (-cfg) — property-файл, содержащий конфигурацию, которую использует Admin Client для подключения к Kafka-брокеру (настройки SSL и тому подобное).

Пример команды:

./bin/crx-remove-acl-configs.sh -bs localhost:9092 -p User:CN=Alex

crx-restore-cluster-acl-configs.sh#

Утилита для восстановления конфигурации ACL из файла на указанном кластере.

Два варианта использования:

  1. Передавать с флагом --properties (-p) файл properties со следующими настройками:

    • source.file.path — путь к файлу c конфигурацией ACL для создания на кластере. Обязательный параметр;

    • bootstrap.server — адрес брокеров Kafka. Обязательный параметр;

    • force — параметр для принудительной перезаписи настроек ACL на кластере, если указанные в файле ACL уже существуют (значение true). Значение по умолчанию — false;

    • command.config — путь к property файлу c конфигурацией, передаваемой Admin Client для подключения к Kafka-брокеру (настройки SSL и тому подобное).

    Также файл может содержать все свойства для конфигурации Kafka клиента вместо указания отдельного файла свойств command.config.

    Пример команды:

    ./bin/crx-restore-cluster-acl-configs.sh -p /KAFKA/config/utils/restore-cluster-acl-configs.properties
    
  2. Передавать с флагом --bootstrap-server (-bs) host:port брокера Kafka и с флагом --source-file-path (-s) путь к файлу с конфигурацией ACL для установки на кластер.

    Дополнительные опции:

    • --force (-f) — параметр для принудительной перезаписи настроек ACL на кластере, если указанные в файле ACL уже существуют (значение true). Значение по умолчанию false;

    • --command-config (-cfg) — property-файл, содержащий конфигурацию, которую использует Admin Client для подключения к Kafka-брокеру (настройки SSL и тому подобное).

    Пример команды:

    ./bin/crx-restore-cluster-acl-configs.sh -bs localhost:9092 -s ./restoreClusterAclConfigs.conf
    

crx-cleanup-cluster-configs.sh#

Утилита для удаления конфигурации всех ACL и топиков в кластере.

Параметры:

  • --bootstrap-server (-bs) — адрес брокеров Kafka. Обязательный параметр;

  • --command-config (-cfg) — property-файл, содержащий конфигурацию, передаваемую Admin Client для подключения к Kafka-брокеру (настройки SSL, переопределение настроек SSL для ZooKeeper и тому подобное).

Пример команды:

./bin/crx-cleanup-cluster-configs.sh -bs localhost:9092

crx-save-cluster-entities-configs.sh#

Утилита для сохранения конфигураций ACL и топиков кластера в файл.

Два варианта использования:

  1. Передавать с флагом --properties (-p) файл properties со следующими настройками:

    • dest.file.path — путь к файлу, куда будет сохранена конфигурация ACL и топиков. Обязательный параметр;

    • bootstrap.server — адрес брокеров Kafka. Обязательный параметр;

    • without.replication.assignment — параметр для сохранения конфигурации топиков без указания схемы назначения партиций (значение true): на какие конкретно брокеры будет назначен лидер или фолловер указанной партиции. Значение по умолчанию false;

    Внимание!

    Формат выгрузки отличается от формата с указанием схемы назначения.

    • command.config — путь к property-файлу c конфигурацией, передаваемой Admin Client для подключения к Kafka-брокеру (настройки SSL и тому подобное).

Также файл может содержать все свойства для конфигурации Kafka-клиента вместо указания отдельного файла свойств command.config.

Пример команды:

./bin/crx-save-cluster-entities-configs.sh -p /KAFKA/config/utils/save-cluster-entities-configs.properties
  1. Передавать с флагом --bootstrap-server (-bs) host:port брокера Kafka и с флагом --dest-file-path (-d) файл для сохранения конфигурации ACL и топиков.

    Дополнительные опции:

    • --without-replication-assignment (-wra) — параметр для сохранения конфигурации топиков без указания схемы назначения партиций (значение true): на какие конкретно брокеры будет назначен лидер или фолловер указанной партиции. Значение по умолчанию false;

    Внимание!

    Формат выгрузки отличается от формата с указанием схемы назначения.

    • --command-config (-cfg) — property-файл, содержащий конфигурацию, которую использует Admin Client для подключения к Kafka-брокеру (настройки SSL и тому подобное).

Пример команды:

./bin/crx-save-cluster-entities-configs.sh -bs localhost:9092 -d ./saveClusterEntitiesConfigs.conf`

crx-restore-cluster-entities-configs.sh#

Утилита для восстановления конфигурации ACL и топиков из файла на указанном кластере.

Два варианта использования:

  1. Передавать с флагом --properties (-p) файл properties со следующими настройками:

    • source.file.path — путь к файлу с конфигурацией ACL и топиков для создания на кластере. Обязательный параметр;

    • bootstrap.server — адрес брокеров Kafka. Обязательный параметр;

    • without.replication.assignment — параметр для восстановления конфигурации топиков вне зависимости от схемы назначения партиций (значение true): на какие конкретно брокеры будет назначен лидер или фолловер указанной партиции. Значение по умолчанию false;

    • force — параметр для принудительной перезаписи настроек ACL и топиков на кластере, если указанные в файле топики и ACL уже существуют (значение true). Значение по умолчанию false;

    • command.config — путь к property-файлу c конфигурацией, передаваемой Admin Client для подключения к Kafka-брокеру (настройки SSL и тому подобное).

    Также файл может содержать все свойства для конфигурации Kafka клиента вместо указания отдельного файла свойств command.config.

    Пример команды:

    ./bin/crx-restore-cluster-entities-configs.sh -p /KAFKA/config/utils/restore-cluster-entities-configs.properties
    
  2. Передавать с флагом --bootstrap-server (-bs) host:port брокера Kafka и с флагом --source-file-path (-s) путь к файлу с конфигурацией ACL и топиков для установки на кластер.

    Дополнительные опции:

    • --without-replication-assignment (-wra) — параметр для восстановления конфигурации топиков вне зависимости от схемы назначения партиций (значение true): на какие конкретно брокеры будет назначен лидер или фолловер указанной партиции. Значение по умолчанию false;

    • --force (-f) — параметр для принудительной перезаписи настроек ACL и топиков на кластере, если указанные в файле ACL и топики уже существуют (значение true). Значение по умолчанию false;

    • --command-config (-cfg) — property-файл, содержащий конфигурацию, которую использует Admin Client для подключения к Kafka-брокеру (настройки SSL и тому подобное).

    Пример команды:

    ./bin/crx-restore-cluster-entities-configs.sh -bs localhost:9092 -s ./entitiesConfigs.conf
    

Логирование#

crx-get-log.sh#

Утилита для получения логов из топика Log Collector.

Параметры:

  • --config (-с) — путь к yaml-файлу, содержащему основные настройки программы. Обязательный параметр.

Пример команды:

./bin/crx-get-log.sh -c ./config/utils/get-log-configs.yaml

Пример файла get-log-configs.yaml:

filter:
  start: ''
  end: ''
  ip: ''
  id: ''
consumerConfig:
  bootstrap.servers: '<LogCollectorHost:LogCollectorPort>'
  topic: '<LogCollectorTopicName>'
  key.deserializer: 'org.apache.kafka.common.serialization.ByteArrayDeserializer'
  value.deserializer: 'org.apache.kafka.common.serialization.ByteArrayDeserializer'
  auto.offset.reset: 'earliest'
  security.protocol: ''
  ssl.keystore.location: ''
  ssl.truststore.location: ''
  ssl.keystore.password: ''
  ssl.truststore.password: ''
  ssl.endpoint.identification.algorithm: ''

crx-parse-zk-data-logs.sh#

Утилита для анализа транзакционного лога ZooKeeper.

Утилите требуется передать абсолютный путь транзакционного лога.

Пример команды:

./bin/crx-parse-zk-data-logs.sh /KAFKA/data/zookeeper-data/version-2/log.1

Schema Registry#

crx-schema-registry-data-import.sh#

Утилита для импорта данных, предварительно сохраненных из системного топика _schemas Confluent Schema Registry в файл, в Corax Schema Registry. Отчет импорта выводится в schema-registry-importer.log.

Параметры:

  • --import — режим импорта данных из файла, путь к которому передается первым аргументом утилите. Является режимом по умолчанию;

  • --clear — режим удаления схем для всех существующих субъектов в Schema Registry.

Использование:

./bin/crx-schema-registry-data-import.sh <pathtoSourceFile> <CoraxSchemaRegistryUrl> <mode>

Пример команды:

./bin/crx-schema-registry-data-import.sh /Users/user/Downloads/schemas_all.txt http://localhost:8081 --import