Kafka学习笔记(1)----Kafka的简介和Linux下单机安装
1. Kafka简介
Kafka is a distributed,partitioned,replicated commit logservice。它提供了类似于JMS的特性,但是在设计实现上完全不同,此外它并不是JMS规范的实现。kafka对消息保存时根据Topic进行归类,发送消息者成为Producer,消息接受者
为Consumer,此外kafka集群有多个kafka实例组成,每个实例成为broker。无论是kafka集群,还是producer和consumer都依赖于zookeeper来保证系统可用性集群保存一些meta信息。

2. ubuntu下安装Kafka
环境说明:
1. os:Ubuntu 16.04
2. zookeeper:zookeeper 3.4.13
3. kafka:kafka_2.11-2.0.1
4. jdk:jdk 8(kafka启动需要使用到jdk)
2.1 jdk安装
jdk在安装是较为常见的,所以这里就不再详细介绍了。
2.2 zookeeper安装
首先下载zookeeper,下载地址为:http://mirror.bit.edu.cn/apache/zookeeper/,如当前源不能访问,请自行更换其他源。如图:

根据自己的需要的版本下载相应的.tar.gz文件,将下载的文件上传到服务器上。通过Xshell 6端,使用命令rz。
解压文件:

解压后进入conf文件夹,
将zoo_sample.cfg拷贝一份为zoo.cfg
如下:

修改zoo.cfg文件:

为zookeeper配置环境变量:
vim /etc/profile
export ZOOKEEPER_HOME=/usr/local/middle/zookeeper-3.4.
export PATH=.:$ZOOKEEPER_HOME/bin:$JAVA_HOME/bin:$PATH

保存退出
使用zkServer.sh start启动zookeeper服务:

启动成功,配置正确,然后关闭服务zkServer.sh stop
2.3 安装配置Kafka单机模式
下载Kafka,下载地址为:http://mirror.bit.edu.cn/apache/kafka/2.0.1/,如果源不可用,自行更换其他源。如图:

下载自己需要的版本
将下载的Kafka上传到服务器,使用如下命令解压:
tar -zxvf kafka_2.-2.0..tgz
解压后进入到config文件夹,如下:

分别配置三个文件:
server.properties:
主要配置以下几项,其他的都按默认配置即可
broker.id=
#指定端口
port=
#指定主机
host.name=localhost
#数据存储位置
log.dirs=/usr/local/middle/kafka_2.-2.0./kafka-logs
#连接zookeeper配置项,这里指定的是单机,所以只需要配置localhost,若是实际生产环境,需要在这里添加其他ip地址和端口号
zookeeper.connect=localhost:
如图:
·
zookeeper.properties配置:

producer.properties配置:

consumer.properties配置:

启动kafka:
1. 启动zookeeper服务
进入kafka根目录,使用如下命令启动zookeeper。
bin/zookeeper-server-start.sh config/zookeeper.properties
如图:


会执行环境变量配置的zk,出现如上图所示表示启动成功。
新开一个会话启动kafka,使用如下命令:
bin/kafka-server-start.sh config/server.properties
如下图:


出现如上图则表示kafka启动成功。
至此,单机的Kafka安装完成了。
Kafka学习笔记(1)----Kafka的简介和Linux下单机安装的更多相关文章
- Kafka学习笔记之Kafka背景及架构介绍
0x00 概述 本文介绍了Kafka的创建背景,设计目标,使用消息系统的优势以及目前流行的消息系统对比.并介绍了Kafka的架构,Producer消息路由,Consumer Group以及由其实现的不 ...
- Kafka学习笔记之Kafka三款监控工具
0x00 概述 在之前的博客中,介绍了Kafka Web Console这 个监控工具,在生产环境中使用,运行一段时间后,发现该工具会和Kafka生产者.消费者.ZooKeeper建立大量连接,从而导 ...
- Kafka学习笔记之Kafka性能测试方法及Benchmark报告
0x00 概述 本文主要介绍了如何利用Kafka自带的性能测试脚本及Kafka Manager测试Kafka的性能,以及如何使用Kafka Manager监控Kafka的工作状态,最后给出了Kafka ...
- Kafka学习笔记之Kafka Consumer设计解析
0x00 摘要 本文主要介绍了Kafka High Level Consumer,Consumer Group,Consumer Rebalance,Low Level Consumer实现的语义,以 ...
- Kafka学习笔记1——Kafka的安装和启动
一.准备工作 1. 安装JDK 可以用命令 java -version 查看版本
- 分布式缓存技术redis学习(一)——redis简介以及linux上的安装
redis简介 redis是NoSQL(No Only SQL,非关系型数据库)的一种,NoSQL是以Key-Value的形式存储数据.当前主流的分布式缓存技术有redis,memcached,ssd ...
- Linux下单机安装部署kafka及代码实现
技术交流群:233513714 这几天研究了kafka的安装及使用,在网上找了很多教程但是均以失败告终,直到最后想起网络方面的问题最终才安装部署成功,下面就介绍一下kafka的安装部署及代码实现 一. ...
- Kafka学习笔记之Kafka High Availability(上)
0x00 摘要 Kafka在0.8以前的版本中,并不提供High Availablity机制,一旦一个或多个Broker宕机,则宕机期间其上所有Partition都无法继续提供服务.若该Broker永 ...
- Kafka学习笔记之Kafka High Availability(下)
0x00 摘要 本文在上篇文章基础上,更加深入讲解了Kafka的HA机制,主要阐述了HA相关各种场景,如Broker failover,Controller failover,Topic创建/删除,B ...
随机推荐
- Q&A to prepare interview of HSBC
1.How do you keep updating lastest IT knowledge? 1).keep an eye on current project technology evetho ...
- Educational Codeforces Round 35 B/C/D
B. Two Cakes 传送门:http://codeforces.com/contest/911/problem/B 本题是一个数学问题. 有a个Ⅰ类球,b个Ⅱ类球:有n个盒子.将球放入盒子中,要 ...
- (30)导入时如何定制spring-boot依赖项的版本【转载】【从零开始学Spring Boot】
此文章转载地址:http://www.tuicool.com/articles/RJJvMj3 请注重作者的版权. spring-boot通过maven的依赖管理为我们写好了很多依赖项及其版本,我们可 ...
- SpringBoot+FreeMarker开发word文档下载,预览
背景: 开发一个根据模版,自动填充用户数据并下载word文档的功能 使用freemarker进行定义模版,然后把数据进行填充. maven依赖: <parent> <groupId& ...
- HTML【2】表单提交与服务层的模拟(具体解释get与post提交方式的不同)
在HTML[1]中已经说明了HTML编程的基本方式,最后说到了表单提交的方式有get和post方式.那么究竟什么是get/post 方式呢,两者有什么差别?如今我就详细的介绍一下. 首先回想一下表单的 ...
- Dynamics CRM 2015 New Feature (9): Services Changes
Dynamics CRM 2015 为开发者加入了一些新的Service Request以及一个帮助类库XrmTooling,它支持连接各种环境下的CRM,比方:Online,O365,On Prem ...
- cocos2d-android学习四 ---- 精灵的创建
上篇文章我们创建了一个黑乎乎的界面.以下我们就给它增加一个精灵. 我们这次就一起来学习精灵的基础知识. 1.什么是精灵 游戏中全部会动的对象都是精灵,能够是主人公,背景元素,一个子弹或者是敌人. 一个 ...
- 创建quickstart报错
在cmd中创建helloword成功(一开始是mvn package失败,后面又执行了一遍又成功了,应该是网络问题) 然后在eclipse 中创建quickstart,结果pom报错找不到如下包 ma ...
- Java深入 - Filter过滤器
Java的1.3開始,对servlet2.3规范中增加了过滤器的支持.过滤器可以让我们对目标资源的请求和响应进行截取. 一些filter的特性: 1. Filter是Servlet规范的规定,须要Se ...
- hdu 1698 Just a Hook 基本线段树
使用线段树更新每段区间的奖(1,2,3),最后在统计整段区间的数和,基本线段树,果断1A啊 #include<iostream> #include<stdio.h> using ...