Kafka是一个消息系统,专为分布式高吞吐量系统而设计,其他消息传递系统相比,Kafka具有更好的吞吐量,内置分区,复制和固有的容错能力,这使得它非常适合大规模消息处理应用程序[1]。
Apache Kafka是分布式发布-订阅消息系统,Apache Kafka与传统消息系统相比,有以下不同[2]:
- 它被设计为一个分布式系统,易于向外扩展;
- 它同时为发布和订阅提供高吞吐量;
- 它支持多订阅者,当失败时能自动平衡消费者;
- 它将消息持久化到磁盘,因此可用于批量消费;
下面介绍从安装过程,如果机器上已经安装过下面提到的某软件,则可以跳过它。
1.安装Java
sudo apt-get update # 更新软件包
sudo apt-get install openjdk-8-jdk # 安装openjdk-8-jdk
java -version # 查看java版本,看看是否安装成功
安装好了可以看到如下的信息:
xx@xxx-VBox:~$ java -version
openjdk version "1.8.0_162"
OpenJDK Runtime Environment (build 1.8.0_162-8u162-b12-1-b12)
OpenJDK 64-Bit Server VM (build 25.162-b12, mixed mode)
2.安装Zookeeper
2.1下载ZooKeeper
要在您的计算机上安装ZooKeeper框架,请访问以下链接并下载最新版本的ZooKeeper。
http://zookeeper.apache.org/releases.html
现在,最新版本的ZooKeeper是3.6.1。
选择一个安装文件夹,在其路径下执行下载命令:
sudo wget https://mirrors.tuna.tsinghua.edu.cn/apache/zookeeper/zookeeper-3.6.1/apache-zookeeper-3.6.1-bin.tar.gz
2.2解压文件
sudo tar -zxf apache-zookeeper-3.6.1-bin.tar.gz
2.3创建配置文件
使用命令vim conf/zoo.cfg打开名为 conf / zoo.cfg 的配置文件
vi conf/zoo.cfg
将以下内容粘贴进去:
tickTime=2000
dataDir=/path/to/zookeeper/data
clientPort=2181
initLimit=5
syncLimit=2
一旦配置文件成功保存并再次返回终端。
2.4 启动ZooKeeper服务器
sudo bin/zkServer.sh start
执行此命令后,您将得到如下所示的响应 -
/usr/bin/java
ZooKeeper JMX enabled by default
Using config: /home/yusong/software/apache-zookeeper-3.6.1-bin/bin/../conf/zoo.cfg
Starting zookeeper ... STARTED
2.5 启动CLI
sudo bin/zkCli.sh
输入上面的命令后,您将被连接到zookeeper服务器,并将获得以下响应。
Connecting to localhost:2181
................
................
................
Welcome to ZooKeeper!
................
................
WATCHER::
WatchedEvent state:SyncConnected type: None path:null
[zk: localhost:2181(CONNECTED) 0]
2.6 停止Zookeeper服务器
sudo bin/zkServer.sh stop
3. Apache Kafka安装
3.1下载Kafka
要在您的机器上安装Kafka,请点击以下链接(2.3.0版本的):
https://mirror.bit.edu.cn/apache/kafka/2.3.0/
我下载的命令是:
sudo wget https://mirror.bit.edu.cn/apache/kafka/2.3.0/kafka_2.11-2.3.0.tgz
3.2解压tar文件
使用以下命令提取tar文件 .
sudo tar -zxf kafka_2.11-2.3.0.tgz
3.3启动服务器
您可以通过给出以下命令来启动服务器
cd kafka_2.11-2.3.0
sudo bin/kafka-server-start.sh config/server.properties
3.4停止服务器
执行所有操作后,可以使用以下命令停止服务器
sudo bin/kafka-server-stop.sh config/server.properties
参考文献
[1] 【Apache Kafka】一、Kafka简介及其基本原理
[2] ubuntu18.04下Kafka安装与部署 **
[3] ZooKeeper的安装与部署
[4] Apache Kafka 安装步骤 **