开发者学堂课程【SpringBoot 实战教程: Kafka 概述及安装】学习笔记,与课程紧密联系,让用户快速学习知识。
课程地址:https://developer.aliyun.com/learning/course/651/detail/10818
Kafka 概述及安装
内容介绍:
一、概述
二、安装
一、概述
1、Apache Kafka 是一个分布式发布-订阅消息系统和一个强大的队列,可以处理大量的数据,并使您能够将消息从一个端点传递到另一个端点。Kafka 适合离线和在线消息消费。Kafka 消息保留在磁盘上,并在群集内复制以防止数据丢失。Kafka 构建在 ZooKeeper 同步服务之上。它与 ApacheStorm 和 Spark 非常好地集成,用于实时流式数据分析。
2、以下是 Kafka 的好处:
(1)可靠性-Kafka 是分布式,分区,复制和容错的。
(2)可扩展性-Kafka 消息传递系统轻松缩放,无需停机。
(3)耐用性-Kafka 使用分布式提交日志,这意味着消息会尽可能快地保留在磁盘上,因此它是持久的。
(4)性能-Kafka 对于发布和订阅消息都具有高吞吐量。即使存储了许多TB的消息,它也保持稳定的性能。Kafka 非常快,并保证零停机和零数据丢失。
3、所以在一些大型的分布式项目中一般都使用 Kafka 消息系统。
二、安装
在 linux 中进行安装:
1、首先下载 ZooKeeper 的压缩包以及 Kafka 的安装包,放在 opt 下,Apache 和 Kafka 的都要准备好,这两个只需要解压缩一下即可,因为 Kafka 依赖于 ZooKeeper,所以先启动 ZooKeeper,把 ZooKeeper 解压缩之后,进入到 ZooKeeper 的文件夹,再进到 bin,这里有它的启动程序,zkserver.sh,输入
root@ubuntu: /opt/ zookeeper-3.4.6/bin# ./zkServer .sh start
启动 zookeeper,另外事先需要配置好 jdk,输入
Using config: /opt/ zookeeper-3.4.6/bin . . /conf/zoo.cfg
确保它是否启动成功,显示 standalone,就证明 zookeeper 已经启动成功了。
2、启动解压缩之后的 Kafka,使用2.12版本,它的启动程序也在 bin 下,kafka-server-start.sh
这是它的启动程序,进行执行,另外还需要指定属性文件,它的属性文件在上一节路径下的 config 下的 server.peoperties 文件,注意启动的时候要指明这个文件,回车。
3、如果出现以下这种情况说明 Kafka 启动成功。
[
2018-04-10 00:53:56,252] INFO Loading logs. (kafka. log. LogManager )
[
2018-04-10 00:53:56,569] INFO [Log partition-test-0, dir=/ tmp/kafka-logs] Loadig producer state from offset 0 with message format version 2 (kafka. log. Log )
[
2018-04-10 00:53:56,648] INFO [Logpar tition=test-0, dir=/ tmp/kafka-logs] Complted load of log with 1 segments, log start offset 0 and log end offset 0 in 268
ms
(kafka. log.Log)
[
2018-04-10 00:53:56,707] INFO [Log par tition=app_ log-0, dir=/tmp/kafka- logs] Loding producer state from offset 0 with message format version 2 (kafka. log. Log)
[
2018-04-10 00:53:56,708] INFO [Logpar tition=app_ log-0, dir=/ tmp/kafka-logs] Copleted load of log with 1 segments, log start offset 0 and log end offset 0 in
3 ms (kafka. log.Log)
[
2018-04-10 00:53:56,728] INFO [Log par tition=tests-o, dir=/tmp/kafka- logs] Loadng producer state from offset 0 with message format version 2 (kafka.log.Log)
[
2018-04-10 00:53:56,748] INFO [Log par titiontests-0, dir=/tmp/kafka- logs] Completed load of log with 1 segments, log start offset 0 and logend offset 0 in 21
ms (kafka. log.Log)
[
2018-04-10 00:53:56,771] INFO Logsloading complete in 518 ms. (kafka. log. LogMaager )
[
2018-04-10 00:53:56,814] INFO Starting log cleanup with a period of 300000 ms.
(
kafka. log . LogManager )
[
2018-04-10 00:53:56,825] INFO starting log flusher with a default period of 922372036854775807 ms. (kafka. log. LogManager )
这就是 Kafka 如何进行配置。