kafka
这家伙比较依赖zookeeper,安装zookeeper的教程看上篇文章
- 下载地址:http://kafka.apache.org/downloads.html
- 解压:tar -zxvf xx.tar.gz
- 修改 kafka 启动参数中 JVM 内存大小:查看 kafka-server-start.sh 脚本,修改 KAFKA_HEAP_OPTS 处 -Xmx 和-Xms 的值
- 先启动zookeeper:bin/zookeeper-server-start.sh config/zookeeper.properties
- 再启动kafka(加上&就是后台启动):bin/kafka-server-start.sh config/server.properties &
- 停止: bin/kafka-server-stop.sh
配置文件:../config/server.properties
broker.id=2 //broker的ID,集群中每个broker ID不可相同
listeners=PLAINTEXT://:9092 //监听器,端口号和port一致即可
port=9092 //Broker的监听端口
host.name=IP地址 //必须填写当前服务器IP地址
advertised.host.name=IP地址 //必须填写当前服务器IP地址
advertiesd.port=port //当前服务的端口
zookeeper.connect=zookeeper-01:2181,zookeeper-02:2181,zookeeper-03:2181 //zookeeper的地址
单 broker 测试
- 在启动 kafka-server 之后启动,运行producer:
$ bin/kafka-console-producer.sh --broker-list localhost:9092 --topic test
- 在另一个终端运行 consumer:
$ bin/kafka-console-consumer.sh --zookeeper localhost:2181 --topic test --from-beginning
- 在 producer 端输入字符串并回车,查看 consumer 端是否显示。
相关链接
安装和测试Kafka
kafka-manager web管理页面
yahoo开源项目信息:https://github.com/yahoo/kafka-manager
kafka-manager本身可以是一个集群。
安装sbtsbt是scala的打包构建工具。
http://www.scala-sbt.org/download.html
ubuntu下安装:
echo "deb https://dl.bintray.com/sbt/debian /" | sudo tee -a /etc/apt/sources.list.d/sbt.list
sudo apt-get update
sudo apt-get install sbt
下载,
编绎,生成发布包:
git clone https://github.com/yahoo/kafka-manager
cd kafka-manager
sbt clean dist
生成的包会在kafka-manager/target/universal 下面。生成的包只需要java环境就可以运行了,在部署的机器上不需要安装sbt。
如果打包很慢的话,可以考虑配置代理。
部署打好包好,在部署机器上解压,修改好配置文件,就可以运行了。
如果无法打包,可以用一下别人传到网上的:
http://pan.baidu.com/s/1kTtFpGV
md5: bde4f57c4a1ac09a0dc7f3f892ea9026解压
unzip kafka-manager-1.0-SNAPSHOT.zip
修改conf/application.conf,把kafka-manager.zkhosts改为自己的zookeeper服务器地址
kafka-manager.zkhosts="localhost:2181"
启动
./kafka-manager -Dconfig.file=../conf/application.conf
后台运行:
nohup ./kafka-manager -Dconfig.file=../conf/application.conf >/dev/null 2>&1 &
默认http端口是9000,可以修改配置文件里的http.port的值,或者通过命令行参数传递:
./kafka-manager -Dhttp.port=9001