1. Vue d'ensemble
Kafka est une file d'attente de messages distribuée (Message Queue) basée sur le modèle de publication / abonnement , qui est principalement utilisée dans le traitement en temps réel du Big Data.
Les domaines d'application traditionnels des files d'attente de messages sont le traitement asynchrone, la réduction des pics de trafic et le découplage.
Deux modes de file d'attente de messages:
Mode point à point (un à un, les consommateurs extraient activement les données et le message est effacé après la réception du message)
Modèle de publication / abonnement (un-à-plusieurs, les messages ne seront pas effacés une fois que les consommateurs auront consommé des données)
2. Installation
Modifiez le fichier de configuration server.propertities après la décompression
#broker的全局唯一编号,不能重复,每个节点的id不一样
broker.id=0
#删除topic功能使能
delete.topic.enable=true
#kafka运行日志存放的路径,需要自己创建
log.dirs=/opt/module/kafka/logs
#配置连接Zookeeper集群地址
zookeeper.connect=hadoop102:2181,hadoop103:2181,hadoop104:2181
Configurer les variables d'environnement
$ sudo vi /etc/profile
#KAFKA_HOME
export KAFKA_HOME=/opt/module/kafka
$ source /etc/profile
3. Commande Kafak
Démarrage et arrêt
#启动
bin/kafka-server-start.sh -daemon config/server.properties
#关闭
bin/kafka-server-stop.sh stop
Ajouter, supprimer, modifier
创建
bin/kafka-topics.sh --zookeeper hadoop102:2181 --create --replication-factor 3 --partitions
1 --topic first
选项说明:
--topic 定义topic名
--replication-factor 定义副本数
--partitions 定义分区数
删除
bin/kafka-topics.sh --zookeeper hadoop102:2181 --delete --topic first
需要server.properties中设置delete.topic.enable=true否则只是标记删除。
查看
查看所有
bin/kafka-topics.sh --zookeeper hadoop102:2181 --list
查看某一个topic
bin/kafka-topics.sh --zookeeper hadoop102:2181 --describe --topic first
修改分区数
bin/kafka-topics.sh --zookeeper hadoop102:2181 --alter --topic first --partitions 6
消费消息
bin/kafka-console-consumer.sh --bootstrap-server hadoop102:9092 --from-beginning --topic first
--from-beginning:会把主题中以往所有的数据都读取出来。