Kafka集群部署与安装

一、什么是Kafka

Kafka是一个Pub-Sub的消息系统,无论是发布还是订阅,都须指定Topic。

Kafka是一种高吞吐量的分布式发布订阅消息系统,它可以处理消费者大规模的网站中的所有动作流数据

二、JMS:Java Message Service Java消息服务

1、用于在两个应用程序之间,或分布式系统中发送消息,进行异步通信

2、JMS提供者

消息中间件,如:Kafka,RabbitMQ,RoketMQ,ActiveMQ,HornetQ

3、JMS客户

JMS程序,负责发送消息和接收处理消息

4、JMS生产者

产生并发送消息的程序

5、JMS消费者

接收并处理消息的程序

6、JMS队列

存储消息,对应于点对点消息

7、JMS主题

存储消息,对应于发布订阅消息

8、JMS消息 两种JMS消息类型

(1)、点对点(Point to Point):消息分发给一个单独的使用者,绑定一个队列javax.jms.Queue

(2)、发布/订阅(Publish/Subscribe):消息发布到一个主题,多个使用者可以订阅该主题javax.jms.Topic

9、KAFKA消息中间件的特点

消息队列中间件保证消息不丢失,并且至少消费一次

三、安装SCALA

1、将课程提供的scala-2.11.12.tgz使用WinSCP拷贝到node1的/usr/local目录下。

2、对scala-2.11.12.tgz进行解压缩:tar -zxvf scala-2.11.12.tgz。

3、对scala目录进行重命名:mv scala-2.11.12 scala

4、配置scala相关的环境变量

vi .bashrc

export SCALA_HOME=/usr/local/scala

export PATH=PATH:SCALA_HOME/bin

source .bashrc

5、查看scala是否安装成功:scala -version

6、按照上述步骤在node2和node3机器上都安装好scala。使用scp将scala和.bashrc拷贝到node2和node3上即可。

7、检测:scala -version

四、安装KAFKA

1、将课程提供的kafka_2.11-0.10.0.0.tgz使用WinSCP拷贝到node1的/usr/local目录下。

2、对kafka_2.11-0.10.0.0.tgz进行解压缩:tar -zxvf kafka_2.11-0.10.0.0.tgz。

3、对kafka目录进行改名:mv kafka_2.11-0.10.0.0 kafka

4、配置kafka

vi /usr/local/kafka/config/server.properties

依次增长的整数,0、1、2、3、4,集群中Broker的唯一id

broker.id=1

port=9092

zookeeper.connect=node1:2181,node2:2181,node3:2181

五、KAFKA集群配置

1、按照上述步骤在node2和node3分别安装kafka。用scp把kafka拷贝到node2和node3行即可。

2、唯一区别的,就是server.properties中的broker.id,要设置为1和2

六、启动KAFKA集群

1、在三台机器上分别执行以下命令:nohup bin/kafka-server-start.sh config/server.properties &

2、使用jps检查启动是否成功

七、测试

创建 topic

bin/kafka-topics.sh --zookeeper node10:2181,node11:2181,node12:2181 --topic TestTopic --replication-factor 1 --partitions 1 --create

生产者

bin/kafka-console-producer.sh --broker-list node10:9092,node11:9092,node12:9092 --topic TestTopic

消费者

bin/kafka-console-consumer.sh --zookeeper node10:2181,node1a1:2181,node12:2181 --topic TestTopic --from-beginning

相关推荐
ACP广源盛139246256732 小时前
IX8024@ACP# 搭配此芯 AI 服务器 + 爱芯元智产品完整方案
大数据·运维·服务器·人工智能·分布式·嵌入式硬件
李昊哲小课5 小时前
ubuntu26.04搭建kafka集群
分布式·kafka
Alluxio7 小时前
Alluxio + Anyscale Ray框架,实现跨区域训练数据读取速度20倍提升
人工智能·分布式·机器学习·缓存·ai
csdn2015_10 小时前
kafka如何保证消息的顺序
分布式·kafka
csdn2015_12 小时前
kafka如何确保消息不丢失
数据库·分布式·kafka
9523613 小时前
RabbitMQ - 高级特性
java·spring boot·分布式·后端·rabbitmq
Database_Cool_14 小时前
阿里云 PolarDB-X vs TiDB 分布式数据库选型指南
数据库·分布式·阿里云·tidb
数据库小学妹14 小时前
分布式数据库架构怎么选?三种路线对比+迁移避坑指南
数据库·分布式·分布式数据库·数据库架构·数据迁移·数据库选型
大师兄666814 小时前
HarmonyOS7 分布式流转:手机到平板无缝接续案例
分布式·跨设备·harmonyos7·分布式流转
一只积极向上的小咸鱼14 小时前
多机Docker + InfiniBand 分布式运行实操手册
分布式·docker·容器