Kafka集群---分布式消息系统
概念:
kafka是一种消息中间件
作用:
解耦、冗余、提高扩展性、缓冲
保证顺序、灵活、削峰填谷
异步通信
kafla角色
producer: 生产者,负责发布消息
consumer: 消费者,负责读取处理消息
topic: 消息的类别
Partition: 每个Topic包含一个或多个Partition
Broker: Kafka集群包含一个或复哦歌服务器
** Kafka通过Zookeeper管理集群配置,选举Leader
源码安装 /usr/local/kafka/config
修改配置文件 vim server.properties
broker.id=22 zookeeper.connect=node1:2181,node2:2181,node3:2181
拷贝 kafka 到其他主机,并修改 broker.id ,不能重复
rsync -aSH --delete /usr/local/kafka node1:/usr/local/
启动集群(所有节点)
/usr/local/kafka/bin/kafka-server-start.sh -daemon /usr/local/kafka/config/server.properties
验证配置,传件一个topic
/usr/local/kafka/bin/kafka-topics.sh --create --partitions 1 --replication-factor 1 --zookeeper node3:2181 --topic aa
模拟生产者,发布消息
/usr/local/kafka/bin/kafka-console-producer.sh --broker-list node2:9092 --topic aa //写一个数据
模拟消费者,接收消息
/usr/local/kafka/bin/kafka-console-consumer.sh --bootstrap-server node1:9092 --topic aa