【慕课网实战】Spark Streaming实时流处理项目实战笔记五之铭文升级版
铭文一级:
单节点单broker的部署及使用
$KAFKA_HOME/config/server.properties
broker.id=0
listeners
host.name
log.dirs
zookeeper.connect
启动Kafka
kafka-server-start.sh
USAGE: /home/hadoop/app/kafka_2.11-0.9.0.0/bin/kafka-server-start.sh [-daemon] server.properties [--override property=value]*
kafka-server-start.sh $KAFKA_HOME/config/server.properties
创建topic: zk
kafka-topics.sh --create --zookeeper hadoop000:2181 --replication-factor 1 --partitions 1 --topic hello_topic
查看所有topic
kafka-topics.sh --list --zookeeper hadoop000:2181
发送消息: broker
kafka-console-producer.sh --broker-list hadoop000:9092 --topic hello_topic
消费消息: zk
kafka-console-consumer.sh --zookeeper hadoop000:2181 --topic hello_topic --from-beginning
--from-beginning的使用
查看所有topic的详细信息:kafka-topics.sh --describe --zookeeper hadoop000:2181
查看指定topic的详细信息:kafka-topics.sh --describe --zookeeper hadoop000:2181 --topic hello_topic
单节点多broker
server-1.properties
log.dirs=/home/hadoop/app/tmp/kafka-logs-1
listeners=PLAINTEXT://:9093
broker.id=1
server-2.properties
log.dirs=/home/hadoop/app/tmp/kafka-logs-2
listeners=PLAINTEXT://:9094
broker.id=2
server-3.properties
log.dirs=/home/hadoop/app/tmp/kafka-logs-3
listeners=PLAINTEXT://:9095
broker.id=3
kafka-server-start.sh -daemon $KAFKA_HOME/config/server-1.properties &
kafka-server-start.sh -daemon $KAFKA_HOME/config/server-2.properties &
kafka-server-start.sh -daemon $KAFKA_HOME/config/server-3.properties &
kafka-topics.sh --create --zookeeper hadoop000:2181 --replication-factor 3 --partitions 1 --topic my-replicated-topic
kafka-console-producer.sh --broker-list hadoop000:9093,hadoop000:9094,hadoop000:9095 --topic my-replicated-topic
kafka-console-consumer.sh --zookeeper hadoop000:2181 --topic my-replicated-topic
kafka-topics.sh --describe --zookeeper hadoop000:2181 --topic my-replicated-topic
铭文二级:
Kafka版本下载版本为0.9.0.0比较稳定,再选相对应的scala版本(http://kafka.apache.org/downloads)
单节点单broker的部署及使用=>
配置环境变量,修改配置文件:conf/server.properties
broker.id = 0 //唯一id值
listeners = :9092 //监听端口号,发送的内容到broker即为此端口
hostname = hadoop000 //默认localhost也行
log.dirs = /home/app/tmp/kafka-logs //临时文件目录,需建立tmp,kafka-logs可不建立
zookeeper.connect = hadoop000:2181 //创建topic,查询topic,消耗者均为此端口
[num.partitions = 1] //分区
启动kafka:kafka-server-start.sh $KAFKA_HOME/config/server.properties //不知道如何使用就先执行kafka-server-start.sh
创建topic:kafka-topics.sh --create --zookeeper hadoop000:2181 --replication-factor 1 --partitions 1 --topic hello_topic
查询所有topic:kafka-topics.sh --list --zookeeper hadoop000:2181
发送消息:kafka-console-producer.sh --broker-list hadoop000:9092 --topic hello_topic
消费消息:kafka-console-consumer.sh --zookeeper hadoop000:2181 --topic hello_topic //可加 --from-beginning 只从一开始的也消费
查看所有topic的详细信息:kafka-topics.sh --describe --zookeeper hadoop000:2181
查看指定topic的详细信息:kafka-topics.sh --describe --zookeeper hadoop000:2181 --topic hello_topic
详细信息:Replicas:3,1,2 // 副本节点 Isr:3,1,2 //存活节点数
单节点多broker=>
cp三份配置文件,修改三处,然后分别启动:
1、broker.id 2、listener 3、log.dirs
kafka-server-start.sh -daemon $KAFKA_HOME/config/server-1.properties //-daemon为后台启动
A、创建topics副本系数要修改成:3
B、发送消息到三个端口:--broker-list hadoop000:9093,hadoop000:9094,hadoop000:9095
查看topic详情:kafka-topics.sh --describe --zookeeper hadoop000:2181 --topic my-replicated-topic
容错性测试=>
kill -9 5598 //强制杀死进程,分别查看topic详情,观察leader变化
Kafka API编程环境搭建=>
一、创建maven项目-> scala-archetype-simple ->
GroupId:com.imooc.spark
ArtifactId:sparktrain
Version:1.0
设置本地自己安装的maven的settings.xml
settings.xml 里面记得添加了<localRepository>/Users/rocky/maven-repos</localRepository>
二、pom.xml文件修改:
1.将<scala.version>修改成2.11.8
2.删除多余的dependency,只剩下org.scala.lang,改成${scala.version}
3.添加dependency
groupId:org.apache.kafka
artifactId:kafka_2.11
version:0.9.0.0 //写出去成${kafka.version}
三、项目文件夹的建立:
1.删除多余的项目目录文件夹App、AppTest、MySpec
2.新建文件夹java(Project Structure->Modules里面设置目录所属类型颜色),新建包:com.imooc.spark.kafka
【慕课网实战】Spark Streaming实时流处理项目实战笔记五之铭文升级版的更多相关文章
- 【慕课网实战】Spark Streaming实时流处理项目实战笔记十之铭文升级版
铭文一级: 第八章:Spark Streaming进阶与案例实战 updateStateByKey算子需求:统计到目前为止累积出现的单词的个数(需要保持住以前的状态) java.lang.Illega ...
- 【慕课网实战】Spark Streaming实时流处理项目实战笔记七之铭文升级版
铭文一级: 第五章:实战环境搭建 Spark源码编译命令:./dev/make-distribution.sh \--name 2.6.0-cdh5.7.0 \--tgz \-Pyarn -Phado ...
- 【慕课网实战】Spark Streaming实时流处理项目实战笔记十四之铭文升级版
铭文一级: 第11章 Spark Streaming整合Flume&Kafka打造通用流处理基础 streaming.conf agent1.sources=avro-sourceagent1 ...
- 【慕课网实战】Spark Streaming实时流处理项目实战笔记二之铭文升级版
铭文一级: 第二章:初识实时流处理 需求:统计主站每个(指定)课程访问的客户端.地域信息分布 地域:ip转换 Spark SQL项目实战 客户端:useragent获取 Hadoop基础课程 ==&g ...
- 【慕课网实战】Spark Streaming实时流处理项目实战笔记十六之铭文升级版
铭文一级: linux crontab 网站:http://tool.lu/crontab 每一分钟执行一次的crontab表达式: */1 * * * * crontab -e */1 * * * ...
- 【慕课网实战】Spark Streaming实时流处理项目实战笔记十五之铭文升级版
铭文一级:[木有笔记] 铭文二级: 第12章 Spark Streaming项目实战 行为日志分析: 1.访问量的统计 2.网站黏性 3.推荐 Python实时产生数据 访问URL->IP信息- ...
- 【慕课网实战】Spark Streaming实时流处理项目实战笔记十二之铭文升级版
铭文一级: ======Pull方式整合 Flume Agent的编写: flume_pull_streaming.conf simple-agent.sources = netcat-sources ...
- 【慕课网实战】Spark Streaming实时流处理项目实战笔记十一之铭文升级版
铭文一级: 第8章 Spark Streaming进阶与案例实战 黑名单过滤 访问日志 ==> DStream20180808,zs20180808,ls20180808,ww ==> ( ...
- 【慕课网实战】Spark Streaming实时流处理项目实战笔记九之铭文升级版
铭文一级: 核心概念:StreamingContext def this(sparkContext: SparkContext, batchDuration: Duration) = { this(s ...
- 【慕课网实战】Spark Streaming实时流处理项目实战笔记八之铭文升级版
铭文一级: Spark Streaming is an extension of the core Spark API that enables scalable, high-throughput, ...
随机推荐
- python requests的content和text方法的区别(转)
原文地址: http://blog.csdn.net/xie_0723/article/details/51361006 问题: 一直在想requests的content和text属性的区别,从pri ...
- illegal multibyte sequence python3
错误信息如下: page_data = m.decode('gbk') UnicodeDecodeError: 'gbk' codec can't decode byte 0xa7 in positi ...
- rbac 权限分配, 基于formset实现,批量增加
这里需要两个知识点: - formset - 自动发现项目中的URL1. 什么是formset: Django中 form组件 或 ModelForm组件,用于做一个表单的验证. 接收前端form表单 ...
- VML、SVG、Canvas简介
1.VML: VML的全称是Vector Markup Language(矢量可标记语言),矢量的图形,意味着图形可以任意放大缩小而不损失图形的质量,这在制作地图上有很大用途,VML只是被IE支持. ...
- 同一台主机部署两个比特币钱包以及rpc服务的摘要
.bitcoin QA Test环境 启动指定参数: "C:\Program Files (x86)\Bitcoin\bitcoin-qt.exe" -testnet -serve ...
- 为什么说windows会死机,Linux不会死机
通常所说的死机是指操作没有响应了,但是操作系统的核心仍然在工作.在windows中,由于只有一个界面,没有响应就是死机了:而在Linux中可有tty1-tty7,死了一个开另外一个把死了的那个杀掉就可 ...
- Java中重写与重载的区别
方法重载:关键字overload,方法名和方法的返回类型都相同,方法参数个数和类型不一样方法重写:也叫方法覆盖,关键字override,相对于类继承而言,重写的方法名,返回类型,参数个数,参数类型都要 ...
- Java并发集合(三)-ConcurrentHashMap分析和使用
1 http://ifeve.com/hashmap-concurrenthashmap-%E7%9B%B8%E4%BF%A1%E7%9C%8B%E5%AE%8C%E8%BF%99%E7%AF%87% ...
- RavenDb使用
在Raven中查询数据,查询条件必须在index中. 如果查询条件不在index中就会出现如下异常 var query = session.DynamicIndexQuery<ServicePr ...
- BZOJ 1791: [IOI2008]Island 岛屿 - 基环树
传送门 题解 题意 = 找出无向基环树森林的每颗基环树的直径. 我们首先需要找到每颗基环树的环, 但是因为是无向图,用tarjan找环, 加个手工栈, 我也是看了dalao的博客才知道tarjan找无 ...