Kafka Tools - Typer Kafka-verktøy - Kafka Arkitektur og komponenter

Innholdsfortegnelse:

Anonim

Introduksjon til Kafka Tools

Kafka Tools er en samling av forskjellige verktøy som vi kan administrere vår Kafka Cluster. Verktøyene er stort sett kommandolinjebaserte, men UI-baserte verktøy er også tilgjengelige som kan lastes ned og installeres.

Vi kan bruke Kafka-verktøy for å utføre forskjellige operasjoner som:

  • Liste over tilgjengelige Kafka Clusters og deres meglere, emner og forbrukere.
  • Kan skrive ut meldingene fra forskjellige emner i standardutdataene. UI-baserte verktøy kan definitivt gi bedre lesbarhet.
  • Legg til og slipp emner fra meglerne.
  • Legg til nye meldinger i partisjonene.
  • Se alle forskyvningene til våre forbrukere.
  • Lag partisjoner av emnene våre.
  • Liste over alle forbrukergrupper, beskriv forbrukergruppene, slett forbrukergruppeinfo og tilbakestill forbrukergruppeforskjeller

Hvis vi ønsker å bruke et UI-basert verktøy, kan vi bruke Kafka Tool som kan lastes ned fra følgende webside:

http://www.kafkatool.com/download.html

Denne applikasjonen er tilgjengelig gratis for personlig bruk, men vi må kjøpe en lisens for kommersiell bruk. Det fine med det er tilgjengeligheten for Mac, Windows og Linux Systems.

Topp 3 typer Kafka-verktøy

Kafka-verktøy er kategorisert i systemverktøy og applikasjonsverktøy.

1. Systemverktøy

Systemverktøyene kan kjøres ved hjelp av følgende syntaks.

syntaks:

bin/kafka-run-class.sh package.class - - options

Noen av systemverktøyene er som følger:

  • Kafka Migration Tool: Dette verktøyet brukes til å migrere Kafka Broker fra en versjon til en annen.
  • Forbrukeroffsetkontroll: Dette verktøyet kan vise forbrukergruppe, emne, partisjoner, off-set, logSize, eier for det angitte settet med emner og forbrukergruppe.
  • Mirror Maker: Dette verktøyet brukes til å speile en Kafka Cluster til en annen.

2. Replikeringsverktøy

Dette er i utgangspunktet designverktøy på høyt nivå gitt for holdbarhet og tilgjengelighet.

Noen av replikeringsverktøyene er:

  • Opprett emneverktøy: Dette verktøyet brukes til å lage emner med standard antall partisjoner og replikasjonsfaktor.
  • Listemneverktøy: Dette brukes til å liste opp informasjonen for en gitt liste over emner. Det fine med dette verktøyet er at hvis ikke noe emne allerede er tilgjengelig på kommandolinjen, vil den spørre Zookeeper om å hente listen over emner først og deretter skrive ut informasjonen om dem. Den lister opp forskjellige felt som emnetavn, partisjoner, leder, kopier osv.
  • Legg til partisjonsverktøy: Dette verktøyet brukes til å legge til partisjoner til et emne som er nødvendig for å håndtere veksten av datavolum i emnet. Men merk at vi må spesifisere partisjonene mens vi oppretter emnet. Dette verktøyet lar oss legge til manuelle kopier for de tilleggspartisjonene.

3. Diverse verktøy

La oss nå diskutere noen diverse verktøy:

en. Kafka-Theme Tool

Dette verktøyet brukes til å lage, liste, endre og beskrive emner.

Eksempel: Oppretting av emne: bin/kafka-topics.sh --zookeeper zk_host:port/chroot --create --topic topic_name --partitions 30 --replication-factor 3 --config x=y

b. Kafka-konsoll-forbrukerverktøy

Dette verktøyet kan brukes til å lese data fra Kafka-emner og skrive dem til standardutdata

Eksempel: bin/kafka-console-consumer --zookeeper zk01.example.com:8080 --topic topic_name>/code>

c. Kafka-konsoll-produsent Tool

Dette verktøyet kan brukes til å skrive data til et Kafka-emne fra Standard Output.

Eksempel: bin/kafka-console-producer --broker-list kafka03.example.com:9091 --topic topic_name

d. Kafka-forbruker-grupper verktøy

Dette verktøyet kan brukes til å liste opp alle forbrukergrupper, beskrive en forbrukergruppe, slette informasjon om forbrukergrupper eller tilbakestille forskyvningsgrupper. Dette verktøyet brukes hovedsakelig for å beskrive forbrukergrupper og feilsøke eventuelle problemer med forbrukerforskyvning.

Eksempel: Vise forskyvninger på en usikret klynge: bin/kafka-consumer-groups --new-consumer --bootstrap-server broker01.example.com:9092 --describe --group group_name

Kafka Arkitektur

Ulike komponenter i Kafka Tools

De viktigste komponentene i Kafka er som følger:

1. Megler

Hver node i en Kafka Cluster er en megler som lagrer dataene. Det er vanligvis flere meglere for å balansere belastningen riktig. En megler lagrer meldinger i form av emner som produsenter (for skriving) og forbrukere (for lesing) kan få tilgang til. Emner opprettes for å skille data fra en applikasjon fra en annen. Ettersom meglere er statsløse, trenger de Zookepers hjelp til å opprettholde sin klyngestatus. Én megler kan håndtere TBs av meldinger uten innvirkning på ytelsen. Kafka meglerledervalg er gjort av Zookeeper.

2. Produsent

Det er enheten som skyver meldinger inn i meglerne. Det kan være flere produsenter som genererer data i veldig høy hastighet og uavhengig av hverandre. Produsentene mottar ikke en bekreftelse fra meglerne og sender data til en hastighet som meglerne kan håndtere. De kan søke meglere og begynne å sende meldinger så snart meglerne starter. Produsenten er ansvarlig for å velge hvilken melding som skal tilordnes til hvilken partisjon innen emnet. Dette kan gjøres på en rund-robin-måte bare for å balansere belastning, eller det kan gjøres i henhold til en semantisk partisjonsfunksjon (si basert på noen nøkkel i meldingen).

3. Zookeeper

Det er enheten som administrerer og koordinerer meglerne. Zookeeper varsler en produsent eller en forbruker i tilfelle tilføyelse eller svikt av en megler. Hver megler sender hjerteslag forespørsler til dyrepasser med jevne mellomrom så lenge den er i live. Zookeeper opprettholder også informasjon om temaene og forbrukerforskyvninger.

4. Forbruker

Det er enheten som leser meldingene fra emnene. En forbruker kan abonnere på og lese fra mer enn ett emne. En forbruker kan jobbe parallelt med andre forbrukere (i dette tilfellet vil hver partisjon bare leses av en forbruker) som danner forbrukergruppe. Det fungerer ikke i synkronisering med produsentene. Forbrukeren må opprettholde hvor mange meldinger den har lest ved å bruke partisjon forskjøvet. Hvis en forbruker godtar en bestemt partisjonskompensasjon, innebærer det at den allerede har konsumert de tidligere meldingene i partisjonen.

Konklusjon

I denne artikkelen har vi lært hvordan vi kan bruke forskjellige Kafka-verktøy for å administrere vår Kafka-klynge effektivt. Vi har også lært om de forskjellige komponentene i Kafka økosystem og hvordan de samhandler med hverandre.

Anbefalte artikler

Dette er en guide til Kafka-verktøy. Her diskuterer vi typer Kafka-verktøy, forskjellige komponenter av Kafka sammen med Kafka-arkitektur. Du kan også se på følgende artikkel for å lære mer -

  1. Topp Kafka-applikasjoner
  2. Forklaring av Big Data Architecture
  3. Topp datavitenskapelige verktøy
  4. Forskjeller mellom Kafka vs Spark