En aquesta secció, aprendrem com configurar Apache Kafka al nostre entorn de desenvolupament. Aquest procés inclou la descàrrega i instal·lació de Kafka, així com la configuració bàsica per posar en marxa un clúster de Kafka.
- Descàrrega de Kafka
Passos per descarregar Kafka:
- Visita el lloc web oficial de Kafka: Apache Kafka Downloads.
- Selecciona la versió de Kafka que vols descarregar. Recomanem utilitzar l'última versió estable.
- Descarrega l'arxiu comprimit (per exemple,
kafka_2.13-2.8.0.tgz
).
- Instal·lació de Kafka
Passos per instal·lar Kafka:
-
Descomprimeix l'arxiu descarregat:
tar -xzf kafka_2.13-2.8.0.tgz cd kafka_2.13-2.8.0
-
Inicia ZooKeeper (Kafka depèn de ZooKeeper per gestionar el clúster):
bin/zookeeper-server-start.sh config/zookeeper.properties
-
Inicia el servidor de Kafka: En una nova terminal, executa:
bin/kafka-server-start.sh config/server.properties
- Configuració bàsica de Kafka
Fitxers de configuració clau:
server.properties
: Conté la configuració del servidor de Kafka.zookeeper.properties
: Conté la configuració de ZooKeeper.
Paràmetres importants en server.properties
:
broker.id
: Identificador únic per a cada broker en el clúster.broker.id=0
log.dirs
: Directori on es guarden els logs de Kafka.log.dirs=/tmp/kafka-logs
zookeeper.connect
: Adreça del servidor de ZooKeeper.zookeeper.connect=localhost:2181
- Verificació de la instal·lació
Crear un tema:
-
Crea un tema anomenat
test
:bin/kafka-topics.sh --create --topic test --bootstrap-server localhost:9092 --partitions 1 --replication-factor 1
-
Llista els temes disponibles:
bin/kafka-topics.sh --list --bootstrap-server localhost:9092
Produir i consumir missatges:
-
Inicia un productor:
bin/kafka-console-producer.sh --topic test --bootstrap-server localhost:9092
Escriu alguns missatges a la consola del productor.
-
Inicia un consumidor: En una nova terminal, executa:
bin/kafka-console-consumer.sh --topic test --bootstrap-server localhost:9092 --from-beginning
Hauries de veure els missatges que has escrit des del productor.
- Exercicis Pràctics
Exercici 1: Configuració de múltiples brokers
-
Copia el fitxer
server.properties
per crear configuracions per a dos brokers addicionals:cp config/server.properties config/server-1.properties cp config/server.properties config/server-2.properties
-
Modifica els fitxers de configuració:
config/server-1.properties
:broker.id=1 log.dirs=/tmp/kafka-logs-1 listeners=PLAINTEXT://:9093
config/server-2.properties
:broker.id=2 log.dirs=/tmp/kafka-logs-2 listeners=PLAINTEXT://:9094
-
Inicia els nous brokers: En noves terminals, executa:
bin/kafka-server-start.sh config/server-1.properties bin/kafka-server-start.sh config/server-2.properties
Exercici 2: Creació i gestió de temes
-
Crea un tema amb múltiples particions:
bin/kafka-topics.sh --create --topic multi-partition-topic --bootstrap-server localhost:9092 --partitions 3 --replication-factor 1
-
Llista els temes i verifica la configuració:
bin/kafka-topics.sh --describe --topic multi-partition-topic --bootstrap-server localhost:9092
Conclusió
En aquesta secció, hem après a descarregar, instal·lar i configurar Apache Kafka. També hem vist com crear temes i produir/consumir missatges per verificar la instal·lació. A més, hem realitzat exercicis pràctics per configurar múltiples brokers i gestionar temes. Amb aquesta base, estem preparats per aprofundir en els conceptes bàsics de Kafka en el següent mòdul.
Curs de Kafka
Mòdul 1: Introducció a Kafka
Mòdul 2: Conceptes bàsics de Kafka
Mòdul 3: Operacions de Kafka
Mòdul 4: Configuració i Gestió de Kafka
Mòdul 5: Temes Avançats de Kafka
- Optimització del Rendiment de Kafka
- Kafka en una Configuració Multi-Centre de Dades
- Kafka amb Registre d'Esquemes
- Kafka Streams Avançat