二十一、Hadoop学记笔记————kafka的初识

这些场景的共同点就是数据由上层框架产生,需要由下层框架计算,其中间层就需要有一个消息队列传输系统

Apache flume系统,用于日志收集
Apache storm系统,用于实时数据处理
Spark系统,用于内存数据处理
elasticsearch系统,用于全文检索




broker中每个partition都会有备份,可自行设置,前端程序和读取数据的程序都可以是自己写的程序或者是各类框架,例如hadoop,flume
搭建集群:

kafka的包需要事先下载好,zookeeper环境搭建之前已经做过介绍:

新建一个目录专门给kafka使用,这样方便管理,先解压每个服务器的kafka,然后在kafka目录下新建一个Log文件夹,用于存放kafka的消息

进入kafka的配置目录,发现还有zookeeper配置文件,kafka集群可以通过zookeeper启动,但是一般通过自己独立的启动方式启动
首先关注server.properties配置文件

当前服务器集群ip分别为10.206.216.13,10.206.212.14,10.46.189.18
id为每个服务器的唯一参数,默认端口9092,为了防止会发生冲突,可以将端口设置比较大一点
hostname为服务器ip地址,一般该参数是关闭的,在0.8.1中有bug,默认参数是localhost,kafka在解析dns的时候会解析成ip,会有失败率,因此打开,之后的版本已经修复该bug。若修改了hosts名称也可以直接写名称:

之后配置如下三项:分别为消息put字节数组大小,消息备份数和消息pull字节数组大小,图中两个字节数组大小都为5M

之后配置zookeeper集群地址,zookeeper集群默认端口为2181,为了防止端口冲突,可以改为12181,该操作可有可无:

配置log路径,若有多个可用逗号分隔,如果有多个的话,那num.io.threads参数的值必须大于配置路径的个数:

在每台服务器都配置完毕后,分别启动kafka集群:

之后验证有没有错误:
先在集群上建立topic,即消息发送方,然后设置一台服务器为消息发送方producer,设置另一台服务器为consumer订阅该服务器:



在producer中发送hello消息,然后在consumer中可立即收到:


之后还有list指令和descrip指令,分别用于列出所有的topic和某个topic的描述,之后还有许多指令,需要查看官方文档:

进入zookeeper命令行之后,发现有如下目录被创建:


二十一、Hadoop学记笔记————kafka的初识的更多相关文章
- 二十二、Hadoop学记笔记————Kafka 基础实战 :消费者和生产者实例
kafka的客户端也支持其他语言,这里主要介绍python和java的实现,这两门语言比较主流和热门 图中有四个分区,每个图形对应一个consumer,任意一对一即可 获取topic的分区数,每个分区 ...
- 二十三、Hadoop学记笔记————Spark简介与计算模型
spark优势在于基于内存计算,速度很快,计算的中间结果也缓存在内存,同时spark也支持streaming流运算和sql运算 Mesos是资源管理框架,作为资源管理和任务调度,类似Hadoop中的Y ...
- 二十、Hadoop学记笔记————Hive On Hbase
Hive架构图: 一般用户接口采用命令行操作, hive与hbase整合之后架构图: 使用场景 场景一:通过insert语句,将文件或者table中的内容加入到hive中,由于hive和hbase已经 ...
- 二十五、Hadoop学记笔记————Hive复习与深入
Hive主要为了简化MapReduce流程,使非编程人员也能进行数据的梳理,即直接使用sql语句代替MapReduce程序 Hive建表的时候元数据(表明,字段信息等)存于关系型数据库中,数据存于HD ...
- 二十四、Hadoop学记笔记————Spark的架构
master为主节点 一个集群中可能运行多个application,因此也可能会有多个driver DAG Scheduler就是讲RDD Graph拆分成一个个stage 一个Task对应一个Spa ...
- 十九、Hadoop学记笔记————Hbase和MapReduce
概要: hadoop和hbase导入环境变量: 要运行Hbase中自带的MapReduce程序,需要运行如下指令,可在官网中找到: 如果遇到如下问题,则说明Hadoop的MapReduce没有权限访问 ...
- 十七、Hadoop学记笔记————Hbase入门
简而言之,Hbase就是一个建立在Hdfs文件系统上的数据库(mysql,orecle等),不同的是Hbase是针对列的数据库 Hbase和普通的关系型数据库区别如下: Hbase有一些基本的术语,主 ...
- 十八、Hadoop学记笔记————Hbase架构
Hbase结构图: Client,Zookeeper,Hmaster和HRegionServer相互交互协调,各个组件作用如下: 这几个组件在实际使用过程中操作如下所示: Region定位,先读取zo ...
- 学记笔记 $\times$ 巩固 · 期望泛做$Junior$
最近泛做了期望的相关题目,大概\(Luogu\)上提供的比较简单的题都做了吧\(233\) 好吧其实是好几天之前做的了,不过因为太颓废一直没有整理-- \(Task1\) 期望的定义 在概率论和统计学 ...
随机推荐
- 嵌入式C快速翻转一个任何类型的数的二进制位
unsigned char reverse_bits(unsigned char value) { unsigned char answer , i ; answer = 0 ; for(i = 1 ...
- android4.2添加重启菜单项
本文主要是针对android4.2关机菜单添加重启功能 A.关机提示 android4.2/frameworks/base/policy/src/com/android/internal/policy ...
- ubuntu下搭建gtk+编程环境
首先gtk+项目主页为: http://www.gtk.org/ gtk+现在有2和3两种版本,使用 sudo apt-get install gnome-core-devel 可以一次性安装2个版本 ...
- CUDA跟OpenCV的混合编程,注意OpenCV需要重新编译
1.注意事项 编译的办法参见: http://blog.csdn.net/wangyaninglm/article/details/39997113 以下是程序代码,网上搜的例子: 注意事项:32 ...
- 给大家推荐一个python的学习网站 http://www.codecademy.com
注册之后,可以跟着指导,自己编码学习,比较方面: 再推荐一个在线编译的代码网站,c/c++ python 都可以: http://codepad.org
- obj-c编程15[Cocoa实例01]:一个会发声的随机数生成器
哇!终于到了obj-c编程系列的第15篇喽,一路走过来满不容易的哦!(怎么个意思,这才哪到哪啊!),为了能够更好的练习obj-c在Cocoa框架上的编程,接下来会以N篇Cocoa实例的博文来巩固和记忆 ...
- 熊猫猪新系统测试之四:Ubuntu 14.04
目前猫猪在办公室一般用的就是乌班图系统,一方面原因是老本本性能跑不起来Windows,更重要的是本猫觉得Linux系统更开放些.况且现在用的也比较熟了,完全可以脱离Windows鸟!这一系列4篇新系统 ...
- azkaban报错记录
问题信息:Failed to build job executor for job o2o_get_file_ftp1Job type 'command ' is unrecognized. Coul ...
- Java编程语言下Selenium 鼠标悬停以及右击操作
// 基于Actions类创建一个对象 Actions action = new Actions(driver); // 鼠标悬停在药渡公司全称字段上 action.moveToElement(Yao ...
- Android面试题摘录
本文中面试题全部选自<精通Android>(英文名“Pro android 4”)一书的章后面试题,不过这套面试题与书中内容结合比较紧密,所以选择使用时请谨慎. ####C2:Androi ...