kafka单机版环境搭建与测试

时间:2021-04-12 12:10:41

一、前期的准备

1.linux环境

在VMware 下安装了Ubuntu14.04(32位), 内存分配 :1G;

2.kafka下载

kafka官网下载kafka的压缩包,本文用的是 kafka_2.9.2-0.8.1.tgz

在Home下新建一个文件夹test_kafka,并将kafka_2.9.2-0.8.1.tgz放在其中,并解压

tar -xzf kafka_2.9.2-0.8.1.tgz

此时将出现test_kafka出现解压后的文件夹kafka_2.9.2-0.8.1

注意:另外下载一个:slf4j-nop-1.5.8.jar的jar包放在libs文件夹下面

3.jdk环境

需要在Ubuntu下安装配置jdk

首先,去官网 下载jdk ,本文所用的是Linux x86的jdk-7u55-linux-i586.gz 版本

 其次在Ubuntu下安装jdk

(1)将 jdk-7u55-linux-i586.gz 复制到test_kafka文件夹下,使用如下命令将其解压

tar -xzf jdk-7u55-linux-i586.gz

(2)点击computer并在在 usr/local目录下创建文件夹java,并利用如下命令将上一步解压后的文件夹移动到此文件夹下

sudo mv jdk1.7.0_55  /usr/lib/java/

(3)利用如下命令打开 打开/etc/profile文件

sudo gedit /etc/profile

添加变量如下:

# /etc/profile: system-wide .profile file for the Bourne shell (sh(1))  
# and Bourne compatible shells (bash(1), ksh(1), ash(1), ...).
#set java environment
export JAVA_HOME=/usr/local/java/jdk1.7.0_55
export JRE_HOME=/usr/local/java/jdk1.7.0_55/jre
export CLASSPATH=.:$JAVA_HOME/lib:$JRE_HOME/lib:$CLASSPATH
export PATH=$JAVA_HOME/bin:$JRE_HOME/bin:$JAVA_HOME:$PATH
一般更改/etc/profile文件后,需要重启机器才能生效。这里介绍一种不用重启使其生效的方法

source /etc/profile

(4)运用如下命令查看java环境变量是否配置成功

java -version

二、测试

1.进入文件夹kafka_2.9.2-0.8.1

cd kafka_2.9.2-0.8.1

2.启动服务器

注意:本文在试验的时候出现异常,最后发现原因是无法识别UseCompressedOops指令,导致无法创建JVM。经过查找发现该指令位于kafka-run-class.sh文件的153行,可以将 -XX:+UseCompressedOops 整体删除。该指令的作用主要作用是用于指针的压缩,主要用于JVM优化,优化只是对于64位的,本文使用的是32位,所以去掉后应该没事,对于UseCompressedOops 的了解可以参考

文章1:http://agapple.iteye.com/blog/1038336

文章2:http://kenwublog.com/compressedoops

也可以参考《深入理解JAVA虚拟机JVM高级特性与最佳实践》中的1.4.5节-----64位虚拟机

经过上面的处理后,再启动服务器

先启动zookeeper服务器

bin/zookeeper-server-start.sh config/zookeeper.properties &

[2013-04-22 15:01:37,495] INFO Reading configuration from: config/zookeeper.properties (org.apache.zookeeper.server.quorum.QuorumPeerConfig)
...
再启动kafka服务器
bin/kafka-server-start.sh config/server.properties &
[2013-04-22 15:01:47,028] INFO Verifying properties (kafka.utils.VerifiableProperties)
[2013-04-22 15:01:47,051] INFO Property socket.send.buffer.bytes is overridden to 1048576 (kafka.utils.VerifiableProperties)
...
注意 & 符号的使用

3.创建topic

bin/kafka-topics.sh --create --zookeeper localhost:2181 --replication-factor 1 --partitions 1 --topic test

可以使用如下命令查看topic

bin/kafka-topics.sh --list --zookeeper localhost:2181

test
4.发送message

bin/kafka-console-producer.sh --broker-list localhost:9092 --topic test 

Hello kafka

5.启动consumer

bin/kafka-console-consumer.sh --zookeeper localhost:2181 --topic test --from-beginning

将会看到刚才发送的消息 Hello kafla

三、关于kafka的相关文章推荐

文章 1 http://kafka.apache.org/documentation.html

文章 2 http://my.oschina.net/ielts0909/blog?catalog=263107

文章 3 http://blog.csdn.net/hxpjava1/article/details/19160665

文章 4 http://blog.csdn.net/Desilting/article/details/22872839

文章 5 http://blog.csdn.net/itleochen/article/details/17451455

文章 6 http://blog.csdn.net/unix21/article/details/19069381

文章 7 http://blog.csdn.net/itleochen/article/category/1815871

文章 8 http://blog.csdn.net/lizhitao/article/details/23743821

文章 9 http://dongxicheng.org/search-engine/kafka/

文章 10 http://blog.csdn.net/yfkiss/article/details/17348693

文章 11 http://blog.csdn.net/yfkiss/article/details/17381351

文章 12 http://blog.chinaunix.net/uid-20196318-id-2420884.html

文章 13 http://www.oschina.net/question/878420_92395

文章 14 http://www.tuicool.com/topics/11090075