Kafka文档
Kafka介绍:
Kafka是由Apache软件基金会开发的一个开源流处理平台,由Scala和Java编写。Kafka是一种高吞吐量的分布式发布订阅消息系统,它可以处理消费者规模的网站中的所有动作流数据。 这种动作(网页浏览,搜索和其他用户的行动)是在现代网络上的许多社会功能的一个关键因素。 这些数据通常是由于吞吐量的要求而通过处理日志和日志聚合来解决。 对于像Hadoop的一样的日志数据和离线分析系统,但又要求实时处理的限制,这是一个可行的解决方案。Kafka的目的是通过Hadoop的并行加载机制来统一线上和离线的消息处理,也是为了通过集群来提供实时的消费。
Kafka搭建
环境:
1. JDK :java version "1.8.0_25"
2. Zookeeper :zookeeper-3.3.6
3. Python :python2.7
4. Kafka :kafka_2.10-0.9.0.1
安装JDK
1.官网下载JDK1.8版本,并且解压。
2.添加JDK到系统环境变量
Vi /etc/profile
新增以下内容:
#set java environment
export JAVA_HOME=/usr/local/javaDevelopment/jdk1.8.0_25
export JRE_HOME=${JAVA_HOME}/jre
export CLASSPATH=.:${JAVA_HOME}/lib:${JRE_HOME}/lib
export PATH=.:${JAVA_HOME}/bin:$ZOOKEEPER_HOME/bin:$PATH
3. 使配置生效
4. 成功标识
[root@engine kafka_2.10-0.9.0.1]# java -version
java version "1.8.0_25"
Java(TM) SE Runtime Environment (build 1.8.0_25-b17)
Java HotSpot(TM) 64-Bit Server VM (build 25.25-b02, mixed mode)
安装zookeeper
1. 解压zookeeper安装包
tar -zxvf zookeeper-3.3.6.tar.gz
2. 配置环境变量
export zookeeper_home=/usr/local/kafka/zookeeper-3.3.6
3. 使配置生效
source /etc/profile
4. 成功标识
[root@enginekafka_2.10-0.9.0.1]# sh $zookeeper_home/bin/zkServer.sh start
JMX enabled by default
Using config: /usr/local/kafka/zookeeper-3.3.6/bin/../conf/zoo.cfg
grep: /usr/local/kafka/zookeeper-3.3.6/bin/../conf/zoo.cfg: No such file or directory
Starting zookeeper ... STARTED
安装kafka
1. 解压&移动到/usr/local
tar -xzvf kafka_2.11-1.0.1.tgz
mv kafka_2.11-1.0.1.tgz /usr/local/kafka
2. 配置kafka,修改server.properties
mkdir /usr/local/kafka/log/kafka #创建kafka日志目录
cd /usr/local/kafka/config #进入配置目录
vi server.properties #编辑修改相应的参数
broker.id=0
port=9092 #端口号
advertised.listeners=PLAINTEXT://10.255.64.92:9092
#服务器IP地址,修改为自己的服务器IP
log.dirs=/mnt/sdb.kafka/data,/mnt/sdc.kafka/data
#日志存放路径,上面创建的目录
zookeeper.connect=10.255.64.92:2181 #zookeeper地址和端口
auto.create.topics.enable=false #关闭自动创建topic
3. 配置kafka下的zookeeper.properties
mkdir /usr/local/kafka/zookeeper #创建zookeeper目录
mkdir /usr/local/kafka/log/zookeeper #创建zookeeper日志目录
cd /usr/local/kafka/config #进入配置目录
vi zookeeper.properties #编辑修改相应的参数
dataDir=/usr/local/kafka/zookeeper #zookeeper数据目录
dataLogDir=/usr/local/kafka/log/zookeeper #zookeeper日志目录
clientPort=2181
maxClientCnxns=100
tickTime=2000
initLimit=10
4. 创建启动、关闭kafka脚本
创建启动kafka脚本
vi kafkastart.sh #编辑,添加以下代码:
#!/bin/bash
#启动zookeeper
/usr/local/kafka/bin/zookeeper-server-start.sh /usr/local/kafka/config/zookeeper.properties &
sleep 3 #等3秒后执行
#启动kafka
/usr/local/kafka/bin/kafka-server-start.sh /usr/local/kafka/config/serve