Въведение в Kafka Tools
Kafka Tools е съвкупност от различни инструменти, с които можем да управляваме нашия Kafka клъстер. Инструментите са предимно базирани на команден ред, но също така са налични инструменти, базирани на потребителски интерфейс, които могат да бъдат изтеглени и инсталирани.
Можем да използваме Kafka инструменти за извършване на различни операции като:
- Избройте наличните клъстери Kafka и техните брокери, теми и потребители.
- Може да отпечатва съобщенията от различни теми в стандартния изход. Инструментите, базирани на потребителския интерфейс, определено могат да осигурят по-добра четимост.
- Добавете и пуснете теми от брокерите.
- Добавете нови съобщения в дяловете.
- Вижте всички компенсации на нашите потребители.
- Създайте дялове на нашите теми.
- Избройте всички групи потребители, опишете групите потребители, изтрийте информацията за групата потребители и нулирайте компенсирането на групата потребители.
Ако искаме да използваме потребителски интерфейс, можем да използваме Kafka Tool, който може да бъде изтеглен от следната уеб страница:
http://www.kafkatool.com/download.html
Това приложение е достъпно безплатно за лична употреба, но трябва да закупим лиценз за търговска употреба. Хубавото в него е наличието му за Mac, Windows и Linux системи.
Топ 3 вида инструменти Kafka
Инструментите на Kafka се категоризират в системни инструменти и инструменти за приложение.
1. Системни инструменти
Системните инструменти могат да бъдат стартирани с помощта на следния синтаксис.
Синтаксис:
bin/kafka-run-class.sh package.class - - options
Някои от системните инструменти са както следва:
- Инструмент за миграция на Kafka : Този инструмент се използва за миграция на Kafka Broker от една версия към друга.
- Consumer Offset Checker: Този инструмент може да показва Consumer Group, Topic, Partitions, Off-set, logSize, Owner за посочения набор от теми и Consumer Group.
- Производител на огледала: Този инструмент се използва за огледало на един Kafka клъстер към друг.
2. Инструменти за репликация
Това са основно дизайнерски инструменти на високо ниво, осигурени за дълготрайност и достъпност.
Някои от инструментите за репликация са:
- Инструмент за създаване на тема: Този инструмент се използва за създаване на теми с по подразбиране брой дялове и фактор на репликация.
- Инструмент за списък с теми : Използва се за изброяване на информация за даден списък от теми. Страхотното в този инструмент е, че ако в командния ред вече не е налична тема, той ще поиска от Zookeeper първо да избере списъка с теми и след това да отпечата информация за тях. Той изброява различни полета като Име на тема, дялове, лидер, реплики и т.н.
- Инструмент за добавяне на дял: Този инструмент се използва за добавяне на дялове към тема, необходима за справяне с нарастването на обема на данни в темата. Но имайте предвид, че трябва да уточним дяловете, докато създаваме темата. Този инструмент ни позволява да добавим ръчни реплики за добавените дялове.
3. Разни инструменти
Сега нека обсъдим някои различни инструменти:
а. Инструмент Kafka-Topics
Този инструмент се използва за създаване, списък, промяна и описание на теми.
Пример: Създаване на тема: bin/kafka-topics.sh --zookeeper zk_host:port/chroot --create --topic topic_name --partitions 30 --replication-factor 3 --config x=y
б. Kafka-Console-Consumer Tool
Този инструмент може да се използва за четене на данни от темите на Kafka и да го запишете до стандартния изход
Пример: bin/kafka-console-consumer --zookeeper zk01.example.com:8080 --topic topic_name>/code>
° С. Инструмент за производител на конзола Kafka
Този инструмент може да се използва за запис на данни в тема Kafka от Standard Output.
Пример: производител на bin/kafka-console-producer --broker-list kafka03.example.com:9091 --topic topic_name
д. Инструмент за групите Kafka-потребител
Този инструмент може да се използва за изброяване на всички групи потребители, описване на потребителска група, изтриване на информация за потребителска група или нулиране на компенсиране на потребителски групи. Този инструмент се използва главно за описание на групите потребители и отстраняване на грешки при проблеми с компенсирането на потребителите.
Пример: Преглед на компенсации в необезпечен клъстер: bin/kafka-consumer-groups --new-consumer --bootstrap-server broker01.example.com:9092 --describe --group group_name
Кафка Архитектура
Различни компоненти на Kafka Tools
Основните компоненти на Kafka са следните:
1. Брокер
Всеки възел в Kafka Cluster е брокер, който съхранява данните. Обикновено има няколко брокера, за да се балансира правилно натоварването. Брокер съхранява съобщения под формата на теми, които могат да бъдат достъпни от производители (за писане) и потребители (за четене). Създават се теми за отделяне на данните на едно приложение от тези на друго. Тъй като брокерите са без гражданство, те се нуждаят от помощта на Zookeeper, за да поддържат своето състояние на клъстери. Един брокер може да борави с TB съобщения без никакво въздействие върху производителността. Изборите за лидер на брокер Kafka се извършват от Zookeeper.
2. Производител
Това е единицата, която бута съобщения в брокерите. Може да има множество производители, които генерират данни с много висока скорост и независимо един от друг. Производителите не получават потвърждение от брокерите и изпращат данни със скорост, която може да се обработва от брокерите. Те могат да търсят брокери и да започнат да изпращат съобщения веднага щом стартират брокерите. Производителят е отговорен за избора на съобщение, което да присвои на кой дял в темата. Това може да се направи по кръгъл начин, просто за да се балансира натоварването или може да се направи според някаква функция на семантичен дял (да речем въз основа на някакъв ключ в съобщението).
3. Зоокеер
Това е звеното, което управлява и координира брокерите. Зоопаркът уведомява производител или потребител в случай на добавяне или отказ на брокер. Всеки брокер изпраща заявки за сърдечен ритъм на зоокъра редовно, стига да е жив. Зоопаркът поддържа информация и по темите и компенсациите на потребителите.
4. Потребител
Това е единицата, която чете съобщенията от темите. Потребителят може да се абонира и да чете от повече от една тема. Потребителят може да работи паралелно с други потребители (в този случай всеки дял ще се чете само от един потребител), формирайки група потребители. Не работи в синхрон с производителите. Потребителят трябва да поддържа колко съобщения е прочел чрез компенсиране на дяла. Ако потребителят приеме определено компенсиране на дяла, това означава, че вече е консумирал предишните съобщения в дяла.
заключение
В тази статия научихме как можем да използваме различни инструменти Kafka за ефективно управление на нашия Kafka клъстер. Научихме също за различните компоненти на екосистемата Kafka и как те си взаимодействат помежду си.
Препоръчителни статии
Това е ръководство за инструментите на Kafka. Тук обсъждаме Видовете инструменти на Kafka, различни компоненти на Kafka, заедно с Kafka Architecture. Можете също да разгледате следната статия, за да научите повече -
- Най-добрите приложения на Kafka
- Обяснение на голямата архитектура на данни
- Топ инструменти за наука за данни
- Разлики между Кафка срещу Искра