Kafka 安装配置及快速入门
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 安装配置及快速入门相关推荐
- Flink 笔记01:安装部署与快速入门
stypora-copy-images-to: img typora-root-url: ./ Flink 笔记01:安装部署与快速入门 一.课程回安排与内容提纲 大数据技术框架转折点:2017年,天 ...
- Android Studio新手–下载安装配置–零基础入门–基本使用–调试技能–构建项目基础–使用AS应对常规应用开发
转自:http://blog.csdn.net/yanbober/article/details/45306483 目标:Android Studio新手–>下载安装配置–>零基础入门–& ...
- Umijs 的安装部署及快速入门
部署安装 1.首先需要安装 node.js 2.安装 yarn,其中 tyarn 使用的是 npm.taobao.org 的源,速度要快一些 #安装 yarn npm i yarn tyarn -g ...
- Linux环境Kafka安装配置
Linux环境Kafka安装配置 1. 认识Kafa (1) Kafa介绍 开源消息系统 官网:kafka.apache.org/ 用途:在流式计算中,Kafka一般用来缓存数据,Storm通过消费K ...
- 易优cms 数据库连接失败,如何重新进行正确配置 Eyoucms快速入门
易优cms 数据库连接失败,如何重新进行正确配置 Eyoucms快速入门 易优cms后台的数据配置文件是\application\database.php,可以在里面修改数据库配置信息 具体的数据库账 ...
- 学习笔记Kafka(四)—— Kafka安装配置(3)—— Kafka多代理配置及常用操作
一.环境准备 Centos7, 1 CPU , 2G Memory ,20G Disk , Virtual System Hosts : node110, node111 , node112 全部配置 ...
- Kafka安装配置(SASL/SCRAM动态认证)
SASL/SCRAM验证方法可以在Kafka服务启动之后,动态的新增用户分并配权限,在业务变动频繁,开发人员多的情况下比SASL/PLAIN方法更加灵活. Zookeeper:3.4.13,kafka ...
- azure linux 配置端口,快速入门 - 在 Azure 门户中创建 Linux VM - Azure Virtual Machines | Microsoft Docs...
您现在访问的是微软AZURE全球版技术文档网站,若需要访问由世纪互联运营的MICROSOFT AZURE中国区技术文档网站,请访问 https://docs.azure.cn. 快速入门:在 Azur ...
- 如何使用微软云服务器,了解如何使用 Azure 应用配置的快速入门 | Microsoft Docs
您现在访问的是微软AZURE全球版技术文档网站,若需要访问由世纪互联运营的MICROSOFT AZURE中国区技术文档网站,请访问 https://docs.azure.cn. 快速入门:使用 Azu ...
最新文章
- supervisor 守护php,laravel队列之Supervisor守护进程(centos篇)
- Android之LocalBroadcastManager源码解析
- 神经网络和反向传播算法——反向传播算法本质上是随机梯度下降,链式求导法则而来的...
- IntelliJ Idea解决Could not autowire. No beans of 'xxxx' type found的错误提示
- 编程判断元素归类_如何使用jquery判断一个元素是否含有一个指定的类(class)...
- Python小白的数学建模课-A2.2021年数维杯C题(运动会优化比赛模式探索)探讨
- P2659 美丽的序列
- 简单的java日志记,Java 记要 日志,log
- 01_正则表达式_05_小结和几个案例
- php算数组内值的总和,怎样使用array_sum() 计算数组元素值总和
- 推荐参加国际会议海报制作(poster)的Latex模板
- python编写俄罗斯方块代码详解_python如何写个俄罗斯方块
- 因子分解机(FM,FFM,DeepFM,libfm,xlearn)
- 金士顿U盘被写保护的解决方法(量产)
- 谷歌开发者被封 账号中的钱_Google GMC又被封?解锁谷歌广告账号运营新姿势
- 飞迈阁带你了解网上赚钱
- Js实现获取当前时间并显示
- js 获取当前是这个年份的第几周+获取这周的开始和结束日期
- 阿里力推“来往”,公众账号或成突破口
- 解码者:数学探秘之旅——读书笔记(一)