2019独角兽企业重金招聘Python工程师标准>>>

一、简介

官网:http://kafka.apache.org/

Apache Kafka是分布式发布-订阅消息系统。它最初由LinkedIn公司开发,之后成为Apache项目的一部分。Kafka是一种快速、可扩展的、设计内在就是分布式的,分区的和可复制的提交日志服务。

Apache Kafka与传统消息系统相比,有以下不同:

  • 它被设计为一个分布式系统,易于向外扩展;

  • 它同时为发布和订阅提供高吞吐量;

  • 它支持多订阅者,当失败时能自动平衡消费者;

  • 它将消息持久化到磁盘,因此可用于批量消费,例如ETL,以及实时应用程序。

二、安装

下载地址:wget http://mirrors.shuosc.org/apache/kafka/1.0.2/kafka_2.11-1.0.2.tgz

解压:tar -zxvf kafka_2.11-1.0.2.tgz

cd kafka_2.11-1.0.2

三、启动服务器

1、启动ZooKeeper
            Kafka使用ZooKeeper,所以您需要先启动一个ZooKeeper服务器,如果您还没有。您可以使用随Kafka一起打包的便捷脚本来获取一个快速但是比较粗糙的单节点ZooKeeper实例。

启动命令:bin/zookeeper-server-start.sh config/zookeeper.properties

这个 zookeeper中主要就3个配置:

# the directory where the snapshot is stored.
        dataDir=/tmp/zookeeper
        # the port at which the clients will connect
        clientPort=2181
        # disable the per-ip limit on the number of connections since this is a non-production config
        maxClientCnxns=0

我们需要记住zookeeper的端口 2181,在后面会用到。

    2、Kafka基本配置
        Kafka在config目录下提供了一个基本的配置文件。为了保证可以远程访问Kafka,我们需要修改两处配置。

打开config/server.properties文件,在很靠前的位置有listeners和 advertised.listeners两处配置的注释,去掉这两个注释,并且根据当前服务器的IP修改如下:

# The address the socket server listens on. It will get the value returned from 
        # java.net.InetAddress.getCanonicalHostName() if not configured.
        #   FORMAT:
        #     listeners = listener_name://host_name:port
        #   EXAMPLE:
        #     listeners = PLAINTEXT://your.host.name:9092
        listeners=PLAINTEXT://:9092

# Hostname and port the broker will advertise to producers and consumers. If not set, 
        # it uses the value for "listeners" if configured.  Otherwise, it will use the value
        # returned from java.net.InetAddress.getCanonicalHostName().
        advertised.listeners=PLAINTEXT://192.168.163.10:9092

当前服务器IP为192.168.163.10,你需要修改为外网或局域网可以访问到的服务器IP。

    3、启动Kafka

接下来启动Kafka服务:

启动命令:bin/kafka-server-start.sh config/server.properties

    4、创建 Topic

使用下面的命令创建 Topic。

命令:bin/kafka-topics.sh --create --zookeeper localhost:2181 --replication-factor 1 --partitions 1 --topic test

5、启动一个消费者

在一个新的终端执行下面的命令。

命令:bin/kafka-console-consumer.sh --bootstrap-server localhost:9092 --topic test --from-beginning

6、启动生产者

命令:bin/kafka-console-producer.sh --broker-list localhost:9092 --topic test

启动后,可以输入内容,然后回车。

此时你应该可以在上一个消费者中看到有消息输出。

7、查看 topic 列表

命令:bin/kafka-topics.sh --list --zookeeper localhost:2181

8、查看描述 topics 信息

命令:bin/kafka-topics.sh --describe --zookeeper localhost:2181 --topic test

第一行给出了所有分区的摘要,每个附加行给出了关于一个分区的信息。 由于我们只有一个分区,所以只有一行。

“Leader”: 是负责给定分区的所有读取和写入的节点。 每个节点将成为分区随机选择部分的领导者。

“Replicas”: 是复制此分区日志的节点列表,无论它们是否是领导者,或者即使他们当前处于活动状态。

“Isr”: 是一组“同步”副本。这是复制品列表的子集,当前活着并被引导到领导者。

转载于:https://my.oschina.net/gibbons/blog/2999444

Kafka 安装配置及快速入门相关推荐

  1. Flink 笔记01:安装部署与快速入门

    stypora-copy-images-to: img typora-root-url: ./ Flink 笔记01:安装部署与快速入门 一.课程回安排与内容提纲 大数据技术框架转折点:2017年,天 ...

  2. Android Studio新手–下载安装配置–零基础入门–基本使用–调试技能–构建项目基础–使用AS应对常规应用开发

    转自:http://blog.csdn.net/yanbober/article/details/45306483 目标:Android Studio新手–>下载安装配置–>零基础入门–& ...

  3. Umijs 的安装部署及快速入门

    部署安装 1.首先需要安装 node.js 2.安装 yarn,其中 tyarn 使用的是 npm.taobao.org 的源,速度要快一些 #安装 yarn npm i yarn tyarn -g ...

  4. Linux环境Kafka安装配置

    Linux环境Kafka安装配置 1. 认识Kafa (1) Kafa介绍 开源消息系统 官网:kafka.apache.org/ 用途:在流式计算中,Kafka一般用来缓存数据,Storm通过消费K ...

  5. 易优cms 数据库连接失败,如何重新进行正确配置 Eyoucms快速入门

    易优cms 数据库连接失败,如何重新进行正确配置 Eyoucms快速入门 易优cms后台的数据配置文件是\application\database.php,可以在里面修改数据库配置信息 具体的数据库账 ...

  6. 学习笔记Kafka(四)—— Kafka安装配置(3)—— Kafka多代理配置及常用操作

    一.环境准备 Centos7, 1 CPU , 2G Memory ,20G Disk , Virtual System Hosts : node110, node111 , node112 全部配置 ...

  7. Kafka安装配置(SASL/SCRAM动态认证)

    SASL/SCRAM验证方法可以在Kafka服务启动之后,动态的新增用户分并配权限,在业务变动频繁,开发人员多的情况下比SASL/PLAIN方法更加灵活. Zookeeper:3.4.13,kafka ...

  8. azure linux 配置端口,快速入门 - 在 Azure 门户中创建 Linux VM - Azure Virtual Machines | Microsoft Docs...

    您现在访问的是微软AZURE全球版技术文档网站,若需要访问由世纪互联运营的MICROSOFT AZURE中国区技术文档网站,请访问 https://docs.azure.cn. 快速入门:在 Azur ...

  9. 如何使用微软云服务器,了解如何使用 Azure 应用配置的快速入门 | Microsoft Docs

    您现在访问的是微软AZURE全球版技术文档网站,若需要访问由世纪互联运营的MICROSOFT AZURE中国区技术文档网站,请访问 https://docs.azure.cn. 快速入门:使用 Azu ...

最新文章

  1. supervisor 守护php,laravel队列之Supervisor守护进程(centos篇)
  2. Android之LocalBroadcastManager源码解析
  3. 神经网络和反向传播算法——反向传播算法本质上是随机梯度下降,链式求导法则而来的...
  4. IntelliJ Idea解决Could not autowire. No beans of 'xxxx' type found的错误提示
  5. 编程判断元素归类_如何使用jquery判断一个元素是否含有一个指定的类(class)...
  6. Python小白的数学建模课-A2.2021年数维杯C题(运动会优化比赛模式探索)探讨
  7. P2659 美丽的序列
  8. 简单的java日志记,Java 记要 日志,log
  9. 01_正则表达式_05_小结和几个案例
  10. php算数组内值的总和,怎样使用array_sum() 计算数组元素值总和
  11. 推荐参加国际会议海报制作(poster)的Latex模板
  12. python编写俄罗斯方块代码详解_python如何写个俄罗斯方块
  13. 因子分解机(FM,FFM,DeepFM,libfm,xlearn)
  14. 金士顿U盘被写保护的解决方法(量产)
  15. 谷歌开发者被封 账号中的钱_Google GMC又被封?解锁谷歌广告账号运营新姿势
  16. 飞迈阁带你了解网上赚钱
  17. Js实现获取当前时间并显示
  18. js 获取当前是这个年份的第几周+获取这周的开始和结束日期
  19. 阿里力推“来往”,公众账号或成突破口
  20. 解码者:数学探秘之旅——读书笔记(一)

热门文章

  1. unix 查询进程并中止
  2. JavaScript —— 如何判断一个非数字输入
  3. c++,不能声明为虚函数的函数
  4. 办公室影响同事关系的九种行为
  5. PacBio三代测序
  6. 学习下如何统计【0-9】在任意给定数中出现的次数
  7. Kafka0.10.2.0分布式集群安装
  8. 彻底弄懂flex布局
  9. JavaScript获取样式值的几种方法学习总结
  10. Django学习笔记之Django ORM Aggregation聚合详解